Autor Tema: Ayuda Con ejercicio de java  (Leído 10055 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado slousurfer

  • Sv Jr.
  • **
  • Mensajes: 83
  • "Waves...are toys from God"
Ayuda Con ejercicio de java
« : febrero 16, 2010, 05:59:33 pm »
Hola buenas!!!! hey q ondas mara!!!!
les queria pedir un favor que porfa me ayuden a resolver un ejercicio de java que me han dejado en una guia y ese es el unico que me falta, soy nuevo en esto es mi primer ciclo y en ese ejercicio si me he qdado perdido... :wacko:


Este es el ejercicio!!!!
Realice un programa que sea una calculadora. Debe solicitar al usuario digitar una opción para decidir qué hacer; suma, resta, división o multiplicación. Luego de escoger la opción solicitar dos números para operarlos. Finalmente se debe imprimir el resultado.

esto es lo q yo he hecho pero me da nueve errores quiero saber si voy bien y a donde debo correguir o si ando completamente perdido!!!!:

import java.util.*;
class Ejercicio20 {
  public static void main (String args []) {
 
String seleccion=("\n Elija una Opcion: \n a.suma \n b. resta \n c.division \n d.multiplicacion");

int a=numero1+numero2, b=numero1-numero2, c=numero1/numero2, d=numero1*numero2, operacion, numero1, numero2;
     Scanner valorDigitado=new Scanner(System.in);
     System.out.print("Digite un numero:");
     operacion=valorDigitado.nextInt();



switch(operacion){
 
case 1:
   System.out.println(a);
   break;
   case 2:
   System.out.println(b);
   break;
   case 3:
   System.out.println(c);
   break;
   case 4:
   System.out.println(d);
   break;
}

System.out.print("Digite la primera cantidad:");
numero1=valorDigitado.nextInt();

System.out.print("Digite la segunda cantidad:");
numero2=valorDigitado.nextInt();

}
}






Desconectado FLEB_JR

  • Sv Full Member
  • *
  • Mensajes: 578
Re:Ayuda Con ejercicio de java
« Respuesta #1 : febrero 16, 2010, 06:37:40 pm »
Mira talvez podes sacar algunas funciones de este codigo, ojala y te sea de utilidad
Código: [Seleccionar]
http://foros.hackerss.com/lofiversion/index.php/t67.html
100% Barcita...  
†  †  La Iglesia no se vende a nadie la Iglesia solo esta comprometida solo con el Reino de DIOS...  † †

Desconectado mxgxw

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 5666
  • Starlet - 999cc
    • mxgxw
Re:Ayuda Con ejercicio de java
« Respuesta #2 : febrero 16, 2010, 07:59:55 pm »
OK Primero. Aquí no hacemos tareas.

Sin embargo, se que tu dificultad para resolver el ejercicio podría responder más al hecho de que están usando Java para resolver un ejercicio de programación estructurada. O en otras palabras, la enseñanza de programación aquí en mi lindo El Salvador, es una BASURA. Lo que, si lo vemos desde otro punto de vista equivale a clavar clavos con un martillo neumático.

Solo por eso, te voy a dar una pista de lo que te puede estar dando errores:

1ro: Todas las variables (a donde guardas tus datos) tienen que estar declaradas antes de usarlas (esto para java, en otros lenguajes no es necesario). Estas utilizando dos variables, no te voy a decir cuales que no estan declaradas. El compliador te va a generar errores.

2do: En casi cualquier lenguaje (excepto en algunos funcionales y otros raros). Dentro de un bloque de código las operaciones se ejecutan de manera secuencia de arriba hacia abajo. En otras palabras lo que escribes al principio es lo primero que se ejecuta. Tu problema es que has definido las operaciones antes de tener los datos, tampoco te voy a decir donde has hecho esto, pero creo que encontraras la respuesta fácil.

Una forma fácil de organizarse al comenzar a programar es seguir la siguiente técnica:

1-Definir las variables:
A es entero
B es flotante
C es texto

2-Obtener las entradas del usuario
A lo ingresa el usuario
B lo ingresa el usuario

3-Realizar las operaciones sobre los datos.
C es igual a convertir en texto (a+b)

4-Desplegar la salida.
Mostrar C

Eso mi querido compañero, es programación estrurada, un paradígma que viene desde tiempos inmemoriales de la informática.

REvisá tu código y mirá si cumple con esa estructura básica, si no pues volvelo a escribir, peganos de nuevo tu código y te seguimos ayudando.


Hola buenas!!!! hey q ondas mara!!!!
les queria pedir un favor que porfa me ayuden a resolver un ejercicio de java que me han dejado en una guia y ese es el unico que me falta, soy nuevo en esto es mi primer ciclo y en ese ejercicio si me he qdado perdido... :wacko:


Este es el ejercicio!!!!
Realice un programa que sea una calculadora. Debe solicitar al usuario digitar una opción para decidir qué hacer; suma, resta, división o multiplicación. Luego de escoger la opción solicitar dos números para operarlos. Finalmente se debe imprimir el resultado.

esto es lo q yo he hecho pero me da nueve errores quiero saber si voy bien y a donde debo correguir o si ando completamente perdido!!!!:

import java.util.*;
class Ejercicio20 {
  public static void main (String args []) {
 
String seleccion=("\n Elija una Opcion: \n a.suma \n b. resta \n c.division \n d.multiplicacion");

int a=numero1+numero2, b=numero1-numero2, c=numero1/numero2, d=numero1*numero2, operacion, numero1, numero2;
     Scanner valorDigitado=new Scanner(System.in);
     System.out.print("Digite un numero:");
     operacion=valorDigitado.nextInt();



switch(operacion){
 
case 1:
   System.out.println(a);
   break;
   case 2:
   System.out.println(b);
   break;
   case 3:
   System.out.println(c);
   break;
   case 4:
   System.out.println(d);
   break;
}

System.out.print("Digite la primera cantidad:");
numero1=valorDigitado.nextInt();

System.out.print("Digite la segunda cantidad:");
numero2=valorDigitado.nextInt();

}
}
« Última Modificación: febrero 16, 2010, 08:12:53 pm por mxgxw »


Desconectado ELITE

  • The Communiter-
  • *
  • Mensajes: 6083
  • NEMO ME IMPUNE LACESSIT
Re:Ayuda Con ejercicio de java
« Respuesta #3 : febrero 16, 2010, 08:12:10 pm »
OK Primero. Aquí no hacemos tareas.

Sin embargo, se que tu dificultar para resolver el ejercicio podría responder más al hecho de que están usando Java para resolver un ejercicio de programación estructurada. O en otras palabras, la enseñanza de programación aquí en mi lindo El Salvador, es una BASURA. Lo que, si lo vemos desde otro punto de vista equivale a clavar clavos con un martillo neumático.

Solo por eso, te voy a dar una pista de lo que te puede estar dando errores:

1ro: Todas las variables (a donde guardas tus datos) tienen que estar declaradas antes de usarlas. Estas utilizando dos variables, no te voy a decir cuales que no estan declaradas. El compliador te va a generar errores.

2do: En casi cualquier lenguaje (excepto en algunos funcionales y otros raros). Dentro de un bloque de código las operaciones se ejecutan de manera secuencia de arriba hacia abajo. En otras palabras lo que escribes al principio es lo primero que se ejecuta. Tu problema es que has definido las operaciones antes de tener los datos, tampoco te voy a decir donde has hecho esto, pero creo que encontraras la respuesta fácil.

Una forma fácil de organizarse al comenzar a programar es seguir la siguiente técnica:

1-Definir las variables:
A es entero
B es flotante
C es texto

2-Obtener las entradas del usuario
A lo ingresa el usuario

3-Realizar las operaciones sobre los datos.

Eso mi querido compañero, es programación estrurada, un paradígma que viene desde tiempos inmemoriales de la informática.

REvisá tu código y mirá si cumple con esa estructura básica, si no pues volvelo a escribir, peganos de nuevo tu código y te seguimos ayudando.



Sos un cruel mx  x_x pero con razon absulota  :D

Mira man estas programando en consola ?? y usas o no un editor java ?? ummm solo una librerias has halado en java porq ??

Lo que dice el mx es cierto man revisa lo que el puso  :thumbsup:

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14583
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda Con ejercicio de java
« Respuesta #4 : febrero 16, 2010, 10:42:49 pm »

Desconectado adolira

  • Sv Member
  • ***
  • Mensajes: 440
Re:Ayuda Con ejercicio de java
« Respuesta #5 : febrero 17, 2010, 12:04:35 am »
slousurfer 

si has estudiado otros lenguajes no se como has llegado a java xD ,si es primera vez, te recomiendo leer introduccion a la programacion 
otra cosa tenes q ser ordenado eso es importante
tambien lo que dice mxgxw
« Última Modificación: febrero 17, 2010, 12:10:20 am por adolira »
<a href="http://profile.mygamercard.net/eternal258">
<img src="http://card.mygamercard.net/community/360style/eternal258.png" border=0>
</a>

Desconectado moyo18

  • The Communiter-
  • *
  • Mensajes: 1719
Re:Ayuda Con ejercicio de java
« Respuesta #6 : febrero 17, 2010, 01:05:21 am »
tienes un solo desorden en tu codigo... no es necesario usar case... ve mejor con simples if statements. ademasa crea por cada operacion matematica una function y luego llamala en el main del programa... ademas no entiendo bien dond pides los numeros q deseas sumar o restar etc...

estas programando en consola o objetos ??

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14583
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda Con ejercicio de java
« Respuesta #7 : febrero 17, 2010, 10:32:31 am »
 
Citar
  Para llamar al extranjero desde El Salvador, uno debe marcar el carrier de la
compañía telefónica (155 o 144, tres dígitos), el código internacional (00), el código del
país (503), supondremos que tiene siempre tres dígitos, el código de área (que se supone
de 2 dígitos) y el número del abonado (supongamos de ocho dígitos).
Escribir un programa que dado un número telefónico completo por la línea de comandos,
imprima por pantalla el carrier, código internacional, código del país, código de área y
código de abonado.

lol un problemita de manipulacion de cadena? q vergon XD ese ejercicio ya está mas salsa :P

Desconectado cvilanova

  • Sv Member
  • ***
  • Mensajes: 429
  • Samurai Tux
    • Hornos, Cocinas y Todo lo relacionado al Arte Metalico
Re:Ayuda Con ejercicio de java
« Respuesta #8 : febrero 17, 2010, 10:40:43 am »
holaz, hace tiempo publique esto en otro foro de java:

import java.util.*;
import java.awt.*;
import java.applet.*;

/**
* Calculadora sencilla
*/
public class Calc extends Applet {

Display display = new Display();

/**
* inicializa el applet Calc
*/
public void init () {

setLayout(new BorderLayout());
Keypad keypad = new Keypad();

add ("North", display);
add ("Center", keypad);
}

/**
* manipulador para las funciones de la calculadora.
*/
public boolean action (Event ev, Object arg) {

if (ev.target instanceof Button) {

String label = (String)arg;
if (label.equals("C")) {
display.Clear ();
return true;
}
else if (label.equals(".")) {
display.Dot ();
return true;
}
else if (label.equals("+")) {
display.Plus ();
return true;
}
else if (label.equals("-")) {
display.Minus ();
return true;
}
else if (label.equals("x")) {
display.Mul ();
return true;
}
else if (label.equals("/")) {
display.Div ();
return true;
}
else if (label.equals("+/-")) {
display.Chs ();
return true;
}
else if (label.equals("=")) {
display.Equals ();
return true;
}
else {
display.Digit (label);
return true;
}
}
return false;
}


/**
* Esto permite que la clase se use como applet o como aplicación independiente
*/
public static void main (String args[]) {

Frame f = new Frame ("Calculator");
Calc calc = new Calc ();

calc.init ();

f.resize (210, 200);
f.add ("Center", calc);
f.show ();
}
}

/* -------------------------------------------------- */

/**
* Keypad manipula la entrada de datos y la visualización de resultados
*/
class Keypad extends Panel {

/**
* inicializa keypad, añade los botones, establece los colores, etc.
*/
Keypad (){

Button b = new Button();
Font font = new Font ("Times", Font.BOLD, 14);
Color functionColor = new Color (255, 255, 0);
Color numberColor = new Color (0, 255, 255);
Color equalsColor = new Color (0, 255, 0);
setFont (font);
b.setForeground (Color.black);

add (b = new Button ("7"));
b.setBackground (numberColor);
add (b = new Button ("8"));
b.setBackground (numberColor);
add (b = new Button ("9"));
b.setBackground (numberColor);
add (b = new Button ("/"));
b.setBackground (functionColor);

add (b = new Button ("4"));
b.setBackground (numberColor);
add (b = new Button ("5"));
b.setBackground (numberColor);
add (b = new Button ("6"));
b.setBackground (numberColor);
add (b = new Button ("x"));
b.setBackground (functionColor);

add (b = new Button ("1"));
b.setBackground (numberColor);
add (b = new Button ("2"));
b.setBackground (numberColor);
add (b = new Button ("3"));
b.setBackground (numberColor);
add (b = new Button ("-"));
b.setBackground (functionColor);

add (b = new Button ("."));
b.setBackground (functionColor);
add (b = new Button ("0"));
b.setBackground (numberColor);
add (b = new Button ("+/-"));
b.setBackground (functionColor);
add (b = new Button ("+"));
b.setBackground (functionColor);

add (b = new Button ("C"));
b.setBackground (functionColor);
add (new Label (""));
add (new Label (""));
add (b = new Button ("="));
b.setBackground (equalsColor);

setLayout (new GridLayout (5, 4, 4, 4));
}

}

/* -------------------------------------------------- */

/**
* la clase Display gestiona la visualización del resultado calculado y también
* implementa las tecla de fucnión de la calculadora
*/
class Display extends Panel{

double last = 0;
int op = 0;
boolean equals = false;
int maxlen = 10;
String s;
Label readout = new Label("");

/**
* Inicializa display
*/
Display () {

setLayout(new BorderLayout());
setBackground (Color.red);
setFont (new Font ("Courier", Font.BOLD + Font.ITALIC, 30));
readout.setAlignment(1);
add ("Center",readout);
repaint();
Clear ();
}

/**
* manipulación del pulsado de un dígito
*/
void Digit (String digit) {
checkEquals ();

/*
* quita los ceros precedentes
*/
if (s.length () == 1 && s.charAt (0) == '0' && digit.charAt (0) != '.')
s = s.substring (1);

if (s.length () < maxlen)
s = s + digit;
showacc ();
}

/**
* manipulación del punto decimal
*/
void Dot () {
checkEquals ();

/*
* ya tiene un '.'
*/
if (s.indexOf ('.') != -1)
return;

if (s.length () < maxlen)
s = s + ".";
showacc ();
}

/**
* si el usuario pulsa = sin haber pulsado antes un operador
* (+,-,x,/), pone cero en la visualización
*/
private void checkEquals () {
if (equals == true) {
equals = false;
s = "0";
}
}

/**
* operador suma para uso posterior.
*/
void Plus () {
op = 1;
operation ();
}

/**
* operador resta para uso posterior.
*/
void Minus () {
op = 2;
operation ();
}

/**
* operador multiplicación para uso posterior.
*/
void Mul () {
op = 3;
operation ();
}

/**
* operador división para uso posterior.
*/
void Div () {
op = 4;
operation ();
}

/**
* Interpreta el valor de la visualización como double y lo almacena
* para uso posterior
*/
private void operation () {
if (s.length () == 0) return;

Double xyz = Double.valueOf (s);
last = xyz.doubleValue ();

equals = false;
s = "0";
}
/**
* invalida el valor actual y revisualiza.
*/
void Chs () {
if (s.length () == 0) return;

if (s.charAt (0) == '-') s = s.substring (1);
else s = "-" + s;

showacc ();
}

/**
* termina el último cálculo y visualiza el resultado
*/
void Equals () {
double acc;

if (s.length () == 0) return;
Double xyz = Double.valueOf (s);
switch (op) {
case 1:
acc = last + xyz.doubleValue ();
break;

case 2:
acc = last - xyz.doubleValue ();
break;

case 3:
acc = last * xyz.doubleValue ();
break;

case 4:
acc = last / xyz.doubleValue ();
break;

default:
acc = 0;
break;
}

s = new Double (acc).toString ();
showacc ();
equals = true;
last = 0;
op = 0;
}

/**
* limpia la visualización y el último valor interno
*/
void Clear () {
last = 0;
op = 0;
s = "0";
equals = false;
showacc ();
}

/**
* pide que se repinte el resultado
*/
private void showacc () {
readout.setText(s);
repaint ();
}
}


es para hacerlo en un applet, por que no especificastes que si hiba a ser en consola o en otra onda!!


Cocinas, Campanas Extractoras
Hornos para Pan y Pizza
Planchas, Cocinas Industriales
y Mucho más...
Visita: ArteMetalico.co.cc

7459 1228, 7624 4427 y 2293 2691

Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14583
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda Con ejercicio de java
« Respuesta #9 : febrero 17, 2010, 10:54:43 am »
esta interesante tu implementacion de la calculadora, bastante modular.

Desconectado Camus de Acuario

  • The Communiter-
  • *
  • Mensajes: 8455
  • Ōrora Ekusukyūshon!
Re:Ayuda Con ejercicio de java
« Respuesta #10 : febrero 17, 2010, 11:20:14 am »
muy buen programa cvilanova, pero si el amigo apenas esta aprendiendo a nadar no hay que tirarlo al mar de un solo, se ve que le falta saber la estructura de un programa, asi que empiece por modo consola primero.

Ya despues que se vaya empapando del asunto que se atreva con interfaces graficas.

para el programa de los numeros telefonicos si el profesor le da fijo el numero de digitos de cada rubro (carrier, codigo internacional, codigo de pais, codigo area, numero) con 5 string.substring(startpos, endpos) y que el vaya jugando con las posiciones iniciales y finales.....

Desconectado mxgxw

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 5666
  • Starlet - 999cc
    • mxgxw
Re:Ayuda Con ejercicio de java
« Respuesta #11 : febrero 17, 2010, 12:07:45 pm »
esta interesante tu implementacion de la calculadora, bastante modular.

Solo que es applet jejeje

Yo la verdad no estoy muy de acuerdo en que pongan código aquí y por eso no le escribí la solución al bicho.

Si no quiere aprender, va a terminar copiando el código de alguien más y al final no va a saber que hace aunque le funcione.

Si deveras quiere aprender, entonces es mejor que el se de duro solito con su código y le vamos ayudando. Vamos a ver que responde y por eso puse la respuesta arriba. Si quiere ayuda que trabaje en SU código.


Desconectado g00mba

  • The Communiter-
  • *
  • Mensajes: 14583
  • SOMOS LEGION
    • ALABADO SEA MONESVOL
Re:Ayuda Con ejercicio de java
« Respuesta #12 : febrero 17, 2010, 12:12:44 pm »
Solo que es applet jejeje
hmm segun entiendo puede ser usado como aplicacion o como applet


Yo la verdad no estoy muy de acuerdo en que pongan código aquí y por eso no le escribí la solución al bicho.

Si no quiere aprender, va a terminar copiando el código de alguien más y al final no va a saber que hace aunque le funcione.

Si deveras quiere aprender, entonces es mejor que el se de duro solito con su código y le vamos ayudando. Vamos a ver que responde y por eso puse la respuesta arriba. Si quiere ayuda que trabaje en SU código.
mira aunque sea para hacer que haga lo que el quiere va a tener que estudiar para entenderlo, el codigo que puse antes (en el otro tema) tiene trabas asi que aunque lo baje, si no sabe lo que esta haciendo no lo va a poder hacer correr (q creo q vos me ayudaste con ese me acuerdo mgx)

Desconectado mxgxw

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 5666
  • Starlet - 999cc
    • mxgxw
Re:Ayuda Con ejercicio de java
« Respuesta #13 : febrero 17, 2010, 12:24:54 pm »
hmm segun entiendo puede ser usado como aplicacion o como applet

Si pero esque solo ver la palabra applet me eriza la piel fksajhdfkdjfdfas Los applets fueron lo que le dio a java la imagen de el lenguaje era lento y engorroso.

mira aunque sea para hacer que haga lo que el quiere va a tener que estudiar para entenderlo, el codigo que puse antes (en el otro tema) tiene trabas asi que aunque lo baje, si no sabe lo que esta haciendo no lo va a poder hacer correr (q creo q vos me ayudaste con ese me acuerdo mgx)

Si, yo se y por eso no mande a volar este tema. Si aquí viene alguien a decir... haganme este ejercicio vs sabes que el tema se borra inmediatamente, pero vino, pego su código fuente, que obviamente no funciona pero al menos ha hecho el intento :)

