Reporte de los programas

39
Asignatura: Programación Básica Trabajo: Reporte del programas java Unidad: # 2. Fecha de entrega: 20 de Abril del 2012. Equipo Integrantes: Marco Antonio Chunab Rodríguez. Antonio Balderas. Ivar Santoyo Austria. Cancún Quintana Roo, México.

Transcript of Reporte de los programas

Page 1: Reporte de los programas

Asignatura: Programación Básica

Trabajo: Reporte del programas java

Unidad: # 2.

Fecha de entrega: 20 de Abril del 2012.

Equipo

Integrantes:

Marco Antonio Chunab Rodríguez.

Antonio Balderas.

Ivar Santoyo Austria.

Cancún Quintana Roo, México.

Page 2: Reporte de los programas

1.- Dado un número entero positivo verificar e imprimir con mensajes:

- Que tenga dos dígitos

- Verificar si sus dígitos son pares

- Promediar sus dígitos

Análisis de Datos

Diccionario de Datos

Variable Significado Valor

ab Número de 2 cifras Entero

a Primera cifra Entero

b Segunda cifra Entero

Entrada Salida Condiciones

ab a (100>ab>=10)

b (ab%2==0)

(a + b)/2

Page 3: Reporte de los programas

Prueba de Escritorio

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

float ab,a=0,b=0;

ab=Integer.parseInt(JOptionPane.showInputDialog(null,"Ingrese número de dos dígitos"));

if(ab>=10&&ab<100){

JOptionPane.showMessageDialog(null,"Tiene dos digitos");

if(ab%2==0){

JOptionPane.showMessageDialog(null,"Sus digitos son pares");

a=ab%10;

b=(ab-a)/10;

JOptionPane.showMessageDialog(null,"El promedio de los dos dígitos es: "+((a+b)/2));

}else{JOptionPane.showMessageDialog(null,"Sus digitos son impares");}

}else

JOptionPane.showMessageDialog(null,"Este número no tiene dos dígitos");

}}

ab a b Pantalla

1 46 Ingrese número de dos dígitos: 46

2 Tiene dos dígitos

3 Sus dígitos son pares

4 6

5 4

6 5 El promedio de los dígitos es: 5

Page 4: Reporte de los programas

Depuración

Conclusiones

Lo que podemos concluir acerca de la realización de este ejercicio es que en realidad no fue muy

difícil hacerlo ya que esto está constituido por operaciones muy básica, lo único es que se tenia

que pensar en la forma de dividir a los número s de dos dígitos para que así se pudiera n sumar y

dividir entre dos para sacar el promedio.

Page 5: Reporte de los programas

2.- Un número es un capicúa si su valor es el mismo tanto si es leído de izquierda a derecha como

de derecha a izquierda. Por ejemplo: 35253 es un capicúa. 26547 no es un capicúa. Diseña un

algoritmo que determine si un número introducido es un capicúa o no.

Ejemplo de números capicúas: 121, 333, 454, 676

Números no capicúas 345,678 ,234 ,890 ,256.

Análisis de Datos

Entrada Salida Condiciones

num b if(n!=0)

n while(n!=0)

numinv

Diccionario de Datos

Variable Significado Valor

Num Número Entero

b Ultima cifra Entero

N Primeras dos cifras Entero

Num inv Numero invertido Entero

Page 6: Reporte de los programas

Prueba de Escritorio

Línea num b n numinv Pantalla

1 121

2 1

3 12

4 1

5 121 Es Capicúa

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

int num,b,numinv=0,n;

num=Integer.parseInt(JOptionPane.showInputDialog(null,"Escriba un número"));

n=num;

if(num!=0){

while(n!=0){

b=n%10;

n=n/10;

numinv=(numinv*10)+b;

JOptionPane.showMessageDialog(null,"\nEl número invertido es: "+numinv);}

if(numinv==num){

JOptionPane.showMessageDialog(null,"\nEs Capicúa");

}else{

JOptionPane.showMessageDialog(null,"\nNo es Capicúa");

}

}else{

JOptionPane.showMessageDialog(null,"Número no válido");

}}}

Page 7: Reporte de los programas

Depuración

Conclusiones

Este ejercicio fue mucho más difícil ya que se tuvo que “while” para poder invertir el número y que

