0% encontró este documento útil (0 votos)
92 vistas4 páginas

Aplicación Java para Calcular IMC

Este documento presenta tres ejercicios resueltos que involucran el uso de sentencias condicionales en Java. El primer ejercicio calcula el índice de masa corporal de una persona e indica su estado de acuerdo a rangos predefinidos. El segundo calcula las raíces de una ecuación de segundo grado y distingue entre casos de raíces reales y complejas. El tercero simula una calculadora que realiza las cuatro operaciones básicas dependiendo de la operación especificada por el usuario.

Cargado por

Ruth Navarro
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
92 vistas4 páginas

Aplicación Java para Calcular IMC

Este documento presenta tres ejercicios resueltos que involucran el uso de sentencias condicionales en Java. El primer ejercicio calcula el índice de masa corporal de una persona e indica su estado de acuerdo a rangos predefinidos. El segundo calcula las raíces de una ecuación de segundo grado y distingue entre casos de raíces reales y complejas. El tercero simula una calculadora que realiza las cuatro operaciones básicas dependiendo de la operación especificada por el usuario.

Cargado por

Ruth Navarro
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

66  A. García-Beltrán y J.M.

Arranz

Ejercicios resueltos del Capítulo de Sentencias condicionales o selectivas

1) Construir un programa que calcule el índice de masa corporal de una persona (IMC = peso [kg] /
altura2 [m]) e indique el estado en el que se encuentra esa persona en función del valor de IMC:

Valor de IMC Diagnóstico


< 16 Criterio de ingreso en hospital
de 16 a 17 infrapeso
de 17 a 18 bajo peso
de 18 a 25 peso normal (saludable)
de 25 a 30 sobrepeso (obesidad de grado I)
de 30 a 35 sobrepeso crónico (obesidad de grado II)
de 35 a 40 obesidad premórbida (obesidad de grado III)
>40 obesidad mórbida (obesidad de grado IV)

Nota 1: se recomienda el empleo de sentencias if–else anidadas. Nota 2: Los operandos (peso y
altura) deben ser introducidos por teclado por el usuario.

2) Construir un programa que calcule y muestre por pantalla las raíces de la ecuación de segundo
grado de coeficientes reales. El programa debe diferenciar los diferentes casos que puedan surgir: la
existencia de dos raíces reales distintas, de dos raíces reales iguales y de dos raíces complejas. Nota:
se recomienda el empleo de sentencias if–else anidadas.

3) Construir un programa que simule el funcionamiento de una calculadora que puede realizar las
cuatro operaciones aritméticas básicas (suma, resta, producto y división) con valores numéricos
enteros. El usuario debe especificar la operación con el primer carácter del primer parámetro de la
línea de comandos: S o s para la suma, R o r para la resta, P, p, M o m para el producto y D o d para
la división. Los valores de los operandos se deben indicar en el segundo y tercer parámetros. Nota:
Se recomienda el empleo de una sentencia switch.
 Programación orientada a objetos con Java 67

Soluciones a los ejercicios del Capítulo de Sentencias condicionales o selectivas

1) Programa que calcula el IMC de una persona:

import [Link].*;
public class IndiceIMC {
public static void main (String[] args) {
[Link]("Calculo del indice de masa corporal");
Scanner entrada = new Scanner([Link]);
[Link]("Introduce el peso (en kg): ");
double peso = [Link]();
[Link]("Introduce la altura (en centimetros): ");
double altura = [Link]()/100;
double imc = peso/(altura*altura);
[Link]("Para un peso de "+ peso +" kilogramos y");
[Link]("una altura de "+ altura + " metros");
[Link]("el indice de masa corporal es de "+ (int)imc);
if (imc<16) { [Link]("Necesita ingresar en un hospital");
} else if (imc<17) { [Link]("Usted tiene infrapeso");
} else if (imc<18) { [Link]("Usted tiene bajo peso");
} else if (imc<26) { [Link]("Usted tiene un peso saludable");
} else if (imc<30) { [Link]("Tiene sobrepeso de grado I");
} else if (imc<35) { [Link]("Tiene obesidad de grado II");
} else if (imc<40) { [Link]("Tiene obesidad premorbida (III)");
} else { [Link]("Usted tiene obesidad morbida o de grado IV");
}
}
}

$>java IndiceIMC

Calculo del indice de masa corporal Tiene dos raices reales


Introduce el peso (en kg): 75
Introduce la altura (en centimetros): 174
Para un peso de 75.0 kilogramos y
una altura de 1.74 metros
el indice de masa corporal es de 24
Usted tiene un peso saludable

