Sei sulla pagina 1di 9

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

PROCESOS REPETITIVOS
1) while (mientras)
La estructura repetitiva mientras es aquella en la que el bucle se repite mientras se cumple
una determinada condicin. La representacin grfica es:

La sintaxis en Java es:


while (condicin) {
Instrucciones...
}
En este proceso se verifica la condicin, si esta es verdadera se ejecutan Instrucciones y
automticamente se vuelve de nuevo a verificar la condicin. Este proceso se ejecuta hasta
que la condicin llegue a ser falsa.
A este proceso se le conoce como de Entrada controlada, pues primero se verifica la
condicin y luego se ejecutan las instrucciones
2) do... while (Hacer ... mientras)
Existen muchas situaciones en las que se desea que un bucle se ejecute al menos una vez
antes de comprobar la condicin de repeticin. En la estructura mientras si el valor de la
expresin booleana es inicialmente falso, el cuerpo del bucle no se ejecutar; Por ello se
necesitan otros tipos de estructuras repetitivas. La estructura repetir o hacer mientras se
ejecuta mientras se cumpla una condicin de permanencia que se comprueba al final del
bucle.
Docente: Mg. Patricia J. Benites Yglesias 1

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

do{
Instrucciones;
}while(condicin);
En este proceso primero se realizan las instrucciones y luego se verifica la condicin, si esta
es verdadera, se realizan de nuevo las Instrucciones. Este proceso se ejecuta hasta que la
condicin llegue a ser falsa.
A este proceso se le conoce como de Salida controlada pues la condicin se encuentra al
final.
3) for
En muchas ocasiones se conoce de antemano el nmero de veces que desean ejecutar las
acciones de un bucle. En estos casos, en que el nmero de iteraciones es fija, se puede usar
la estructura desde o para.
La estructura desde ejecuta las acciones del cuerpo del bucle un nmero especificado de
veces y de modo automtico controla el nmero de iteraciones o pasos a travs del cuerpo
del bucle, usando una o ms variables de control de ciclo.
La estructura est formada por cuatro partes:
1. Inicializacin: Inicializa la o las variables de control.
2. Condicin: Condicin (expresin booleana) del ciclo, generalmente est
directamente relacionada con la o las variables de control.
3. Incremento: Incrementa la o las variable de control, los valores van
evolucionando mientras el ciclo se repita.
4. Cuerpo: Sentencia simple o compuesta que se repite de acuerdo a si se
cumple la condicin del ciclo o no.
La ejecucin de la sentencia desde sucede de la siguiente forma:

Docente: Mg. Patricia J. Benites Yglesias 2

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

1. Se inicializan la o las variables de control.


2. Se evala la condicin:
a. a. Si el resultado es true (verdadero), se ejecuta el bloque de
sentencias, se evala la expresin que da lugar al incremento de la o
las variables de control y se vuelve al punto 2.
b. Si el resultado es false (falso), la ejecucin de la sentencia se da por
finalizada y se pasa el control a la siguiente sentencia del programa.
Consideraciones:
El incremento de la variable de control siempre es 1 si no se indica expresamente lo
contrario.
Es posible que el incremento sea distinto de uno, positivo o negativo.
La variable de control normalmente ser de tipo entero y es normal emplear como
nombre las letras:i, j, k.
Al incremento se le suele denominar tambin paso.
Todas las clusulas (inicializacin, condicin, incrementacin) son opcionales. Puede
faltar una cualquiera, pueden faltar todas. Si no hay condicin de permanencia
significa que no saldremos nunca del ciclo, a menos que dentro del cuerpo existe una
sentencia break o return.
El ciclo for en realidad es un ciclo while ampliado con lugares especficos para
inicializacin e incrementacin. Si queremos reemplazarlo por l, simplemente
trasladamos la inicializacin inmediatamente antes del ciclo y la incrementacin debe
ser lo ultimo dentro del cuerpo.
La condicin del ciclo puede ser cualquiera, no es obligatorio que sea una evaluacin
de la variable incrementada automticamente
La sintaxis en Java es:
for (inicializacin; condicin; incrementacin) {
instrucciones...
}
--------------------------------------------for(exp1; exp2; exp3)
{
Instrucciones;
}
Dnde :
exp1 : Instrucciones de Inicializacin. Se ejecuta 1 vez y se va a exp2.
exp2 : Condicin que controla el proceso Repetitivo. Si esta expresin es verdadera se
ejecutan las Instrucciones y se va a exp3. Si esta expresin es falsa el proceso termina.
exp3 : Instrucciones de incremento de variables. Se ejecutan y luego se va a exp2.