apareciera junto en una ventana. Se tuvo que pensar en la manera de separar el número, cada

digito por separado y después volverlo a unir en orden distinto. Después fue lo más sencillo del

problema que fue identificar si era un número capicúa o no, así que pudimos aprender a como

usar la palara “while” y para que sirve, siendo esta muy útil.

Page 8: Reporte de los programas

3.-Pedir un número de 0 a 99 y mostrarlo escrito. Por ejemplo, para 56 mostrar: cincuenta y seis.

Análisis de Datos

Entrada Salida Condiciones

a Cero If(99>a>0)

Uno

Dos

Tres

Cuatro

Cinco

Seis

Siete

Ocho

Nueve

Diez

Once

Doce

Trece

Catorce

Quince

Dieciséis

Diecisiete

Dieciocho

Diecinueve

Veinte

Veintiuno

Veintidós

Veintitrés

Veinticuatro

Veinticinco

Veintiséis

Veintisiete

Veintiocho

Veintinueve

Treinta

Treinta y uno

Treinta y dos

Treinta y tres

Treinta y cuatro

Treinta y cinco

Treinta y seis

Treinta y siete

Treinta y ocho

Treinta y nueve

Cuarenta

Cuarenta y uno

Page 9: Reporte de los programas

Cuarenta y dos

Cuarenta y tres

Cuarenta y cuatro

Cuarenta y cinco

Cuarenta y seis

Cuarenta y siete

Cuarenta y ocho

Cuarenta y nueve

Cincuenta

Cincuenta y uno

Cincuenta y dos

Cincuenta y tres

Cincuenta y cuatro

Cincuenta y cinco

Cincuenta y seis

Cincuenta y siete

Cincuenta y ocho

Cincuenta y nueve

Sesenta

Sesenta y uno

Sesenta y dos

Sesenta y tres

Sesenta y cuatro

Sesenta y cinco

Sesenta y seis

Sesenta y siete

Sesenta y ocho

Sesenta y nueve

Setenta

Setenta y uno

Setenta y dos

Setenta y tres

Setenta y cuatro

Setenta y cinco

Setenta y seis

Setenta y siete

Setenta y ocho

Setenta y nueve

Ochenta

Ochenta y uno

Ochenta y dos

Ochenta y tres

Ochenta y cuatro

Ochenta y cinco

Ochenta y seis

Ochenta y siete

Page 10: Reporte de los programas

Ochenta y ocho

Ochenta y nueve

Noventa

Noventa y uno

Noventa y dos

Noventa y tres

Noventa y cuatro

Noventa y cinco

Noventa y seis

Noventa y siete

Noventa y ocho

Noventa y nueve

Diccionario de Datos

Variable Significado Valor

a Número Entero

Page 11: Reporte de los programas

Prueba de Escritorio

Línea a Pantalla

1 9 Escriba un número:9

2 Nueve

3 42 Escriba un número:42

4 Cuarenta y dos

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

int a;

a=Integer.parseInt(JOptionPane.showInputDialog(null,"INGRESAR NÚMERO"));

