error en java ayuda urgente!
Publicado por camilo (2 intervenciones) el 30/06/2011 07:59:21
Hola amigos al compilar un codigo en java me sale un error bastante fastidioso que no logro descifrar,porfavor ayudenme,de que se puede tratar?
---------------------------------------------------------------------------
package intdob;
import java.math.*;
import java.util.*;
public class Main {
public static float a,b,c,d;
public static float h;
public static int t;
public static float v[]=new float[t+1];
public static float s[]=new float[t+1];
public static double f(float x,float y)
{
return y*Math.sin(x);
}
public static double g(float r)
{
double sum=f(a,c)+f(b,d);
for(int i=1;i<=t-1;i++)
{
if(i%2==0)
sum=sum+2*f(v[i],r);
else
sum=sum+4*f(v[i],r);
//necesitamos que t sea par
}
sum=sum*h/3;
return sum;
}
public static void main(String[] args) {
System.out.println("escribe la cantidad de subintervalos que deseas inicialmente:");
Scanner n1=new Scanner(System.in);
t=n1.nextInt();
System.out.println("ingrese el valor de a:");
Scanner n2=new Scanner(System.in);
a=n2.nextFloat();
System.out.println("ingrese el valor de b:");
Scanner n3=new Scanner(System.in);
b=n3.nextFloat();
System.out.println("ingrese el valor de c:");
Scanner n4=new Scanner(System.in);
c=n4.nextFloat();
System.out.println("ingrese el valor de d:");
Scanner n5=new Scanner(System.in);
d=n5.nextFloat();
h=(b-a)/t;
float h2=(c-d)/t;
v[0]=a;
s[0]=b;
for(int i=0;i<=t;i++)
{
v[i+1]=v[i]+h;
s[i+1]=s[i]+h2;
}
//-----------------------------
//aqui va la que resuleve la integral:
double suma=g(c)+g(d);
for(int i=1;i<=t-1;i++)
{
if(i%2==0)
suma=suma+2*g(s[i]);
else
suma=suma+4*g(s[i]);
//necesitamos que t sea par
}
suma=suma*h2/3;
System.out.println("el valor de la integral doble es:"+suma);
}
}
-------------------------------------------------------------------------------------
AL CORRER ME SALE ESTE ERROR:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:840)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextFloat(Scanner.java:2319)
at intdob.Main.main(Main.java:64)
Java Result: 1
---------------------------------------
MUCHAS GRACIAS DE ANTEMANO POR LAS RESPUESTAS
---------------------------------------------------------------------------
package intdob;
import java.math.*;
import java.util.*;
public class Main {
public static float a,b,c,d;
public static float h;
public static int t;
public static float v[]=new float[t+1];
public static float s[]=new float[t+1];
public static double f(float x,float y)
{
return y*Math.sin(x);
}
public static double g(float r)
{
double sum=f(a,c)+f(b,d);
for(int i=1;i<=t-1;i++)
{
if(i%2==0)
sum=sum+2*f(v[i],r);
else
sum=sum+4*f(v[i],r);
//necesitamos que t sea par
}
sum=sum*h/3;
return sum;
}
public static void main(String[] args) {
System.out.println("escribe la cantidad de subintervalos que deseas inicialmente:");
Scanner n1=new Scanner(System.in);
t=n1.nextInt();
System.out.println("ingrese el valor de a:");
Scanner n2=new Scanner(System.in);
a=n2.nextFloat();
System.out.println("ingrese el valor de b:");
Scanner n3=new Scanner(System.in);
b=n3.nextFloat();
System.out.println("ingrese el valor de c:");
Scanner n4=new Scanner(System.in);
c=n4.nextFloat();
System.out.println("ingrese el valor de d:");
Scanner n5=new Scanner(System.in);
d=n5.nextFloat();
h=(b-a)/t;
float h2=(c-d)/t;
v[0]=a;
s[0]=b;
for(int i=0;i<=t;i++)
{
v[i+1]=v[i]+h;
s[i+1]=s[i]+h2;
}
//-----------------------------
//aqui va la que resuleve la integral:
double suma=g(c)+g(d);
for(int i=1;i<=t-1;i++)
{
if(i%2==0)
suma=suma+2*g(s[i]);
else
suma=suma+4*g(s[i]);
//necesitamos que t sea par
}
suma=suma*h2/3;
System.out.println("el valor de la integral doble es:"+suma);
}
}
-------------------------------------------------------------------------------------
AL CORRER ME SALE ESTE ERROR:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:840)
at java.util.Scanner.next(Scanner.java:1461)
at java.util.Scanner.nextFloat(Scanner.java:2319)
at intdob.Main.main(Main.java:64)
Java Result: 1
---------------------------------------
MUCHAS GRACIAS DE ANTEMANO POR LAS RESPUESTAS
Valora esta pregunta


0