Docente: Mg. Patricia J. Benites Yglesias 3

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

ACTIVIDAD N 4
1.
2.
3.
4.

Diferencia entre la estructura de control mientras y repetir mientras


Qu entiendes por inicializacin de la variable?
En que situaciones se utiliza la estructura de control for
Da un ejemplo utilizando las distintas estructuras de control

Ejercicios de Procesos Repetitivos


Realizar los ejercicios en entorno consola y emgralos a entorno grafico
1) Se desea calcular independientemente la suma de los pares e impares comprendidos
entre 1 y 50 (incluidos los extremos).
public class Cap05_01{
public static void main(String arg[])
{
int i,sp=0,si=0;
for(i=1;i<=50;i++)
if(i%2==0) sp=sp+i;
else si=si+i;
System.out.println("La suma de pares es : "+sp);
System.out.println("La suma de impares es : "+si);
}
}
2) Calcular y visualizar la suma y el producto de los nmeros impares comprendidos entre
20 y 80.
import java.io.*;
public class p302{
public static void main(String arg[]) throws IOException
{
int i,si=0;
double pi=1;
for(i=20;i<=80;i++)
if(i%2!=0)
{
si=si+i;
pi=pi*i;
}
System.out.println("La suma es : "+si);
System.out.println("El producto es : "+pi);
}
}
Docente: Mg. Patricia J. Benites Yglesias 4

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