if(a>=0&&a<99){

if (a==0){

JOptionPane.showMessageDialog(null,"cero");}

if (a==1){

JOptionPane.showMessageDialog(null,"uno");}

if (a==2){

JOptionPane.showMessageDialog(null,"dos");}

if (a==3){

JOptionPane.showMessageDialog(null,"tres");}

if (a==4){

JOptionPane.showMessageDialog(null,"cuatro");}

if (a==5){

JOptionPane.showMessageDialog(null,"cinco");}

if (a==6){

JOptionPane.showMessageDialog(null,"seis");}

if (a==7){

Page 12: Reporte de los programas

JOptionPane.showMessageDialog(null,"siete");}

if (a==8){

JOptionPane.showMessageDialog(null,"ocho");}

if (a==9){

JOptionPane.showMessageDialog(null,"nueve");}

if (a==10){

JOptionPane.showMessageDialog(null,"diez");}

if (a==11){

JOptionPane.showMessageDialog(null,"once");}

if (a==12){

JOptionPane.showMessageDialog(null,"doce");}

if (a==13){

JOptionPane.showMessageDialog(null,"trece");}

if (a==14){

JOptionPane.showMessageDialog(null,"catorce");}

if (a==15){

JOptionPane.showMessageDialog(null,"quince");}

if (a==16){

JOptionPane.showMessageDialog(null,"dieciseis");}

if (a==17){

JOptionPane.showMessageDialog(null,"diecisiete");}

if (a==18){

JOptionPane.showMessageDialog(null,"dieciocho");}

if (a==19){

JOptionPane.showMessageDialog(null,"diecinueve");}

if (a==20){

Page 13: Reporte de los programas

JOptionPane.showMessageDialog(null,"veinte");}

if (a==21){

JOptionPane.showMessageDialog(null,"veintiuno");}

if (a==22){

JOptionPane.showMessageDialog(null,"veintidos");}

if (a==23){

JOptionPane.showMessageDialog(null,"veintitres");}

if (a==24){

JOptionPane.showMessageDialog(null,"veinticuatro");}

if (a==25){

JOptionPane.showMessageDialog(null,"veinticinco");}

if (a==26){

JOptionPane.showMessageDialog(null,"veintiseis");}

if (a==27){

JOptionPane.showMessageDialog(null,"veintisiete");}

if (a==28){

JOptionPane.showMessageDialog(null,"veintiocho");}

if (a==29){

JOptionPane.showMessageDialog(null,"veintinueve");}

if (a==30){

JOptionPane.showMessageDialog(null,"treinta");}

if (a==31){

JOptionPane.showMessageDialog(null,"treinta y uno");}

if (a==32){

JOptionPane.showMessageDialog(null,"treinta y dos");}

if (a==33){

Page 14: Reporte de los programas

JOptionPane.showMessageDialog(null,"treinta y tres");}

if (a==34){

JOptionPane.showMessageDialog(null,"treinta y cuatro");}

if (a==35){

JOptionPane.showMessageDialog(null,"treinta y cinco");}

if (a==36){

JOptionPane.showMessageDialog(null,"treinta y seis");}

if (a==37){

JOptionPane.showMessageDialog(null,"treinta y siete");}

if (a==38){

JOptionPane.showMessageDialog(null,"treinta y ocho");}

if (a==39){

JOptionPane.showMessageDialog(null,"treinta y nueve");}

if (a==40){

JOptionPane.showMessageDialog(null,"cuarenta");}

if (a==41){

JOptionPane.showMessageDialog(null,"cuatenta y uno");}

if (a==42){

JOptionPane.showMessageDialog(null,"cuatenta y dos");}

if (a==43){

JOptionPane.showMessageDialog(null,"cuatenta y tres");}

if (a==44){

JOptionPane.showMessageDialog(null,"cuatenta y cuatro");}

if (a==45){

JOptionPane.showMessageDialog(null,"cuatenta y cinco");}

if (a==46){

Page 15: Reporte de los programas

JOptionPane.showMessageDialog(null,"cuatenta y seis");}

if (a==47){

JOptionPane.showMessageDialog(null,"cuatenta y siete");}

if (a==48){

JOptionPane.showMessageDialog(null,"cuatenta y ocho");}

if (a==49){

JOptionPane.showMessageDialog(null,"cuatenta y nueve");}

if (a==50){

JOptionPane.showMessageDialog(null,"cincuenta");}

if (a==51){

JOptionPane.showMessageDialog(null,"cincuenta y uno");}

if (a==52){

JOptionPane.showMessageDialog(null,"cincuenta y dos");}

if (a==53){

JOptionPane.showMessageDialog(null,"cincuenta y tres");}

if (a==54){

JOptionPane.showMessageDialog(null,"cincuenta y cuatro");}

if (a==55){

JOptionPane.showMessageDialog(null,"cincuenta y cinco");}

if (a==56){

JOptionPane.showMessageDialog(null,"cincuenta y seis");}

if (a==57){

JOptionPane.showMessageDialog(null,"cincuenta y siete");}

if (a==58){

JOptionPane.showMessageDialog(null,"cincuenta y ocho");}

if (a==59){

Page 16: Reporte de los programas

JOptionPane.showMessageDialog(null,"cincuenta y nueve");}

if (a==60){

JOptionPane.showMessageDialog(null,"sesenta");}

if (a==61){

JOptionPane.showMessageDialog(null,"sesenta y uno");}

if (a==62){

JOptionPane.showMessageDialog(null,"sesenta y dos");}

if (a==63){

JOptionPane.showMessageDialog(null,"sesenta y tres");}

if (a==64){

JOptionPane.showMessageDialog(null,"sesenta y cuatro");}

if (a==65){

JOptionPane.showMessageDialog(null,"sesenta y cinco");}

if (a==66){

JOptionPane.showMessageDialog(null,"sesenta y seis");}

if (a==67){

JOptionPane.showMessageDialog(null,"sesenta y siete");}

if (a==68){

JOptionPane.showMessageDialog(null,"sesenta y ocho");}

if (a==69){

JOptionPane.showMessageDialog(null,"sesenta y nueve");}

if (a==70){

JOptionPane.showMessageDialog(null,"setenta");}

if (a==71){

JOptionPane.showMessageDialog(null,"setenta y uno");}

if (a==72){

Page 17: Reporte de los programas

JOptionPane.showMessageDialog(null,"setenta y dos");}

if (a==73){

JOptionPane.showMessageDialog(null,"setenta y tres");}

if (a==74){

JOptionPane.showMessageDialog(null,"setenta y cuatro");}

if (a==75){

JOptionPane.showMessageDialog(null,"setenta y cinco");}

if (a==76){

JOptionPane.showMessageDialog(null,"setenta y seis");}

if (a==77){

JOptionPane.showMessageDialog(null,"setenta y siete");}

if (a==78){

JOptionPane.showMessageDialog(null,"setenta y ocho");}

if (a==79){

JOptionPane.showMessageDialog(null,"setenta y nueve");}

if (a==80){

JOptionPane.showMessageDialog(null,"ochenta");}

if (a==81){

JOptionPane.showMessageDialog(null,"ochenta y uno");}

if (a==82){

JOptionPane.showMessageDialog(null,"ochenta y dos");}

if (a==83){

JOptionPane.showMessageDialog(null,"ochenta y tres");}

if (a==84){

JOptionPane.showMessageDialog(null,"ochenta y cuatro");}

if (a==85){

Page 18: Reporte de los programas

JOptionPane.showMessageDialog(null,"ochenta y cinco");}

if (a==86){

JOptionPane.showMessageDialog(null,"ochenta y seis");}

if (a==87){

JOptionPane.showMessageDialog(null,"ochenta y siete");}

if (a==98){

JOptionPane.showMessageDialog(null,"ochenta y ocho");}

if (a==89){

JOptionPane.showMessageDialog(null,"ochenta y nueve");}

if (a==90){

JOptionPane.showMessageDialog(null,"noventa");}

if (a==91){

JOptionPane.showMessageDialog(null,"noventa y uno");}

if (a==92){

JOptionPane.showMessageDialog(null,"noventa y dos");}

if (a==93){

JOptionPane.showMessageDialog(null,"noventa y tres");}

if (a==94){

JOptionPane.showMessageDialog(null,"noventa y cuatro");}

if (a==95){

JOptionPane.showMessageDialog(null,"noventa y cinco");}

if (a==96){

JOptionPane.showMessageDialog(null,"noventa y seis");}

if (a==97){

JOptionPane.showMessageDialog(null,"noventa y siete");}

if (a==98){

Page 19: Reporte de los programas

JOptionPane.showMessageDialog(null,"noventa y ocho");}

if (a==99){

JOptionPane.showMessageDialog(null,"noventa y nueve");}

if (a==100){

JOptionPane.showMessageDialog(null,"cien");}

}else{

JOptionPane.showMessageDialog(null,"ERROR");}}}

