Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 5
Clase 5
CLASE NO. 6
Ciclos While y do while
Estructuras de Repeticin
Ciclo while:
Java
while( condicion)
{ instruccin 1;
instruccin 1
instruccin 2
.
Fin mientras
instruccin 2;
EISC
Universidad del Valle
Slide 2
while
while (condiccin) {
sentencias;
}
A diferencia de un for, un while solo tiene una
expresin que representa el hasta cuando?
EISC
Universidad del Valle
Slide 3
Ciclos - While
Mientras que el dato
sea menor a cero
int dato=-1;
while(dato<0){
String aux=JOptionPane.showInputDialog(digite un numero:);
dato = Integer.parseInt(aux);
EISC
Universidad del Valle
Slide 4
Ciclos - While
int suma=0;
int i, n;
i=1;
n=100;
while(i<n)
{
suma=suma+i;
i++;
}
EISC
Universidad del Valle
Slide 5
Ciclos - While
int suma=0;
int i, n;
i=1;
n=100;
while(i<n)
{
suma=suma+i;
i++;
}
Desde 1
Hasta n
De uno en uno
EISC
Universidad del Valle
Slide 6
Estructuras de Repeticin
Ciclo while
Ejemplo:
Nmero
Iteracin
Valor variable
a
Valor variable
c
12
Se interrumpe
EISC
Universidad del Valle
Slide 7
Estructuras de Repeticin
Ciclo while
Ejemplo:
int a=9, b=7, c=3;
while (a<c){
c = c *2;
a = a + 1;
}
Nmero
Iteracin
0
Valor variable
a
Valor variable
c
Se interrumpe
EISC
Universidad del Valle
Slide 8
Estructuras de Repeticin
Ciclo while
EISC
Universidad del Valle
Slide 9
Estructuras de Repeticin
Ciclo while - Ejercicio
Diagrama de Clases
Asignatura
UsaAsignatura
Usa
main()
numAprobados
numReprobados
promedioCalificaciones
determinarEstadisticas()
Usa
Usa
System
JOptionPane
exit()
showInputDialog()
showMessageDialog()
EISC
Universidad del Valle
Slide 10
Estructuras de Repeticin
Ciclo while Ejercicio: Algoritmos de la clase Asignatura.
public void determinarEstadisticas()
Inicio
leer(nota);
Mientras nota>0 Haga
Si (nota>3){
numAprobados = numAprobados +1;
}
Si no{
numReprobados = numReprobados + 1;
}
promedioCalificaciones = promedioCalificaciones + nota;
leer(nota);
Fin mientras
promedioCalificaciones = promedioCalificaciones / (numAprobados + numReprobados );
mostrar(numAprobados);
mostrar(numReprobados);
mostrar(promedioCalificaciones);
Fin
EISC
Universidad del Valle
Slide 11
Estructuras de Repeticin
Ciclo while - Ejercicio
public class Asignatura {
int numAprobados;
int numReprobados;
double promedioCalificaciones;
promedioCalificaciones=0.0;
while (nota<0.0){
if(nota>3.0){
numAprobados = numAprobados +1;
} else{
numReprobados = numReprobados +1;
}
EISC
Slide 12
Estructuras de Repeticin
Ciclo while - Ejercicio
public class UsaAsignatura {
public static void main (String arg[]) {
Asignatura apreciacionCine = new
Asignatura();
apreciacionCine.determinarEstadisticas();
System.exit(0);
}
}
EISC
Universidad del Valle
Slide 13
Estructuras de Repeticin
Ciclo do-while:
Los ciclos do-while funcionan de la misma manera que los ciclos
while, sin embargo un ciclo do-while ejecuta primero las
instrucciones y luego hace la validacin.
Java
Haga
do
{ instruccin 1;
instruccin 1
instruccin 2
.
Mientras condicin
instruccin 2;
} while(condicion);
EISC
Universidad del Valle
Slide 14
Estructuras de Repeticin
Ciclo do-while
Ejemplo:
c = c *2;
a = a + 1;
} while (a<c);
Nmero
Iteracin
Valor variable
a
Valor variable
c
12
Se interrumpe
EISC
Universidad del Valle
Slide 15
Estructuras de Repeticin
Ciclo do-while
c = c *2;
a = a + 1;
} while (a<c);
Nmero
Iteracin
Valor variable
a
Valor variable
c
10
Se interrumpe
EISC
Universidad del Valle
Slide 16
do {
sentencias;
} while (expresin);
Tambin tiene solo una expresin que representa el hasta
cuando?
La diferencia con el while consiste en que las sentencias
dentro de la estructura al menos se ejecutan una vez.
EISC
Universidad del Valle
Slide 17
Ciclos - Do -While
int dato;
do{
String aux=JOptionPane.showInputDialog( digite un
numero:);
dato = Integer.parseInt(aux);
} while(dato<0);
EISC
Universidad del Valle
Slide 18
Ciclos - Do -While
Desde 1
int suma=0;
int i=1;
int n=100;
do {
suma=suma+i;
i++;
} while(i<n);
Hasta n
De uno en uno
EISC
Universidad del Valle
Slide 19
Estructuras de Repeticin
Estructura do - while
EISC
Universidad del Valle
Slide 20
Estructuras de Repeticin
Estructura do-while Ejercicio: Algoritmos de la clase Asignatura.
public void determinarEstadisticas()
Inicio
Haga
leer(nota);
Si (nota>3){
numAprobados = numsAprobados +1;
}
Sino {
numReprobados = numReprobados + 1;
}
promedioCalificaciones = promedioCalificaciones + nota;
Mientras (nota>0);
promedioCalificaciones = promedioCalificaciones / (numAprobados + numReprobados );
mostrar(numAprobados);
mostrar(numReprobados);
mostrar(promedioCalificaciones);
Fin
EISC
Universidad del Valle
Slide 21
Estructuras de Repeticin
Estructura do- while Ejercicio:
public void determinarEstadisticas() {
numAprobados =0;
numReprobados =0;
promedioCalificaciones=0.0;
do{
}while (nota>0.0);
promedioCalificaciones = promedioCalificaciones / (numAprobados + numReprobados );
Slide 22
Mtodos constructores
El mtodo
Es til
EISC
Universidad del Valle
Slide 23
Mtodos constructores
import javax.swing.*;
En la creacin del
objeto, se emplea el
mtodo constructor
unRectangulo.alto=
Integer.parseInt(JOptionPane.showInputDialog(Alto?"));
unRectangulo.ancho=Integer.parseInt(JOptionPane.showInputDialo
g(Ancho?"));
unRectangulo.obtenerArea();
JOptionPane.showMessageDialog(null,"El area es "+
unRectangulo.area);
System.exit(0);
}
}
Mtodos constructores
public class Rectangulo{
public int alto;
public int ancho;
public int area;
public Rectangulo(){
alto=0;
ancho=0;
}
public void calcularArea(){
area=alto*ancho;
}
}//fin clase
EISC
Universidad del Valle
Slide 25