Realizar los ejercicios en entorno grfico y emgralos en entorno consola (do while)
EJERCICIO N 01
package DoWhile;
import javax.swing.*;
public class Frm03 extends javax.swing.JFrame {
public void vota(){
double saf=0,sa=0,sun=0,sbv=0;
int i=1,voto;
String cod,des;

this.txtsalida.setText("Resultado de las elecciones ");


do{
voto=Integer.parseInt(JOptionPane.showInputDialog("[1]...AF:\n[2]...APRA:\n[3]...UNID
AD NACIONAL:\n[4]...BLANCO y/o VISIADO:\nIngrese codigo partido por el que vota
[1...4]:"));
if(voto==1){saf+=1;}
if(voto==2){sa+=1;}
if(voto==3){sun+=1;}
if(voto==4){sbv+=1;}
i++;
}while(i<=100);
this.txtsalida.append("\n\nAF\t\t: " + String.valueOf((saf*100)/100) + "%");
this.txtsalida.append("\n\nAPRA\t\t: " + String.valueOf((sa*100)/100) + "%");
this.txtsalida.append("\n\nUNIDAD NACIONAL\t: " +
String.valueOf((sun*100)/100) + "%");
this.txtsalida.append("\n\nVOTOS BLANCOS Y VISIADOS\t: " +
String.valueOf((sbv*100)/100) + "%");

}
EJERCICIO N 03
package DoWhile;
import javax.swing.*;
public class Frm04 extends javax.swing.JFrame {
public void cuenta(){
Docente: Mg. Patricia J. Benites Yglesias 5

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

int i=0,cond,cr=0,cd=0,sd=0,sl,sr=0,sa,cant;
sl=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Saldo Anterior: "));
do{
cond=Integer.parseInt(JOptionPane.showInputDialog("Tipo de deposito
[Deposito=1/Retiro=2/Salir=0]"));
cant=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Cantidad:"));
if(cond==1){sd+=cant; cd+=1;}
else if(cond==2){cr+=1; sr+=cant;}
else { cond=0; }
i++;
}while(cond!=0);
this.txtsalida.setText("Cantidad de Depositos: " + cd);
this.txtsalida.append("\n\nCantidad de retiros: " + cr);
this.txtsalida.append("\n\nSaldo Anterior: " + sl);
this.txtsalida.append("\n\nSaldo de depositos: " + sd);
this.txtsalida.append("\n\nSaldo de retiros: " + sr);
this.txtsalida.append("\n\nSaldo Actual: " + String.valueOf(sl+(sd-sr)));
}

Realizar los ejercicios en entorno grfico y emgralos en entorno consola (For)

EJERCICIO N01
int n;
n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese un numero: "));
this.txtsalida.setText("Tabla de multiplicar del " + n + ":\n" );
for(int i=0; i<=18; i++){
this.txtsalida.append("\n" + n + " * " + i + " = " + String.valueOf(i*n) + "\n");
};
EJERCICIO N02
int n,scr=0,scb=0;
n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese numero: "));
for(int i=0; i<=n;i++){
scb+=(i*i*i);
scr+=(i*i);
};
this.txtsalida.setText("\nsuma de cuadrados es: " + scr);
this.txtsalida.append("\nsuma de cubos es: " + scb);
Docente: Mg. Patricia J. Benites Yglesias 6

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

EJERCICIOS DE FLUJO REPETIVO


(WHILE) MIENTRAS
1. Hacer un programa que imprima todos los nmeros naturales desde la unidad hasta
un nmero dado.
2. Imprimir y contar los mltiplos de 3 desde el 1 hasta un nmero que introduzcamos
por teclado.
3. Hacer un programa que imprima los nmeros del 1 al 100y que calcule la suma de
los nmeros pares e impares.
4. Hacer un programa que imprima el mayor y el menor de una serie de 5 nmeros que
ingresemos por teclado.
5. Introducir 2 nmeros, imprimir los nmeros naturales que hay entre estos nmeros,
contar cuantos hay, contar cuantos son pares y calcular la suma de los impares.

Docente: Mg. Patricia J. Benites Yglesias 7

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

(DO WHILE) REPETIR HASTA

1. Procesar el movimiento bancario de una cuenta, ingresando el nmero de cuenta,


nombre del cliente y el saldo anterior. Luego ingresar el tipo de movimiento (1 =
Deposito, 2 =Retiro, 0 = fin) y la cantidad que lo represente. Si se ingresa otro tipo
de movimiento dar el mensaje de movimiento NO VALIDO. Terminar cuando se
ingrese 0 como tipo de movimiento y mostrar los datos de la cuenta as como el
nmero de depsitos y retiros, saldo anterior, los totales de los depsitos, retiros y el
saldo actual
2. Se desea procesar las operaciones bancarias de un cliente a quien se le pide por nica
vez su nombre y su saldo inicial. Luego en un proceso repetitivo se presenta las
siguientes opciones: Deposito, Retiro, Fin; al ingresar la opcin elegida si esta fue D
se pide si es en efectivo(1) o con Cheque(2), se ingresa la cantidad y si fuese Cheque
se descuenta el 1% por comisin y se actualiza su saldo mostrndolo en pantalla. Si
la opcin elegida fue R se ingresa la cantidad verificando que esta sea menor al saldo
actualizndolo, de lo contrario dar un mensaje de sobregiro.
Si la opcin elegida fue F mostrar los siguientes resultados:
a) Nombre, saldo inicial
b) Saldo final
c) Numero de depsitos en Efectivo y con Cheque
d) Monto promedio de retiros
e) Monto mnimo depositado y mximo retirado

3. Una persona procesa facturas correspondientes a sus ventas ingresando fecha e


importe, en forma repetitiva terminando cuando al ingresar la fecha de factura se
presione enter. Se desea saber la fecha de la factura con mayor importe, el nmero de
facturas y el importe total de las facturas procesadas.

Docente: Mg. Patricia J. Benites Yglesias 8

Instituto De Educacin Superior Tecnolgico Pblico

Juan Velasco Alvarado

TALLER DE PROGRMACION CONCURRENTE

For - Desde Para


1. Evaluar el factorial de un numero entero de acuerdo a la siguiente frmula:
FACTORIAL DE N= 1*2*3*(N-1)*N
2. Determinar cuntos nmeros mltiplos de M hay en los N primeros nmeros
naturales, tal que M <=N.
3. Ingresar 15 notas y determinar el promedio, la mxima y mnima nota
4. Imprimir los salarios netos junto a los dems importes necesarios para su clculo, de
todos los obreros de una empresa, quienes estn identificados por un cdigo y se rigen
por las siguientes condiciones salariales:
a. Cada trabajador tiene una tarifa por hora en horario normal
b. La tarifa por hora extra es 50% ms que la tarifa normal
c. El salario bsico se calcula en base a las horas trabajadas en horario normal y
horario extra.
d. Bonificacin es = 20% del salario bsico
e. Descuento = 7% del salario bruto
f. Salario neto= Salario bruto descuento
5. Obtener el total neto a pagar por una empresa a sus 10 empleados, as como el total
a pagar al Estado por concepto de ley considerando que cada empleado recibe una
bonificacin del 15% por costo de vida y un descuento del 7% de acuerdo a Ley.
Adems el sueldo vara de acuerdo a la categora a la que pertenece el empleado,
existiendo 4 categoras donde la diferencia de sueldo entre cada categora y otra es de
10%. Se sabe que la ltima categora (4ta) recibe el sueldo mnimo de S./550.00.

Docente: Mg. Patricia J. Benites Yglesias 9

Potrebbero piacerti anche