Depuración

Conclusión

Este problema fue fácil y sencillo ya que únicamente tenia que decir el número escrito, aunque

para nosotros solo se nos ocurrió esta forma, la cual es bastante larga y tediosa. Esto por que se

usaron más de 200 líneas para poder incluir únicamente del cero al noventa y nueva como el

problema lo pedía, concluyendo que esta no seria la mejor forma de hacer este programa.

Page 20: Reporte de los programas

4.-Codificar el siguiente diagrama de flujo, e indique como quedaría el planteamiento del

problema.

Análisis de Datos

Entrada Salida Condiciones

a a if(a<b)

b b if (a<c)

c c if (a<d)

d d if (c>d)

if(b<c)

if (b<d)

if (b<d)

Diccionario de Datos

Variable Significado Valor

a Primer número

Entero

b Segundo número

Entero

c Tercer número

Entero

d Cuarto número

Entero

Page 21: Reporte de los programas

Prueba de Escritorio

Línea a b c d Pantalla

1 1 Escriba un número:1

2 2 Escriba un número:2

3 6 Escriba un número:6

4 9 Escriba un número:9

5 Menor:1

Depuración

Page 22: Reporte de los programas

Conclusión

Este programa fue fácil llevarlo al netbeans ya que el diagrama ya estaba hecho, el cual fue

