Java - duda con un ejercicio =S

 
Vista:

duda con un ejercicio =S

Publicado por wolfraim (2 intervenciones) el 05/01/2006 00:19:49
Diseñar un dialogo y escribir un programa que calcule la velocidad de un movil
en km/hr, dadas la distancia (en metros) y el tiempo (en segundos)

class Test
{
static public void main(String[]args)
{
Console C = new Console();
C.println("Calcule velocidad de un automovil");
C.println("Metro/s? ");
int m = C.readInt();

C.println("Segundo/s? ");
int s = C.readInt();

C.print("Velocidad " + (???) );
C.print(" km/hr");
}
}

eso es lo que tengo, pero el calculo que esta con signos de interrogacion es que
no se como plantearlo...

el problema es que el resultado se debe dar en km/hr y los datos el
usuario los ingresa en metros y segundos...

alguno de uds me puede ayudar??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:duda con un ejercicio =S

Publicado por PsyBoy (39 intervenciones) el 05/01/2006 01:46:17
pues... es bien simple, solo haz las conversiones con cosas matemáticas, para convertir metros, solo divide en 1000 y para convertir en horas, multiplica por 3600 y listo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:duda con un ejercicio =S

Publicado por wolfraim (2 intervenciones) el 05/01/2006 02:49:01
class Test
{
static public void main(String[]args)
{
Console C = new Console();
C.println("Calcule velocidad de un automovil");
C.println("Metro/s? ");
int m = C.readInt();

C.println("Segundo/s? ");
int s = C.readInt();

C.print("Velocidad " + (???) );
C.print(" km/hr");
}
}

la parte en que se define la "ecuacion" se podria decir =P!
es esta:

C.print("Velocidad " + (???) );
C.print(" km/hr");

dentro del parentesis: (???) debo colocar la operacion...
ya sabemos que al dividir los metros por 1000 obtenemos la cifra ingresada pasada a km (kilometros)
mientras que los segundos los dividimos por 3600 y sale la cifra en hr (horas)
las pruevas que hice fueron de la sgte forma:
*(solo trabajare con el trozo que realiza la operacion)

C.print("Velocidad " + (m/1000*s/3600) );
C.print(" km/hr");

esto me lo compila y todo bien, pero me arrija resultados erroneos, debe ser por la ejecucion por lineas del lenguaje =S

C.print("Velocidad " + (m/1000*s/60/60) );
C.print(" km/hr");

se ve raro pero pasa lo mismo que con la anterior =S

Console C = new Console();
C.println("Calcule velocidad de un automovil");
C.println("Metro/s? ");
int m = C.readInt();
//aqui va el 1º cambio
C.print(m = m/1000);

C.println("Segundo/s? ");
int s = C.readInt();
//aqui el 2º cambio
C.print(s = s/3600);

C.print("Velocidad " + (m*s) );
//entonces ahi aunque los parametros sigan siendo m y s el resultado darah en km/hr pq en los cambios de arriba ya esta listoh!
C.print(" km/hr");

y algunos otros similares pero que nu sirvieron =(

alguna sugerencia??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:duda con un ejercicio =S

Publicado por Hugo Hidalgo (240 intervenciones) el 05/01/2006 04:19:16
Hola: otra vez te paso el ejercicio, ya que me di cuenta que querias ingresar valores desde el teclado, asi podras calcular la velocidad alimentando al programa desde el teclado.

Ahora son tres clses ok Si tienes mas dudas me dices BYE

package org.neos;

//elaboro Hugo Hidalgo Martinez
//4-dic-06
import java.util.StringTokenizer;

public class Decimal{

public Decimal( )
{
}

public static boolean esNegativo( String s ){
if( Double.parseDouble( s ) < 0 )
return true;

return false;
}

public static double parteEntera( String s ) {
StringTokenizer st = new StringTokenizer( s , ".");
Double parteEntera = new Double(st.nextToken());

return parteEntera;
}

public static double parteDecimal( String s ) {
double d = Double.parseDouble( s );

if( esNegativo( s ) ) {
d = (-1)*d + parteEntera( s );

return d;
}

d = d - parteEntera( s );

return d;
}
}

package org.neos;
//elaboro Hugo Hidalgo Martinez
//4-dic-06
public class Velocidades {

public static double getKmDadoMetros(double metros) {
double kilometros=0;

kilometros = metros/1000;

return kilometros;
}

public static double getHrsDadoSegundos(double segundos) {
double horas=0;

horas = segundos/3600;
return horas;

}

public static double getVelocidadKmXHr(double kilometros, double horas) {
double velocidad =0;

velocidad = kilometros/horas;

return velocidad;
}
}

Por ultimo el aplicativo y ya ta dos que tres patadas y no hay de que preocuparse

package org.neos;

//elaboro Hugo Hidalgo Martinez
//4-dic-06
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class VelocidadTeclado {

public static void main( String args[] ) throws IOException {
BufferedReader br = new BufferedReader( new InputStreamReader( System.in ) );
double kilometros;
double horas;
double velocidad;
System.out.print(" Ingrese los metros: ");
String metros = br.readLine();
System.out.print(" Ingrese los segundos: ");
String segundos = br.readLine();

double m = Math.abs( Decimal.parteEntera( metros ) ) + Decimal.parteDecimal( metros );
double s = Math.abs( Decimal.parteEntera( segundos ) ) + Decimal.parteDecimal( segundos );

//ahora si que ya tenemos los metros y segundos en formato double
//calcularemos la velocidad como en el otro programa que te di ok

kilometros = Velocidades.getKmDadoMetros(m);
horas = Velocidades.getHrsDadoSegundos(s);

velocidad = Velocidades.getVelocidadKmXHr(kilometros,horas);
System.out.println("la velocidad es " + velocidad + " km/hr");

}

}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:duda con un ejercicio =S

Publicado por Hugo Hidalgo (240 intervenciones) el 05/01/2006 03:50:32
Hola: mira elabore dos clases (1 para los cxalculos y 2 para ejecucion de los valores) ok
Hay va el codigo. Espero que resuelva tu duda BYE

package org.neos;
//Elaboro Hugo Hidalgo Martinez

public class Velocidades {

public static double getKmDadoMetros(double metros) {
double kilometros=0;

kilometros = metros/1000;

return kilometros;
}

public static double getHrsDadoSegundos(double segundos) {
double horas=0;

horas = segundos/3600;
return horas;

}

public static double getVelocidadKmXHr(double kilometros, double horas) {
double velocidad =0;

velocidad = kilometros/horas;

return velocidad;
}
}

Ahora ejecuta la segunda clase

package org.neos;

public class CalculaVelocidad {

public static void main(String args []) {
double metros = 10000;
double segundos = 180;
double kilometros;
double horas;
double velocidad;

kilometros = Velocidades.getKmDadoMetros(metros);
horas = Velocidades.getHrsDadoSegundos(segundos);

velocidad = Velocidades.getVelocidadKmXHr(kilometros,horas);
System.out.println("la velocidad es " + velocidad + " km/hr");
}

}
}:)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar