SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
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.
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


Entrada                    Salida                Condiciones
ab                         a                     (100>ab>=10)
                           b                     (ab%2==0)
                           (a + b)/2



Diccionario de Datos

Variable          Significado           Valor
ab                Número de 2 cifras    Entero
a                 Primera cifra         Entero
b                 Segunda cifra         Entero
Prueba de Escritorio


                        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


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");

    }}
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.
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
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");

    }}}
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.
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
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
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
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){

        switch(a){

          case 0:

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

        case 1:

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

        case 2:

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

        case 3:

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

        case 4:

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

case 5:

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

case 6:

          JOptionPane.showMessageDialog(null,"seis");break;
case 7:

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

case 8:

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

case 9:

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

case 10:

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

case 11:

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

case 12:

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

case 13:

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

case 14:

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

case 15:

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

case 16:

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

case 17:

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

case 18:

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

case 19:

           JOptionPane.showMessageDialog(null,"diecinueve");break;
case 20:

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

case 21:

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

case 22:

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

case 23:

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

case 24:

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

case 25:

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

case 26:

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

case 27:

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

case 28:

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

case 29:

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

case 30:

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

case 31:

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

case 32:

           JOptionPane.showMessageDialog(null,"treinta y dos");break;
case 33:

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

case 34:

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

case 35:

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

case 36:

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

case 37:

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

case 38:

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

case 39:

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

case 40:

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

case 41:

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

case 42:

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

case 43:

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

case 44:

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

case 45:

           JOptionPane.showMessageDialog(null,"cuatenta y cinco");break;
case 46:

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

case 47:

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

case 48:

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

case 49:

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

case 50:

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

case 51:

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

case 52:

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

case 53:

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

case 54:

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

case 55:

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

case 56:

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

case 57:

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

case 58:

           JOptionPane.showMessageDialog(null,"cincuenta y ocho");break;
case 59:

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

case 60:

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

case 61:

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

case 62:

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

case 63:

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

case 64:

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

case 65:

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

case 66:

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

case 67:

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

case 68:

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

case 69:

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

case 70:

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

case 71:

           JOptionPane.showMessageDialog(null,"setenta y uno");break;
case 72:

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

case 73:

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

case 74:

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

case 75:

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

case 76:

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

case 77:

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

case 78:

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

case 79:

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

case 80:

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

case 81:

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

case 82:

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

case 83:

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

case 84:

           JOptionPane.showMessageDialog(null,"ochenta y cuatro");break;
case 85:

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

case 86:

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

case 87:

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

case 88:

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

case 89:

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

case 90:

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

case 91:

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

case 92:

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

case 93:

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

case 94:

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

case 95:

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

case 96:

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

case 97:

           JOptionPane.showMessageDialog(null,"noventa y siete");break;
case 98:

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

case 99:

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




      }}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.
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         Entero
              número
b             Segundo        Entero
              número
c             Tercer         Entero
              número
d             Cuarto         Entero
              número
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
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
Prueba de Escritorio


Línea                  p                    a             imc                  Pantalla
1                      67
2                                           1.63
3                                                         25.21736             Su imc
                                                                               es:25.21736
4                                                                              Sobrepeso


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"));
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");}}}
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.
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
Prueba de Escritorio


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




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");}}}
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
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
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
");}
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
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   Entero
             Zeller
b            Variable para la fórmula de   Entero
             Zeller
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){
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; }}}}
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
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
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       Entero
               Grillo en un minuto
