Está en la página 1de 8

Media Tcnica de desarrollo de software Gua No.

2 Grado 10 Modulo Pensamiento Lgico - Matemtico Tema: Ciclo if, ciclo para Estudiante:_____________________________________Fecha:__/___/___Nota:_______ Objetivos: Crear paquetes en Java Practicar el ciclo si, para basico en java Introduccion al manejo bsico de la herencia Manejar el control JOptionPane.showInputDialog Definicion de variables en java (String, int) Manejo de metodos Manejo basico del IDE Ejercicio 1.1 Escriba una solucion objetual que permita tomar de 1 persona tomar el numero de Pulsaciones pon un lapso de tiempo en segundos de acuerdo a la edd y sexo De acuerdo a la siguiente Fomula Si es mujer Numero de pulsaciones =(220-edad)/numero segundos Si es hombre Numero de pulsaciones =(210-edad)/numero segundos 1.2 Realizar la misma solucion para el items 1.1 para n personas Tabla de requerimientos Ientificacion Descripcion R1(s) Ingresar sexo, edad, numero de segundos R2(s) Mostrar numero de pulsaciones de una persona

Tabla de requerimientos Ientificacion R1(s) Descripcion Pedir el tiempo en segundos, el sexo, y la edad Mostrar el numero de pulsaciones por una persona Entradas Numero de segundos Sexo y edad R1 Resultados Lo datos son almacenados en la memoria. Mostrar el numero de pulsaciones por persona , promedio de edades, y pulsaciones

R2(s)

_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

Diagrama de clases

Responsabilidades de las Clases C.1 Contratos de la clase MostrarCalculo C.2 Responsabilidadews de la clase Calcular() El contrato de las clases Mtodo Requerim ientos Asociados R1 Pre-Condicion Post-Condicion Modelo Verbal

Principal()

No hay datos

Se conoce el numero de personas, Se conoce el sexo Edad , el tiempo en segundos

Inicio 1.Definicin Variables 2.Leer(n) 3.para(i = 1 hasta n) 4. leer sexo haga 5. Leer edad 6.Leer Tiempo

_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

Calculo() MostrarCalculo()

R1

Se conoce sexo, edad, tiempo en segundos

Calcular el numero de pulsaciones por segundos sumara

7. Si Sexo=Mujer 8.Aplicar una formula 9.si no 10. Aplicar otra formula 11.Fin si 12. Cal npulsacionaes 13.Imp(numpulsaciones) 14 .Sumar edades 15 .Sumar np 16.Fin para i 17.Sacar promedio edades 18.Sacar promedio np 19.Imprimir resultados 20.Termine.

