Algoritmo y Estructura de Datos I

Slides:



Advertisements
Presentaciones similares
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 13 - Programación.
Advertisements

Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (4ta Semana) Lunes 28 de Agosto del 2006 Juan José Montero Román.
Sentencias Repetitivas y Condicionales en C++
1.5 Algoritmos, Pseudocódigo y Diagramas de Flujo
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 6 - Uso de estructuras.
Programación de sitios Web con PHP
M 2 SD Arbórea. De que se trata? M 2 SD Arbórea.
CS1101X Programming Methodology
¿CÓMO LLEGAR? Desde el aeropuerto El Dorado o desde la Terminal de Transporte: Tomar rutas de buses públicos que recorren la avenida El Dorado de occidente.
Principios y Herramientas de Programación
Introducción a la Computación
Juan José Montero Román.
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 15 - Archivos.
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (14va Semana) Lunes 11 de Junio Ing. Juan José Montero Román.
Introducción a la Computación
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 8.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Juan José Montero Román. Sesión 6.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 12 - Introducción.
Introducción a la Computación (IC)
Algoritmo y Estructura de Datos I
Introducción a la Computación (7ma Semana) Lunes 16 de Abril del 2007
Introducción a la Computación (IC) I Facultad de Ingeniería y Arquitectura Juan José Montero Román.
Introducción a la Computación
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2007 – I (11va Semana) Lunes 14 de Mayo Ing. Juan José Montero Román.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 11.
Algoritmo y Estructura de Datos I
Introducción a la Computación (8va Semana) Lunes 23 de Abril del 2007
Introducción a la Computación (IC)
Algoritmo y Estructura de Datos I
Algoritmo y Estructura de Datos I
INTRODUCCIÓN A LA COMPUTACIÓN 14va Semana – 24va Sesión Miércoles 01 de Junio del 2005 Juan José Montero Román
INTRODUCCIÓN A LA COMPUTACIÓN
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 3.
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (8va Semana) Lunes 25 de Setiembre del 2006 Juan José Montero Román.
Facultad de Ingeniería y Arquitectura Introducción a la Computación 2006 – II (7ma Semana) Lunes 18 de Setiembre del 2006 Juan José Montero Román.
Arreglos: Vectores en JAVA
Estructuras de repetición
Fundamentos de Programación
CORPOCIDES Ing. Emilio Medina Baquero
ESTRUCTURAS REPETITIVAS CICLOS O BUCLES EL MIENTRAS Y EL PARA
Estructuras de Control de Repetición
ESTRUCTURAS ITERATIVAS
INTRODUCCIÓN A LA COMPUTACIÓN
Estructuras de Control Iterativas
INTRODUCCIÓN A LA COMPUTACIÓN 12va Semana – 19va Sesión Miércoles 18 de Mayo del 2005 Juan José Montero Román
Introducción a la Computación
Estructuras de Iteracion (Repetitivas ) while , for,, do-while
INTRODUCCIÓN A LA COMPUTACIÓN 13va Semana – 21va Sesión Miércoles 25 de Mayo del 2005 Juan José Montero Román
INTRODUCCIÓN A LA COMPUTACIÓN 8va Semana – 15va Sesión Miércoles 20 de Abril del 2005 Juan José Montero Román
Control de flujo: Bucles
Pertinencia de la enseñanza del cómputo paralelo en el currículo de las ingenierías. Proyecto PAPIME PE
INTRODUCCIÓN A LA COMPUTACIÓN
INTRODUCCIÓN A LA COMPUTACIÓN
Para ubicar el material de apoyo para SU CURSO Paso a paso.
REPETITIVAS (CÍCLICAS)
Estructuras de Repetición (Hacer-Mientras)
Estructuras de control Resolución de problemas y algoritmos.
Estructuras de Repetición (Hacer-Mientras)
INTRODUCCIÓN AL LENGUAJE C++. Instrucciones Temas.
Ciclos condicionales y exactos Estructura de control de ciclos
Estructuras Repetitivas Estructuras Repetitivas
Estructuras de control repetitivas
Datos y Cifras Curso
Datos y Cifras Curso
REPRESENTAMOS NÚMERO DE SEIS CIFRAS Prof. Juan Tuestas.
Sesión 3.
CICLOS. OPERADOR DE ASIGNACION COMPUESTA CICLO WHILE.
Transcripción de la presentación:

Algoritmo y Estructura de Datos I Facultad de Ingeniería y Arquitectura Algoritmo y Estructura de Datos I 2006 - I Sesión 5 - Estructuras de Repetición Juan José Montero Román. jmonteror@usmp.edu.pe

Estructuras de Repetición Estructura do..while Sintaxis do{ accion1; accion2; } while(condición) Se usa la sentencia do..while para hacer validación de entrada de datos.

Estructuras de Repetición Estructura do..while Ejemplo Se necesita ingresar un número de 3 cifras: int n; do{ n= LE.leerInt(“ingrese numero de 3 cifras”); }while ( ! (n>=100 && n<=999));

Estructuras de Repetición Estructura do..while Ejemplo Se necesita ingresar sexo (F/M): char sexo; do{ sexo= LE.leerChar(“ingrese sexo [F/M]”); }while ( sexo!=‘F’ && sexo!=‘M’));