2) Programa que calcula y muestra por pantalla las raíces de la ecuación de segundo grado de
coeficientes reales.

/**
* Ecuacion2g: Ejemplo de sentencias if-else anidadas
* Muestra el valor de las raices de una ecuacion de 2º grado
* A. Garcia-Beltran - octubre, 2004
*/
public class Ecuacion2g {
public static void main (String [] args) {
double a; // Coeficiente de grado 2
double b; // Coeficiente de grado 1
double c; // Coeficiente de grado 0
double discriminante; // Discriminante
double x1; // Primera raiz real
double x2; // Segunda raiz real
double preal; // Parte real de la raiz compleja
double pimag; // Parte imaginaria de la raiz compleja
a = [Link](args[0]);
b = [Link](args[1]);
c = [Link](args[2]);
discriminante = b*b - 4*a*c;
68  A. García-Beltrán y J.M. Arranz

if (discriminante>0) {
// Dos raices reales
x1 = (-b + [Link](discriminante))/(2*a);
x2 = (-b - [Link](discriminante))/(2*a);
[Link]("Soluciones de la ecuacion de segundo grado: ");
[Link](a + "x2 + " + b + "x + " + c);
[Link]("Tiene dos raices reales");
[Link]("La primera raiz es x1 = " + x1);
[Link]("La segunda raiz es x2 = " + x2);
}
else if (discriminante<0) {
// Dos raices imaginarias
preal = (-b)/(2*a);
pimag = [Link](-discriminante)/(2*a);
[Link]("Soluciones de la ecuacion de segundo grado: ");
[Link](a + "x2 + " + b + "x + " + c);
[Link]("Tiene dos raices complejas");
[Link]("La primera raiz es x1 = " + preal + "+i" + pimag);
[Link]("La segunda raiz es x2 = " + preal + "-i" + pimag);
}
else {
// Dos raices iguales
x1 = (-b)/(2*a);
[Link]("Soluciones de la ecuacion de segundo grado: ");
[Link](a + "x2 + " + b + "x + " + c);
[Link]("Dos raices identicas, x1 = x2 = " + x1);
}
}
}

Ejemplos de ejecución y salida correspondiente por pantalla:

$>java Ecuacion2g 1 5 6

Soluciones de la ecuacion de segundo grado: 1.0x2 + 5.0x + 6.0


Tiene dos raices reales
La primera raiz es x1 = -2.0
La segunda raiz es x2 = -3.0

$>java Ecuacion2g 1 4 4

Soluciones de la ecuacion de segundo grado: 1.0x2 + 4.0x + 4.0


Dos raices identicas, x1 = x2 = -2.0

$>java Ecuacion2g 1 3 6

Soluciones de la ecuacion de segundo grado: 1.0x2 + 3.0x + 6.0


Tiene dos raices complejas
La primera raiz es x1 = -1.5+i1.9364916731037085
La segunda raiz es x2 = -1.5-i1.9364916731037085

3) Programa que simula el funcionamiento de una calculadora que puede realizar las cuatro
operaciones aritméticas básicas (suma, resta, producto y división) con valores numéricos enteros. El
usuario debe especificar la operación con el primer carácter del primer parámetro de la línea de
comandos: S o s para la suma, R o r para la resta, P, p, M o m para el producto y D o d para la
división. Los valores de los operandos se deben indicar en el segundo y tercer parámetros.

/**
* Calcula: Ejemplo de uso de la sentencia switch
* Simula el funcionamiento de una calculadora
* A. Garcia-Beltran - octubre, 2004
 Programación orientada a objetos con Java 69

*/
public class Calcula {
public static void main (String [] args) {
char c;
int a,b;
c=args[0].charAt(0);
a = [Link](args[1]);
b = [Link](args[2]);
switch (c) {
case 'S':
case 's': [Link]("Resultado de la suma: " + (a+b)); break;
case 'R':
case 'r': [Link]("Resultado de la resta: " + (a-b)); break;
case 'M':
case 'm':
case 'P':
case 'p': [Link]("Resultado del producto: " + a*b); break;
case 'D':
case 'd': [Link]("Resultado de la division: " + a/b); break;
default: [Link]("Por favor, indica la operacion"); break;
}
}
}

Ejemplos de ejecución y salida correspondiente por pantalla:

$>java Calcula resta 3 4


Resultado: -1

$>java Calcula producto 3 4


Resultado: 12

También podría gustarte