SeudoCodigo: Clase Calcular Paquete CalcularPresion; publico clase Calcular { privado entero ts,ed,ps ; privado cadena sex =""; publico Calcular( ){ } public vacio ps(entero ts,entero ed, cadena sex) si (sex=="masculino") este.ps = (210-ed)/ts; sino if (sex==("femenino")) este.ps = (220-ed)/ts; sino este.ps=0; fin si fin si fin_metodo fin_clase ps

paquete CalcularPresion; publico clase MostrarCalculo { publico estatico vacio principal( cadena argumentos[ ] ) Cadena StrSex, Stredad, StrTs; Calcular numPulsaciones; numPulsaciones = new Calcular(); entero edad, ts, n, np, sumae=0, sumaps =0, real prome, promps; n= entero.convertir( "Ingrese Numero de personas" ); para entero i = 1 hasta n haga StrSex = Leer.cadena ( "Ingrese sexo(masculino o femenino)"+ i ); Stredad = Leer( "Ingrese la edad ); StrTs = Leer( "Tiempo en segundos" );
_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

edad = Entero.convertir( Stredad ); ts = Entero.convertir( StrTs ); numPulsaciones.ps(ts,edad,StrSex); np = numPulsaciones.obtenNpulsaciones(); Mostrar( "Numero de pulsaciones : " + np, "Por segundos.."); sumae += edad; sumaps += np; fin_para prome =sumae/n; promps= sumaps/n; Mostrar( "Promedio de edades : " +prome,"Numero de personas :"+n); Mostrar(Promedio Nmero de pulsaciones : " +promps,"Numero de personas :"+n ); fin_principal fin_clase

Ahora vamos a crea un nuevo Proyecto

Agregamos Nuestra primera Clase

Le colocamos el nombre de : Calcular Digitamos lo siguiente: package CalcularPresion; public class Calcular { private int ts,ed,ps ; private String sex =""; public Calcular(){ } public void ps(int ts,int ed, String sex) { if (sex.equals("masculino")) this.ps = (210-ed)/ts; else if(sex.equals("femenino"))
_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

this.ps = (220-ed)/ts; else this.ps=0; } public int obtenNpulsaciones() { return ps; } } Nota: en el ciclo if no es nesario abrir y cerrar corchetes cuan hay que realizar una accion o sentencia. En caso contrario seria If(condicion){ acciones; } else { aciones;} Compilamos el archivo , y corregir errores de la siguiente Manera:

Ahora creamos nuestra segunda Clase MostrarCalculo package CalcularPresion; import javax.swing.JOptionPane; // importa la clase JOptionPane public class MostrarCalculoN { public static void main( String args[] ) { String StrSex, Stredad, StrTs; //tiempo segundos Calcular numPulsaciones; numPulsaciones = new Calcular(); int edad, // primer nmero a sumar ts, // tiempo en segundos n, // n personas np; //numero de pulsaciones int sumae=0,//suma de edades sumaps =0;// suma presiones de las persona double prome,// promedio de edades promps; // promedio de presiones n= Integer.parseInt(JOptionPane.showInputDialog( "Ingrese Numero de personas" )); // lee el primer nmero del usuario como una cadena for(int i =0;i<n;i++) { StrSex = JOptionPane.showInputDialog( "Ingrese sexo(masculino o femenino)"+ i ); /*lee el segundo nmero del usuario como una cadena*/ Stredad = JOptionPane.showInputDialog( "Ingrese la edad"+i );
_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

StrTs = JOptionPane.showInputDialog( "Tiempo en segundos"+i ); // convierte los nmeros del tipo String a tipo int edad = Integer.parseInt( Stredad ); ts = Integer.parseInt( StrTs ); numPulsaciones.ps(ts,edad,StrSex); np = numPulsaciones.obtenNpulsaciones(); // despliega los resultados JOptionPane.showMessageDialog(null, "Numero de pulsaciones : " + np, "Por segundos..", JOptionPane.PLAIN_MESSAGE ); sumae += edad; sumaps += np; }/* cierra ciclo for*/ prome =sumae/n; promps= sumaps/n; JOptionPane.showMessageDialog(null, "Promedio de edades : " +prome,"Numero de personas :"+n, JOptionPane.PLAIN_MESSAGE ); JOptionPane.showMessageDialog(null, "Promedio Nmero de pulsaciones : " +promps,"Numero de personas :"+n, JOptionPane.PLAIN_MESSAGE ); System.exit(0); } /* end main*/ } /* fin de la clase Suma*/

Ahora vamos e Ejecutar La clase que tiene el El metodo Principal() en este caso de java Main() la cual posee la clase MostrarDatos as:

Probamos Ingresando datos

_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

Actividades: Haga algunas pruebas de resultados Realice una solucion que permita sacar promedio individuales para cada sexo

_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/

Bibliografia Lgica de programacin Orientada a Objetos: Un enfoque Basado en problemas pg. 277

Botero Tabares, Ricardo y otros Medellin 209 Java 2 Interfaces graficas y aplicaciones para internet Ceballos Fco. Javier Mexico 2005 Piensa en Java 2da Edicion. Pag 906 Eckel, Bruce. Madrid 2002

_______________________________________________________________________________________________________________ Por Juan Carlos Prez P. versin 1.0 de 2010 Sitio web http://200.75.77.34/