Estructuras de Repetición Estructura do..while Ejemplo Repetición de la ejecución del programa public static void main(String args[]){ int op; do{ // todo el programa …… //………………………. op=LE.leerInt(“Desea continuar [S=1/N=0]”); }while ( op==1); }

Estructuras de Repetición Estructura while Sintaxis while(condición){ accion1; accion2; .. } La estructura while repite una acción o un conjunto de acciones mientras sea verdadera una determinada condición, para lo cual primero verifica la condición y luego ejecuta la acción. La acción puede ser una acción simple o una acción compuesta (bloque de acciones encerradas en llaves).

Estructuras de Repetición Uso de contadores y acumuladores Sintaxis int c=0; // contador int suma=0; //acumulador de suma de enteros Los contadores son variables del tipo entero cuya función es la de contar. Los acumuladores son variables que almacenan sumas o productos. El tipo de variable depende del tipo del cual se esta acumulando. Los acumuladores de suma se inicializan en cero. Los acumuladores de producto se inicializan en uno.

Estructuras de Repetición Uso de menú

Estructuras de Repetición Estructura for Sintaxis for ( inicialización; condición; incremento/decremento) { accion1; accion2; } La estructura de repetición for contempla todos los elementos de la repetición controlada por contador (repetición en la que se conoce el número de veces que se repetirá el cuerpo del bucle) al incluir al contador como parte de la propia estructura.

Estructuras de Repetición Estructura lógica para el manejo de errores Sintaxis try{ Sentencias; } catch(Exception e){ Sentencia para visualizar el error; //Opcional

Exception : Cualquier tipo de error Existen varios tipos de errores los comunes son: Exception : Cualquier tipo de error ArithmeticException : Las excepciones aritméticas son típicamente el resultado de división por 0: NullPointerException: Se produce cuando se intenta acceder a una variable o método antes de ser definido ClassCastException: El intento de convertir un objeto a otra clase que no es válida. ArrayIndexOutOfBoundsException: Es la excepción que más frecuentemente se produce. Se genera al intentar acceder a un elemento de un array más allá de los límites definidos inicialmente para ese array. etc…

Ejercicio Diseñe un programa que reciba 10 números enteros y determine cuanto números neutros , negativos y positivos hay

package domapli; import biblioteca.*; public class Prg1 { public static void main(String[] args) { //Declaracion de variables int n; int c=0,npos=0,nneg=0,nneu=0; // contadores //Ingreso de datos y Proceso de calculo while(c<10){ n=LE.leerInt("Ingrese numero"); if(n==0) nneu++; else if(n<0) nneg++; npos++; c++; } //Visualizacion de resultados LE.mostrarInformacion("Los numero neutros son: "+ nneu); LE.mostrarInformacion ("Los numero negativos son: "+ nneg); LE.mostrarInformacion ("Los numero positivos son: "+ npos);

Ejercicio Diseñe un programa que 6 notas y muestra las suma y el promedio de ellas.

Ejercicio Diseñe un programa que lea un número y lo convierta a binario (*) El programa debe tener un menú de opciones

Diseñe un programa que lea un texto y lo muestre al revés Ejercicio Diseñe un programa que lea un texto y lo muestre al revés

Ejercicio Diseñe un juego para adivinar el numero generado por el computador, se seguirá pidiendo el numero hasta que numero ingresado sea mayor del que genero el computador.

import biblioteca.*; public class Prg3 { public static void main(String[] args) { //Declaracion de variables int numMaq, numHombre=0, num; //Ingreso de datos numMaq = (int) (Math.random ()* 100); LE.mostrarInformacion("Adivina el número que pense"); do { num = Lectura.leerInt("Dame un número"); numHombre += num; } while (numMaq > numHombre); //Proceso de calculo y visualizacion if (numMaq == numHombre) LE.mostrarInformacion ("Ganaste"); else LE.mostrarInformacion("Perdiste"); LE.mostrarInformacion("El numero que pensé era: " + numMaq); }

Ejercicio Diseñe un programa que reciba los datos de 5 alumnos (nombre y sexo) y muestre la cantidad de mujeres y hombres que hay . Utilice un menú de opciones.

Ejercicio Diseñe un programa para calcular la suma e imprimir de N términos de la siguiente serie S = 1- 2 + 3- 4 + 5- 6...........

package domapli; import biblioteca.*; public class Prg5 { public static void main(String[] args) { int n, s=0; String serie=""; n=LE.leerInt("Ingrese n"); for (int i=1;i<=n; i++) if (i==1){ s=s+i; serie+=i; } else{ if(i%2==0){ s=s-i; serie+="-" + i; serie+="+" +i; LE.mostrarInformacion(serie); LE.mostrarInformacion ("La suma de la serie es:"+s);

Diseñe un programa que imprima lo siguiente Ejercicio Diseñe un programa que imprima lo siguiente % %% %%% %%%% %%%%% %%%%%% %%%%%%%

Ejercicio Diseñe un programa que lea Nombre y edad de 5 alumnos y calcule la edad promedio, así como también la mayor edad

Ejercicio Diseñe un programa para hallar la suma de N términos de la siguiente serie: 1 + 1/32 + 1/52 + 1/72 + 1/92 +....

Diseñe un programa que lea un texto y halle: Ejercicio Diseñe un programa que lea un texto y halle: Cantidad de vocales Cantidad de consonantes Cantidad de espacios en blanco

Ejercicio Diseñe un programa que genere éste grafico ******* * *

Ejercicio Diseñe un programa para hallar la suma de dos enteros. Utilice la estructura de manejo de errores

package domapli; import biblioteca.*; public class Prg8 { public static void main(String[] args) { int n,d; double p=0; //Ingreso de datos n=LE.leerInt("ingrese numerador"); d=LE.leerInt("ingrese denominador"); try{ p=n/d; LE.mostrarInformacion("La división es:"+ p); } catch(ArithmeticException e){ LE.mostrarInformacion ("No se realizo la division"); LE.mostrarInformacion ("Ocurrio el error :"+ e);

Ejercicio FIN