sencillo y corto. Podemos concluir que pues en realidad podrían existir más formas de resolver

este problema de manera más corta.

5.- 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:

Análisis de datos

Entrada Salida Condiciones

p imc If(imc<16)

a Criterio de Ingreso en hospital If(16<=imc<17)

Infrapeso If(17<=imc<18)

Bajo peso If(18<=imc<25)

Peso normal If(25<=imc<30)

Sobrepeso If(30<=imc<35)

Sobrepeso crónico If(35<=imc<40

Obesidad premorbida If(imc>40

Obesidad mórbida

Diccionario de Datos

Variable Significado Valor

P Peso Float

a Altura Float

Imc Índice de Masa Corporal float

Page 23: Reporte de los programas

Prueba de Escritorio

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

float p,a,imc=0;

p=Float.parseFloat(JOptionPane.showInputDialog(null,"INGRESE SU PESO"));

a=Float.parseFloat(JOptionPane.showInputDialog(null,"INGRESE SU ALTURA"));

Línea p a imc Pantalla

1 67

2 1.63

3 25.21736 Su imc es:25.21736

4 Sobrepeso

Page 24: Reporte de los programas

imc=p/(a*a);

JOptionPane.showMessageDialog(null,"Su IMC es: "+imc);

if(p>0){

if(imc<16){

JOptionPane.showMessageDialog(null,"CRITERIO DE INGRESO EN HOSPITAL");

if(16<=imc&&imc<17){

JOptionPane.showMessageDialog(null,"INFRAPESO");}

if(17<=imc&&imc<18){

JOptionPane.showMessageDialog(null,"BAJO PESO");}

if(18<=imc&&imc<25){

JOptionPane.showMessageDialog(null,"PESO NORMAL");}

if(25<=imc&&imc<30){

JOptionPane.showMessageDialog(null,"SOBREPESO");}

if(30<=imc&&imc<35){

JOptionPane.showMessageDialog(null,"SOBREPESO CRÓNICO");}

if(35<=imc&&imc<40){

JOptionPane.showMessageDialog(null,"OBESIDAD PREMÓRBIDA");}

if(imc>=40){

JOptionPane.showMessageDialog(null,"OBESIDAD MÓRBIDA");}}

else{

JOptionPane.showMessageDialog(null,"Error");}}}

Page 25: Reporte de los programas

Depuración

Conclusión

Este programa es muy útil ya que calcula tu índice de masa corporal con tu peso y altura y te dice

si tienes un peso adecuado. Fue relativamente sencillo, fácil y de manera rápida resolver este

problema ya que únicamente realiza una decisión y te lanza el resultado.

6.- Escribe un programa que lea una temperatura introducida a través del teclado y muestre por

pantalla la actividad más apropiada para dicha temperatura teniendo en cuenta los siguientes

criterios.

Page 26: Reporte de los programas

Análisis de Datos

Entrada Salida Condiciones

a Natación If(a>30)

Tenis If(20<a<=30)

Golf If(10<a<=20)

Esquí If(5<a<=10)

Parchís If(a<=5)

Diccionario de Datos

Variable Significado Valor

a Temperatura Float

Page 27: Reporte de los programas

Prueba de Escritorio

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

float a;

a=Float.parseFloat(JOptionPane.showInputDialog(null,"Escriba la Temperatura"));

if (a>30){

JOptionPane.showMessageDialog(null,"NATACIÓN");}

if(20<a&&a<=30){

JOptionPane.showMessageDialog(null,"TENIS");}

if (10<a&&a<=20){

JOptionPane.showMessageDialog(null,"GOLF");}

if (5<a&&a<=10){

JOptionPane.showMessageDialog(null,"ESQUÍ");}

if (a<=5){

JOptionPane.showMessageDialog(null,"PARCHÍS");}}}