t              Temperatura                 Double
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){
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.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Práctica dirigida 5to- 2
Práctica dirigida 5to- 2Práctica dirigida 5to- 2
Práctica dirigida 5to- 2
 
Rm 5° 1 b
Rm 5° 1 bRm 5° 1 b
Rm 5° 1 b
 
Planteo de ecuaciones
Planteo de ecuacionesPlanteo de ecuaciones
Planteo de ecuaciones
 
planteo de ecuac
 planteo de ecuac planteo de ecuac
planteo de ecuac
 
EVALUACIÓN DE ENTRADA DE MATEMÁTICA 1º GRADO
EVALUACIÓN DE ENTRADA DE MATEMÁTICA 1º GRADOEVALUACIÓN DE ENTRADA DE MATEMÁTICA 1º GRADO
EVALUACIÓN DE ENTRADA DE MATEMÁTICA 1º GRADO
 
EXAMEN DE CONOCIMIENTOS
EXAMEN DE CONOCIMIENTOSEXAMEN DE CONOCIMIENTOS
EXAMEN DE CONOCIMIENTOS
 
Examen ejercicios matemática octubre
Examen ejercicios matemática octubreExamen ejercicios matemática octubre
Examen ejercicios matemática octubre
 
Boletin 4
Boletin 4Boletin 4
Boletin 4
 
Habilidades matematicas contratos 2012-nacionalistas
Habilidades matematicas contratos 2012-nacionalistasHabilidades matematicas contratos 2012-nacionalistas
Habilidades matematicas contratos 2012-nacionalistas
 
Habilidad Operativa
Habilidad OperativaHabilidad Operativa
Habilidad Operativa
 
Planteo de ecuacione noviembre 2012
Planteo de ecuacione noviembre 2012Planteo de ecuacione noviembre 2012
Planteo de ecuacione noviembre 2012
 
4º ba sico simce matema tica agosto (1)
4º ba sico simce matema tica agosto (1)4º ba sico simce matema tica agosto (1)
4º ba sico simce matema tica agosto (1)
 
planteo de ecuaciones II
planteo de ecuaciones IIplanteo de ecuaciones II
planteo de ecuaciones II
 
Razonamiento Abastracto
Razonamiento AbastractoRazonamiento Abastracto
Razonamiento Abastracto
 
5°5°
 
Desarrollando mis habilidades lógico matemáticas
Desarrollando mis habilidades lógico matemáticasDesarrollando mis habilidades lógico matemáticas
Desarrollando mis habilidades lógico matemáticas
 
Planteo ecuaciones-5
Planteo ecuaciones-5Planteo ecuaciones-5
Planteo ecuaciones-5
 
Vonmatic 1º de prim
Vonmatic   1º de primVonmatic   1º de prim
Vonmatic 1º de prim
 
Semana 1
Semana 1Semana 1
Semana 1
 
Planteo de ecuaciones
Planteo de ecuacionesPlanteo de ecuaciones
Planteo de ecuaciones
 

Destacado

Destacado (8)

API Java
API JavaAPI Java
API Java
 
Programa 5
Programa 5Programa 5
Programa 5
 
Math Programación
Math ProgramaciónMath Programación
Math Programación
 
Math programación
Math programaciónMath programación
Math programación
 
Los números (2ª parte)
Los números (2ª parte)Los números (2ª parte)
Los números (2ª parte)
 
El Nombre De Los NúMeros
El Nombre De Los NúMerosEl Nombre De Los NúMeros
El Nombre De Los NúMeros
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Números 0-99
Números 0-99Números 0-99
Números 0-99
 

Similar a Programas definitivo

Números naturales
Números naturalesNúmeros naturales
Números naturalesm23rm
 
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdf
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdfMATEMÁTICA - 5TO GRADO - UNIDAD 3.pdf
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdfleticialara10
 
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...Xiib Eve
 
Ortografia numeros
Ortografia numerosOrtografia numeros
Ortografia numerosSEV
 
1 Números reales practica calificada .pdf
1 Números reales practica calificada .pdf1 Números reales practica calificada .pdf
1 Números reales practica calificada .pdfMargotGomez2
 
5to. año arit- guia 4 -numeración i
5to. año   arit- guia 4 -numeración i5to. año   arit- guia 4 -numeración i
5to. año arit- guia 4 -numeración iandres cuellar
 
Conteo de Numeros cuarto de secundaria
Conteo de Numeros cuarto de secundariaConteo de Numeros cuarto de secundaria
Conteo de Numeros cuarto de secundarialuiscancer
 
Conteo de números cuarto de secunadaria
Conteo de números cuarto de secunadariaConteo de números cuarto de secunadaria
Conteo de números cuarto de secunadarialuiscancer
 
Gema 1000 - Los Números Reales
Gema 1000 - Los Números RealesGema 1000 - Los Números Reales
Gema 1000 - Los Números RealesAngel Carreras
 
Clase integrada matematicas
Clase integrada matematicasClase integrada matematicas
Clase integrada matematicasmariovellojin
 

Similar a Programas definitivo (20)

Números naturales
Números naturalesNúmeros naturales
Números naturales
 
Conteo numeros-13
Conteo numeros-13Conteo numeros-13
Conteo numeros-13
 
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdf
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdfMATEMÁTICA - 5TO GRADO - UNIDAD 3.pdf
MATEMÁTICA - 5TO GRADO - UNIDAD 3.pdf
 
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...
Código python para saber cuántos dígitos hay a la izquierda y a la derecha de...
 
Decimales u7.
Decimales u7.Decimales u7.
Decimales u7.
 
Decimales u7.
Decimales u7.Decimales u7.
Decimales u7.
 
Ortografia numeros
Ortografia numerosOrtografia numeros
Ortografia numeros
 
1 Números reales practica calificada .pdf
1 Números reales practica calificada .pdf1 Números reales practica calificada .pdf
1 Números reales practica calificada .pdf
 
5to. año arit- guia 4 -numeración i
5to. año   arit- guia 4 -numeración i5to. año   arit- guia 4 -numeración i
5to. año arit- guia 4 -numeración i
 
Tema1,1
Tema1,1Tema1,1
Tema1,1
 
Tema1,1
Tema1,1Tema1,1
Tema1,1
 
Tema1,1
Tema1,1Tema1,1
Tema1,1
 
Conteo de Numeros cuarto de secundaria
Conteo de Numeros cuarto de secundariaConteo de Numeros cuarto de secundaria
Conteo de Numeros cuarto de secundaria
 
Conteo de números cuarto de secunadaria
Conteo de números cuarto de secunadariaConteo de números cuarto de secunadaria
Conteo de números cuarto de secunadaria
 
Gema 1000 - Los Números Reales
Gema 1000 - Los Números RealesGema 1000 - Los Números Reales
Gema 1000 - Los Números Reales
 
Tema 1, 1 laura
Tema 1, 1 lauraTema 1, 1 laura
Tema 1, 1 laura
 
Tema 1, 1 laura
Tema 1, 1 lauraTema 1, 1 laura
Tema 1, 1 laura
 
Tema 1, 1 laura
Tema 1, 1 lauraTema 1, 1 laura
Tema 1, 1 laura
 
Tema 1, 1 laura
Tema 1, 1 lauraTema 1, 1 laura
Tema 1, 1 laura
 
Clase integrada matematicas
Clase integrada matematicasClase integrada matematicas
Clase integrada matematicas
 

Programas definitivo

  • 1. 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.
  • 2. 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 Entrada Salida Condiciones ab a (100>ab>=10) b (ab%2==0) (a + b)/2 Diccionario de Datos Variable Significado Valor ab Número de 2 cifras Entero a Primera cifra Entero b Segunda cifra Entero
  • 3. Prueba de Escritorio 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 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"); }}
  • 4. 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.
  • 5. 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
  • 6. 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"); }}}
  • 7. 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.
  • 8. 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
  • 9. 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
  • 10. 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
  • 11. 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){ switch(a){ case 0: JOptionPane.showMessageDialog(null,"cero");break; case 1: JOptionPane.showMessageDialog(null,"uno");break; case 2: JOptionPane.showMessageDialog(null,"dos");break; case 3: JOptionPane.showMessageDialog(null,"tres");break; case 4: JOptionPane.showMessageDialog(null,"cuatro");break; case 5: JOptionPane.showMessageDialog(null,"cinco");break; case 6: JOptionPane.showMessageDialog(null,"seis");break;
  • 12. case 7: JOptionPane.showMessageDialog(null,"siete");break; case 8: JOptionPane.showMessageDialog(null,"ocho");break; case 9: JOptionPane.showMessageDialog(null,"nueve");break; case 10: JOptionPane.showMessageDialog(null,"diez");break; case 11: JOptionPane.showMessageDialog(null,"once");break; case 12: JOptionPane.showMessageDialog(null,"doce");break; case 13: JOptionPane.showMessageDialog(null,"trece");break; case 14: JOptionPane.showMessageDialog(null,"catorce");break; case 15: JOptionPane.showMessageDialog(null,"quince");break; case 16: JOptionPane.showMessageDialog(null,"dieciseis");break; case 17: JOptionPane.showMessageDialog(null,"diecisiete");break; case 18: JOptionPane.showMessageDialog(null,"dieciocho");break; case 19: JOptionPane.showMessageDialog(null,"diecinueve");break;
  • 13. case 20: JOptionPane.showMessageDialog(null,"veinte");break; case 21: JOptionPane.showMessageDialog(null,"veintiuno");break; case 22: JOptionPane.showMessageDialog(null,"veintidos");break; case 23: JOptionPane.showMessageDialog(null,"veintitres");break; case 24: JOptionPane.showMessageDialog(null,"veinticuatro");break; case 25: JOptionPane.showMessageDialog(null,"veinticinco");break; case 26: JOptionPane.showMessageDialog(null,"veintiseis");break; case 27: JOptionPane.showMessageDialog(null,"veintisiete");break; case 28: JOptionPane.showMessageDialog(null,"veintiocho");break; case 29: JOptionPane.showMessageDialog(null,"veintinueve");break; case 30: JOptionPane.showMessageDialog(null,"treinta");break; case 31: JOptionPane.showMessageDialog(null,"treinta y uno");break; case 32: JOptionPane.showMessageDialog(null,"treinta y dos");break;
  • 14. case 33: JOptionPane.showMessageDialog(null,"treinta y tres");break; case 34: JOptionPane.showMessageDialog(null,"treinta y cuatro");break; case 35: JOptionPane.showMessageDialog(null,"treinta y cinco");break; case 36: JOptionPane.showMessageDialog(null,"treinta y seis");break; case 37: JOptionPane.showMessageDialog(null,"treinta y siete");break; case 38: JOptionPane.showMessageDialog(null,"treinta y ocho");break; case 39: JOptionPane.showMessageDialog(null,"treinta y nueve");break; case 40: JOptionPane.showMessageDialog(null,"cuarenta");break; case 41: JOptionPane.showMessageDialog(null,"cuatenta y uno");break; case 42: JOptionPane.showMessageDialog(null,"cuatenta y dos");break; case 43: JOptionPane.showMessageDialog(null,"cuatenta y tres");break; case 44: JOptionPane.showMessageDialog(null,"cuatenta y cuatro");break; case 45: JOptionPane.showMessageDialog(null,"cuatenta y cinco");break;
  • 15. case 46: JOptionPane.showMessageDialog(null,"cuatenta y seis");break; case 47: JOptionPane.showMessageDialog(null,"cuatenta y siete");break; case 48: JOptionPane.showMessageDialog(null,"cuatenta y ocho");break; case 49: JOptionPane.showMessageDialog(null,"cuatenta y nueve");break; case 50: JOptionPane.showMessageDialog(null,"cincuenta");break; case 51: JOptionPane.showMessageDialog(null,"cincuenta y uno");break; case 52: JOptionPane.showMessageDialog(null,"cincuenta y dos");break; case 53: JOptionPane.showMessageDialog(null,"cincuenta y tres");break; case 54: JOptionPane.showMessageDialog(null,"cincuenta y cuatro");break; case 55: JOptionPane.showMessageDialog(null,"cincuenta y cinco");break; case 56: JOptionPane.showMessageDialog(null,"cincuenta y seis");break; case 57: JOptionPane.showMessageDialog(null,"cincuenta y siete");break; case 58: JOptionPane.showMessageDialog(null,"cincuenta y ocho");break;
  • 16. case 59: JOptionPane.showMessageDialog(null,"cincuenta y nueve");break; case 60: JOptionPane.showMessageDialog(null,"sesenta");break; case 61: JOptionPane.showMessageDialog(null,"sesenta y uno");break; case 62: JOptionPane.showMessageDialog(null,"sesenta y dos");break; case 63: JOptionPane.showMessageDialog(null,"sesenta y tres");break; case 64: JOptionPane.showMessageDialog(null,"sesenta y cuatro");break; case 65: JOptionPane.showMessageDialog(null,"sesenta y cinco");break; case 66: JOptionPane.showMessageDialog(null,"sesenta y seis");break; case 67: JOptionPane.showMessageDialog(null,"sesenta y siete");break; case 68: JOptionPane.showMessageDialog(null,"sesenta y ocho");break; case 69: JOptionPane.showMessageDialog(null,"sesenta y nueve");break; case 70: JOptionPane.showMessageDialog(null,"setenta");break; case 71: JOptionPane.showMessageDialog(null,"setenta y uno");break;
  • 17. case 72: JOptionPane.showMessageDialog(null,"setenta y dos");break; case 73: JOptionPane.showMessageDialog(null,"setenta y tres");break; case 74: JOptionPane.showMessageDialog(null,"setenta y cuatro");break; case 75: JOptionPane.showMessageDialog(null,"setenta y cinco");break; case 76: JOptionPane.showMessageDialog(null,"setenta y seis");break; case 77: JOptionPane.showMessageDialog(null,"setenta y siete");break; case 78: JOptionPane.showMessageDialog(null,"setenta y ocho");break; case 79: JOptionPane.showMessageDialog(null,"setenta y nueve");break; case 80: JOptionPane.showMessageDialog(null,"ochenta");break; case 81: JOptionPane.showMessageDialog(null,"ochenta y uno");break; case 82: JOptionPane.showMessageDialog(null,"ochenta y dos");break; case 83: JOptionPane.showMessageDialog(null,"ochenta y tres");break; case 84: JOptionPane.showMessageDialog(null,"ochenta y cuatro");break;
  • 18. case 85: JOptionPane.showMessageDialog(null,"ochenta y cinco");break; case 86: JOptionPane.showMessageDialog(null,"ochenta y seis");break; case 87: JOptionPane.showMessageDialog(null,"ochenta y siete");break; case 88: JOptionPane.showMessageDialog(null,"ochenta y ocho");break; case 89: JOptionPane.showMessageDialog(null,"ochenta y nueve");break; case 90: JOptionPane.showMessageDialog(null,"noventa");break; case 91: JOptionPane.showMessageDialog(null,"noventa y uno");break; case 92: JOptionPane.showMessageDialog(null,"noventa y dos");break; case 93: JOptionPane.showMessageDialog(null,"noventa y tres");break; case 94: JOptionPane.showMessageDialog(null,"noventa y cuatro");break; case 95: JOptionPane.showMessageDialog(null,"noventa y cinco");break; case 96: JOptionPane.showMessageDialog(null,"noventa y seis");break; case 97: JOptionPane.showMessageDialog(null,"noventa y siete");break;
  • 19. case 98: JOptionPane.showMessageDialog(null,"noventa y ocho");break; case 99: JOptionPane.showMessageDialog(null,"noventa y nueve");break; }}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.
  • 20. 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 Entero número b Segundo Entero número c Tercer Entero número d Cuarto Entero número
  • 21. 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
  • 22. 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
  • 23. Prueba de Escritorio Línea p a imc Pantalla 1 67 2 1.63 3 25.21736 Su imc es:25.21736 4 Sobrepeso 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"));
  • 24. 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");}}}
  • 25. 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.
  • 26. 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
  • 27. Prueba de Escritorio 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 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");}}}
  • 28. 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
  • 29. 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
  • 30. 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 ");}
  • 31. 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
  • 32. 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 Entero Zeller b Variable para la fórmula de Entero Zeller
  • 33. 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){
  • 34. 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; }}}}
  • 35. 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
  • 36. 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
  • 37. 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 Entero Grillo en un minuto t Temperatura Double
  • 38. 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){
  • 39. 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.