A lo que voy es, pegarle bloques enteros de codigo no va a servir de mucho porque si no se entiende el mismo que el ha hecho menos va a entender lo que ustedes han armado.


Desconectado slousurfer

  • Sv Jr.
  • **
  • Mensajes: 83
  • "Waves...are toys from God"
Re:Ayuda Con ejercicio de java
« Respuesta #14 : febrero 17, 2010, 02:00:57 pm »
Hola buenas amigos gracias por la ayuda vaya ahora ya ordene mi el codigo...  y ya obtuve el resultado ahora lo que me sucede es que me imprime el resultado de las cuatro operaciones....


y lo que me decias mxgmxw de que tenia dos variables que me hacian falta declarar las encontre y sigo manteniendo las mismas variables solo que ordenadas

ahh y estoy trabajando en consola... no en entorno grafico!!!!

y gracias a todos por sus consejos!!!!

import java.util.*;
class Ejercicio20
{
  public static void main (String args [])
  {
 
    String seleccion=("\n Elija una Opcion: \n \t 1.Suma \n \t 2.Resta \n \t 3.Division \n \t 4.Multiplicacion \n");
   System.out.println(seleccion);

     int operacion;
     Scanner valorDigitado=new Scanner(System.in);
     System.out.print("Digite un numero:");
     operacion=valorDigitado.nextInt();
     
    int a, b, c, d;


     switch(operacion)
    {
 
       case 1:
       System.out.println("a");
       break;
       case 2:
       System.out.println("b");
       break;
       case 3:
       System.out.println("c");
       break;
       case 4:
       System.out.println("d");
       break;
      }
     int numero1, numero2;
    System.out.print("Digite la primera cantidad:");
    numero1=valorDigitado.nextInt();

     System.out.print("Digite la segunda cantidad:");
     numero2=valorDigitado.nextInt();
   
    a=numero1+numero2;
         System.out.println("El Resultado es:"+a);
    b=numero1-numero2;
         System.out.println("El Resultado es:"+b);
    c=numero1/numero2;
         System.out.println("El Resultado es:"+c);
    d=numero1*numero2;
         System.out.println("El Resultado es:"+d);

  }
}