Línea a Pantalla

1 19 Escriba la Temperatura:19

2 Golf

3 3 Escriba la Temperatura:3

4 Parchís

5 38 Escriba la Temperatura:38

6 Natación

Page 28: Reporte de los programas

Depuración

Conclusiones

Podemos concluir que este problema pudo haberse hecho tal vez un poco más corto pero, aun así

sería muy fácil y sencillo resolverlo ya que únicamente al poner una temperatura t lanza como

resultado una actividad física, es decir que no realiza ninguna operación.

7.- Sabemos que la Pascua es el primer domingo tras la primera Luna llena a partir del equinoccio

de primavera, podremos calcular que la fecha de pascua estará entre los días 22 de marzo como

mínimo y el 25 de abril como máximo.

Análisis de Datos

Entrada Salida Condiciones

año año If(fecha>31)

fecha

Page 29: Reporte de los programas

Diccionario de Datos

Variable Significado Valor

Año Año Entero

A Variable de formula de Gauss Entero

B Variable de formula de Gauss Entero

C Variable de formula de Gauss Entero

D Variable de formula de Gauss Entero

E Variable de formula de Gauss Entero

fecha Día de pascua Entero

Page 30: Reporte de los programas

Prueba de Escritorio

Línea año A B C D E fecha Pantalla

1 2005 Introduzca el año:2005

2 10

3 1

4 3

5 7.1333

6 8.8285

7 37.9618

8 6.9618 El día de Pascua del año "2005" es el "06" de marzo

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

int año,A,B,C,D,E,fecha,año2;

año=Integer.parseInt(JOptionPane.showInputDialog(null,"INTRODUZCA EL AÑO"));

A=año%19;

B=año%4;

C=año%7;

D=((19*A)+24)/30;

E=((2*B)+(4*C)+(6*D)+5)/7;

fecha=22+E+D;

año2=365;

if(fecha>31){

fecha=fecha-31;

JOptionPane.showMessageDialog(null,"El día de Pascua del año "+año+" es el "+fecha+" de abril

");}

Page 31: Reporte de los programas

else

JOptionPane.showMessageDialog(null,"El día de Pascua del año "+año+" es el "+fecha+" de

marzo ");}}

Depuración

Conclusiones

Este Problema también fue fácil ya que la formula ya estaba dada en el problema, y solamente

tiene una condición y la resolución de las formulas para poder calcular el día de pascua. El detalle

es que esto no toma en cuenta los años bisiestos y no da exacta la fecha del domingo de pascua.

8.- Escribe un programa que lea tres números día, mes y año que representan una fecha (día, mes

y año) y calcule el día de la semana correspondiente usando la congruencia de Zeller.

Análisis de Datos

Entrada Salida Condiciones

día diasem If(mes<=2)

mes Domingo

año Lunes

Martes

Miércoles

Jueves

Viernes

Sábado

Page 32: Reporte de los programas

Diccionario de Datos

Variable Significado Valor

día Día Entero

mes Mes Entero

año Año Entero

diasem Dia de la semana Entero

a Variable para la fórmula de Zeller

Entero

b Variable para la fórmula de Zeller

Entero

Page 33: Reporte de los programas

Prueba de Escritorio

Línea día mes año a b diasem Pantalla

1 18 Escriba el día:18

2 04 Escriba el mes:04

3 2012 Escriba el año:2012

4 2

5 12

6 2.1344 Miércoles

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

int dia,mes,año,a=0,b=0,diasem;

dia=Integer.parseInt(JOptionPane.showInputDialog(null,"ESCRIBA EL DÍA"));

mes=Integer.parseInt(JOptionPane.showInputDialog(null,"ESCRIBA EL MES"));

año=Integer.parseInt(JOptionPane.showInputDialog(null,"ESCRIBA EL AÑO"));

{ if(mes<=2){

mes=mes+10;

año=año-1;}

else{

mes=mes-2;}

a=año%100;

b=año/100;

diasem=( 700 +(((26 * mes )-2) / 10) +dia +a+a/ 4 +b/ 4 - 2 * b) % 7;

switch(diasem){

Page 34: Reporte de los programas

case 0:

JOptionPane.showMessageDialog(null,"DOMINGO");

break;

case 1:

JOptionPane.showMessageDialog(null,"LUNES");

break;

case 2:

JOptionPane.showMessageDialog(null,"MARTES");

break;

case 3:

JOptionPane.showMessageDialog(null,"MIERCOLES");

break;

case 4:

JOptionPane.showMessageDialog(null,"JUEVES");

break;

case 5:

JOptionPane.showMessageDialog(null,"VIERNES");

break;

case 6:

JOptionPane.showMessageDialog(null,"SABADO");

break; }}}}

Page 35: Reporte de los programas

Depuración

Conclusiones

Este tuvo una complicación de entendimiento, aunque fue relativamente fácil ya que también

tenia la formula ya establecida y únicamente había que condicionar y darle valores a los días de la

semana, aunque no estoy seguro si el resultado de estas formulas son exactas. Sin embargo no

tuvo complejidad alguna.

9.- Determinar e imprima la hipotenusa de un triángulo rectángulo conocidas las longitudes de sus

dos catetos.

Análisis de Datos

Entrada Salida Condiciones

a c

b

Diccionario de Datos

Variable Significado Valor

A Cateto 1 Double

B Cateto 2 Double

c Hipotenusa Double

Page 36: Reporte de los programas

Prueba de Escritorio

Línea a b c Pantalla

1 8 Inserte Valor de Cateto 1:8

2 13 Inserte Valor de Cateto 2:13

3 15.2643 Hipotenusa:15.2643

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

double a,b,c;

a=Integer.parseInt(JOptionPane.showInputDialog(null,"Incerte Valor de Cateto 1"));

b=Integer.parseInt(JOptionPane.showInputDialog(null,"Incerte Valor de Cateto 2"));

c=Math.sqrt((a*a)+(b*b));

JOptionPane.showMessageDialog(null, "Hipotenusa= "+c);}}

