Errores en programa
Publicado por ana (20 intervenciones) el 10/05/2006 20:04:48
Hola , tengo este programa y resulta que en el prcedimiento convierte me da errores en todas las asignaciones a las variables y no se por lo que es
Es un conversor de monedas, ya de paso si le sirve a alguien pues que lo coja, una vez quitando eso debe de funcionar
cannor resolve symbol
variable euro
class convierte
euro[0] = Double.valueOf(c).doubleValue();
Asi este error con todas las asignaciones
Muchas gracias!!
------------------------------------------------------------------------------------------------
/*
* @(#)convierte.java 1.0 10/05/2006
*
* Copyright 2006
* Use is free. (Uso gratuito)
*/
/**
*
* (Un Conversor de monedas que funciona desde la línea de comandos.)
* convierte.java 2006
*
* @author Ana
* @version 1.0, 10 mayo 2006
*/
import java.io.*;
public class convierte {
/**
*Definición de los tipos a convertir
/**
double[] yen = new double[2];
double[] dolar = new double[2];
double[] euro = new double[2];
/**
* Tipo de moneda
*/
private int TipoM;
/**
* La cantidad a convertir
*/
private double conv;
/**
* El resultado que se obtiene en Yens
*/
private double resultadoY;
/**
* El resultado que se obtiene en Euros
*/
private double resultadoE;
/**
* El resultado que se obtiene en Dolares
*/
private double resultadoD;
/**
* El constructor convierte
*/
public convierte() {
limpiar();
}
/**
* Inicializar a cero los datos de entrada y salida
*/
public void limpiar() {
conv = 0.0;
resultadoE = 0.0;
resultadoD = 0.0;
resultadoY = 0.0;
TipoM = 1; //El valor por defecto es EURO
}
/**
* Comprobar que el tipo de moenda es uno de los tres definidos sino devolvera falso
*/
public static boolean esTipoM(int s) {
if (s>0 && s<4) {
return true;
}
return false;
}
/**
* Comprueba la cadena que se le pasa, la convierte en un double y asigna el valor a la variable conv.
*/
public void ObtenerDato(String s) throws NumberFormatException {
conv=Double.valueOf(s).doubleValue();
}
/**
* Asigna a la variable de tipo de moneda TipoM el valor de la moneda introducida.
*/
public void ObtenerTipoM(int s) throws NumberFormatException {
TipoM=s; ;
}
public String resultado() {
return ("YEN = "+resultadoY+" DOLAR = "+resultadoD+" EURO = "+resultadoE);
}
public void Convertir(String a,String b,String c,String d,String e,String f)
{
yen[0] = Double.valueOf(a).doubleValue();
yen[1] = Double.valueOf(b).doubleValue();
euro[0] = Double.valueOf(c).doubleValue();
euro[1] = Double.valueOf(d).doubleValue();
dolar[0] = Double.valueOf(e).doubleValue();
dolar[1] = Double.valueOf(f).doubleValue();
}
/**
* Obtiene los datos para la conversion.
*/
public void cargarConversion() {
try{
DataInputStream dos=new DataInputStream(new FileInputStream("conversionM.txt"));
String cadena1= dos.readLine();
String cadena2= dos.readLine();
String cadena3= dos.readLine();
Convertir(cadena1.substring(2,10),
cadena1.substring(11,19),
cadena2.substring(2,10),
cadena2.substring(11,19),
cadena3.substring(2,10),
cadena3.substring(11,19));
dos.close();
}
catch(IOException e) {
System.out.println("Error");
}
}
/**
* Realiza la operación usando los valores actuales de
* acumulador, operador y entrada y pone el resultado en acumulador.
* Puede lanzar una excepción si la operación es inválida,
* por ejemplo si el operador="/" y conv=0.0.
*/
public void realizarOperación() throws Exception {
System.out.println(TipoM);
System.out.println(conv);
if (TipoM == 0) {
// YEN
resultadoY = conv;
resultadoE = yen[0]*conv;
resultadoD = yen[1]*conv;
}
else if (TipoM == 1) {
// EURO
resultadoE = conv;
resultadoD = euro[0]*conv;
resultadoY = euro[1]*conv;
}
else if (TipoM == 2) {
//DOLAR
resultadoD = conv;
resultadoE = conv*dolar[0];
resultadoY = conv*dolar[1];
}
}
public String leeYen() {
return String.valueOf(resultadoY);
}
public String leeDolar() {
return String.valueOf(resultadoD);
}
public String leeEuro() {
return String.valueOf(resultadoE);
}
/**
* Crea un objeto convierte pide al usuario entrada de un número
* pide al usuario un operador,
* si el operador es binario pide otro número,
* realiza la operación,
* escribe el resultado en la consola.
*/
public static void main(String[] args) {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
convierte C=new convierte();
try {
C.cargarConversion();
System.out.println("--------- PROGRAMA Conversor DE MONEDAS ---------");
System.out.println("--------- TIPOS DE MONEDAS: 0. YEN 1.EURO 2.DOLAR");
System.out.print("--------- Introduce un tipo de moneda: ");
C.ObtenerTipoM(1);
System.out.print("Introduce la cantidad a convertir: ");
C.ObtenerDato(br.readLine());
C.realizarOperación();
System.out.println("Resultado: "+C.resultado());
} catch (Exception e) {
System.out.println(e);
}
}
}
Es un conversor de monedas, ya de paso si le sirve a alguien pues que lo coja, una vez quitando eso debe de funcionar
cannor resolve symbol
variable euro
class convierte
euro[0] = Double.valueOf(c).doubleValue();
Asi este error con todas las asignaciones
Muchas gracias!!
------------------------------------------------------------------------------------------------
/*
* @(#)convierte.java 1.0 10/05/2006
*
* Copyright 2006
* Use is free. (Uso gratuito)
*/
/**
*
* (Un Conversor de monedas que funciona desde la línea de comandos.)
* convierte.java 2006
*
* @author Ana
* @version 1.0, 10 mayo 2006
*/
import java.io.*;
public class convierte {
/**
*Definición de los tipos a convertir
/**
double[] yen = new double[2];
double[] dolar = new double[2];
double[] euro = new double[2];
/**
* Tipo de moneda
*/
private int TipoM;
/**
* La cantidad a convertir
*/
private double conv;
/**
* El resultado que se obtiene en Yens
*/
private double resultadoY;
/**
* El resultado que se obtiene en Euros
*/
private double resultadoE;
/**
* El resultado que se obtiene en Dolares
*/
private double resultadoD;
/**
* El constructor convierte
*/
public convierte() {
limpiar();
}
/**
* Inicializar a cero los datos de entrada y salida
*/
public void limpiar() {
conv = 0.0;
resultadoE = 0.0;
resultadoD = 0.0;
resultadoY = 0.0;
TipoM = 1; //El valor por defecto es EURO
}
/**
* Comprobar que el tipo de moenda es uno de los tres definidos sino devolvera falso
*/
public static boolean esTipoM(int s) {
if (s>0 && s<4) {
return true;
}
return false;
}
/**
* Comprueba la cadena que se le pasa, la convierte en un double y asigna el valor a la variable conv.
*/
public void ObtenerDato(String s) throws NumberFormatException {
conv=Double.valueOf(s).doubleValue();
}
/**
* Asigna a la variable de tipo de moneda TipoM el valor de la moneda introducida.
*/
public void ObtenerTipoM(int s) throws NumberFormatException {
TipoM=s; ;
}
public String resultado() {
return ("YEN = "+resultadoY+" DOLAR = "+resultadoD+" EURO = "+resultadoE);
}
public void Convertir(String a,String b,String c,String d,String e,String f)
{
yen[0] = Double.valueOf(a).doubleValue();
yen[1] = Double.valueOf(b).doubleValue();
euro[0] = Double.valueOf(c).doubleValue();
euro[1] = Double.valueOf(d).doubleValue();
dolar[0] = Double.valueOf(e).doubleValue();
dolar[1] = Double.valueOf(f).doubleValue();
}
/**
* Obtiene los datos para la conversion.
*/
public void cargarConversion() {
try{
DataInputStream dos=new DataInputStream(new FileInputStream("conversionM.txt"));
String cadena1= dos.readLine();
String cadena2= dos.readLine();
String cadena3= dos.readLine();
Convertir(cadena1.substring(2,10),
cadena1.substring(11,19),
cadena2.substring(2,10),
cadena2.substring(11,19),
cadena3.substring(2,10),
cadena3.substring(11,19));
dos.close();
}
catch(IOException e) {
System.out.println("Error");
}
}
/**
* Realiza la operación usando los valores actuales de
* acumulador, operador y entrada y pone el resultado en acumulador.
* Puede lanzar una excepción si la operación es inválida,
* por ejemplo si el operador="/" y conv=0.0.
*/
public void realizarOperación() throws Exception {
System.out.println(TipoM);
System.out.println(conv);
if (TipoM == 0) {
// YEN
resultadoY = conv;
resultadoE = yen[0]*conv;
resultadoD = yen[1]*conv;
}
else if (TipoM == 1) {
// EURO
resultadoE = conv;
resultadoD = euro[0]*conv;
resultadoY = euro[1]*conv;
}
else if (TipoM == 2) {
//DOLAR
resultadoD = conv;
resultadoE = conv*dolar[0];
resultadoY = conv*dolar[1];
}
}
public String leeYen() {
return String.valueOf(resultadoY);
}
public String leeDolar() {
return String.valueOf(resultadoD);
}
public String leeEuro() {
return String.valueOf(resultadoE);
}
/**
* Crea un objeto convierte pide al usuario entrada de un número
* pide al usuario un operador,
* si el operador es binario pide otro número,
* realiza la operación,
* escribe el resultado en la consola.
*/
public static void main(String[] args) {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
convierte C=new convierte();
try {
C.cargarConversion();
System.out.println("--------- PROGRAMA Conversor DE MONEDAS ---------");
System.out.println("--------- TIPOS DE MONEDAS: 0. YEN 1.EURO 2.DOLAR");
System.out.print("--------- Introduce un tipo de moneda: ");
C.ObtenerTipoM(1);
System.out.print("Introduce la cantidad a convertir: ");
C.ObtenerDato(br.readLine());
C.realizarOperación();
System.out.println("Resultado: "+C.resultado());
} catch (Exception e) {
System.out.println(e);
}
}
}
Valora esta pregunta


0