Depuración

Page 37: Reporte de los programas

Conclusiones

Este programa seria muy útil en las matemáticas ya que te resuelve la formula de Pitágoras,

aunque únicamente te da el resultado de la hipotenusa. Este programa no tiene dificultad ya que

no tienen ninguna decisión y únicamente se usa la fórmula de Pitágoras.

10.- El número de sonidos emitidos por un grillo en un minuto es una función de la temperatura.

Así, es posible determinar la temperatura haciendo uso de un grillo como termómetro y aplicando

la fórmula: t = N/4 + 40, donde N es el número de sonidos emitidos por el grillo en un minuto.

Necesitamos un programa que estime la temperatura, tomando en cuenta que si el grillo no emite

ningún sonido (es decir, N es cero) no es posible hacer la estimación. Asimismo, tenga en cuenta

que un valor negativo para N es un error.

Análisis de Datos

Entrada Salida Condiciones

N t If(N>0)

Diccionario de Datos

Variable Significado Valor

N Número de sonidos del Grillo en un minuto

Entero

t Temperatura Double

Page 38: Reporte de los programas

Prueba de Escritorio

Línea N t Pantalla

1 89 NÚMERO DE SONIDOS EMITIDOS POR EL GRILLO:89

2 62.25

LA TEMPERATURA ES:

3 214 NÚMERO DE SONIDOS EMITIDOS POR EL GRILLO:214

4 93.5 LA TEMPERATURA ES:

Programa Fuente

public static void main(String[] args) {

// TODO code application logic here

double t=0,N;

N=Integer.parseInt(JOptionPane.showInputDialog(null,"NÚMERO DE SONIDOS EMITIDOS POR

EL GRILLO"));

t=(N/4)+40;

if(N>0){

Page 39: Reporte de los programas

JOptionPane.showMessageDialog(null,"LA TEMPERATURA ES: "+t);

}else

JOptionPane.showMessageDialog(null,"CIFRA NO VÁLIDA ");}}

Depuración

Conclusiones

Este problema no tuvo mucha complejidad ya que esta escrita la formula para calcular la

temperatura, únicamente se tuvo que plasmar en lenguaje java, y te lanza el resultado, y además

solo tendría una única decisión.