Вы находитесь на странице: 1из 9

PROGRAMACION BASICA

Ciclos for, while y do while.

Los bucles, iteraciones o sentencias repetitivas modifican el flujo secuencial de un programa permitiendo la ejecución
reiterada de una sentencia o sentencias. En Java hay tres tipos diferentes de bucles: for, while y do-while.

Sentencia for
Es un bucle o sentencia repetitiva que esta compuesta de tres partes un inicio, un límite o verificación y un incremento o
decremento, y puede o no ejecutarse.

i) ejecuta la sentencia de inicio


ii) verifica la expresión booleana de término.
a. si es cierta, ejecuta la sentencia entre llaves y la sentencia de iteración para volver a verificar la expresión booleana de
término
b. si es falsa, sale del bucle.

Sintaxis:
for (inicio; termino; iteracion) {
sentencia_1;
sentencia_2;
sentencia_n;
}
1
En java:
for (i = valor_inicial; i <= valor_final; i++) {
sentencia;
}

Ejemplo
System.out.println("Tabla de multiplicar del 5");
for (int i =0 ; i <= 10; i++) {
System.out.println(5 + " * " + i + " = " + 5*i );
}
Salida por pantalla al ejecutar el código anterior:
5*0=0
5*1=5
5 * 2 = 10

for (int i = 0 ; i <= 10; i++) {


for (int j = 10 ; j >= 1; j--) {

System.out.println(j + " * " + i + " = " + j*i );


}
}

Por otro lado, tanto la sentencia de inicio como la de iteración pueden componerse de varias
sentencias separadas por comas. Por ejemplo:
for (int i = 0, j = 10 ; i <= 10; i++, j--) {
// . . .
}
Ejercicio:

1) Haga un programa que lea un número por teclado e imprima la tabla de multiplicar del 1 al 10 de ese número.
2) Haga un programa con ciclos for anidados que genere la siguiente salida:
3) 0 00 01 02 03 04 05 06 07 08 09
4) 1 10 11 12 13 14 15 16 17 18 19
5) 2 20 21 22 23 24 25 26 27 28 29
6) 3 30 31 32 33 34 35 36 37 38 39
7) 4 40 41 42 43 44 45 46 47 48 49
8) 5 50 51 52 53 54 55 56 57 58 59

Sentencia while

Es un bucle o sentencia repetitiva con una condicion al principio. Se ejecuta una sentencia mientras sea cierta una
condición. La sentencia puede que no se ejecute ni una sola vez, el incremento o control no es directo.

Sintaxis:
[inicializacion;]
while (expresionLogica) {
sentencias;
[iteracion;]
}

2
En java:

while (condición o condiciones {


sentencia;
}

Ejemplo :

Calcular cuantos años pasan para duplicar una cantidad de dinero aun interés de del 4 %

public class Duplica {


public static void main (String [] args) {
double cantidadInicial=1;
double cantidad=cantidadInicial;
double interes=4;
int anhos=0;
while (cantidad < 2*cantidadInicial) {
anhos++;
cantidad += cantidad*interes/100;
}
System.out.println("La cantidad inicial es = " + cantidadInicial);
System.out.println("El interes es = " + interes);
System.out.println("La cantidad final es = " + cantidad);
System.out.println("El numero de años es = " + anhos);
}
}

Ejemplo de ejecución y salida correspondiente por pantalla:

La cantidad inicial es = 1.0


El interes es = 4.0
La cantidad final es = 2.025816515378531
El numero de años es = 18.0

Ejercicios:

1) Mostrar la conversión de 1 hasta 10 dólares en pesos, dólar tras dólar, suponiendo que el tipo de cambio es 3.50
pesos/dolar.
2) Una persona desea invertir $1000.00 en un banco, el cual le otorga un 5% de interés mensual. Y tiene descuentos
bimestrales por servicios del 1.5%, cual será la cantidad de dinero que esta persona tendrá al cabo de un año si
todo el dinero lo reinvierte?.

Sentencia do-while
3
Es un bucle o sentencia repetitiva con una condicion al final. Se ejecuta una sentencia mientras sea
cierta una condición. En este caso, la sentencia se ejecuta al menos una vez.

Sintaxis:
do {
sentencias;
[iteracion;]
} while (expresionLogica);

En java

do
{
sentencia;
} while (validacion);

Ejemplo:

Calcula cuantos años deben pasar para duplicar una cantidad invertida a un
determinado interes anual constante
public class Duplica2 {
public static void main (String [] args) {
double cantidadInicial=1;
double cantidad=cantidadInicial;
double interes=5;
int anhos=0;
do
{
anhos++;
cantidad += cantidad*interes/100;
} while (cantidad < 2*cantidadInicial);
System.out.println("La cantidad inicial es = " + cantidadInicial);
System.out.println("El interes es = " + interes);
System.out.println("La cantidad final es = " + cantidad);
System.out.println("El numero de años es = " + anhos);
}
}

La cantidad inicial es = 1.0


El interes es = 5.0
La cantidad final es = 2.0789281794113683
El numero de años es = 15.0

4
Ejercicios:

1) Hacer un programa que genere los números primos menores de 1000


2) Hacer un programa que genenere 2 sumatorias una de números pares y otra de impares menores que 1000

Sintaxis del switch.

La Sintaxis empleada por un switch es la siguiente:

switch (variable) {
case <posible valor> : Instrucciones : break;
case <posible valor> : Instrucciones : break;
case <posible valor> : Instrucciones : break;
case <posible valor> : Instrucciones : break;
case <posible valor> : Instrucciones : break;
default : Instrucciones ;

 Dada una variable de entrada esta se define seguido del vocablo switch.
 Se abre una llave para iniciar los posibles valores que pueda tomar dicha variable.
 Los juegos de valores son iniciados con case seguido del posible valor de la variable, posteriormente es definido
un juego de instrucciones que serán ejecutados en caso de corresponder con el valor de la variable y finalmente
(opcional) se utiliza vocablo break para salir de ciclo case.
 Un valor opcional es la definición de la linea default, cuyas instrucciones serán ejecutadas en caso que la variable
del switch no coincida con los valores definidos.

public class Meses {


public static void main(String[] args) {
int month = 8;
switch (month) {
case 1: System.out.println("Enero"); break;
case 2: System.out.println("Febrero"); break;
case 3: System.out.println("Marzo"); break;
case 4: System.out.println("Abril"); break;
case 5: System.out.println("Mayo"); break;
case 6: System.out.println("Junio"); break;
case 7: System.out.println("Julio"); break;
case 8: System.out.println("Agosto"); break;
case 9: System.out.println("Septiembre"); break;
case 10: System.out.println("Octubre"); break;
case 11: System.out.println("Noviembre"); break;
case 12: System.out.println("Diciembre"); break;
}
}
}

Algoritmo para convertir una temperatura dada en la escala Celsio a la


equivalente en la escala Fahrenheit. Se usa la fórmula F = (9/5)C + 32.

ENTRADA: Temperatura en grados Celsius.


PROPÓSITO: Convertir la temperatura a grados
Fahrenheit.
5
SALIDA: Temperatura en grados Fahrenheit.

Pasos:
1. Entrar la temperatura en grados Celsio.
1.1 Celsio ← temperatura a ser convertida

2. Convertir la temperatura de grados Celsio a grados


Fahrenheit.
2.1 Fahrenheit ← (9/5) x Celsio + 32

3. Mostrar resultados
3.1Temperatura en grados Fahrenheit.

Código correspondiente
/*
Programa Ejemplo de Java: Cambio de Temperatura de C a F

Archivo: CambioTempCaF.java

*/
import javax.swing.*;
import java.text.*;

class CambioTempCaF { //comienza la clase CambioTempCaF

public static void main (String[] args) { // comienza el método main

String celsioStr;
double celsio, fahrenheit;
celsioStr = JOptionPane.showInputDialog(null, "Entre la temperatura
en grados Celsio: ");
celsio = Double.parseDouble(celsioStr);
fahrenheit = 9.0/5.0 * celsio + 32.0;
DecimalFormat df = new
DecimalFormat("0.00");
JOptionPane.showMessageDialog(null, "Temperatura en grados
Fahrenheit: " + df.format(fahrenheit));
}// termina el método main
}//termina la clase CambioTempCaF

6
Algoritmo para determinar y mostrar el resultado de la suma
1 + 2 + 3 + ... + 500
considerando cada uno de los números, uno a la vez.

ENTRADA: Los números enteros consecutivos del 1 al 500.


PROPÓSITO: Determinar la suma de los números
considerados. SALIDA: La suma de los números
considerados.

Pasos:
1. Iniciar Suma y Próximo.
1.1 Suma ← 0
1.2 Próximo ← 1

2. Mientras Próximo≤500
2.1 Suma ←Suma + Próximo
2.2 Próximo ← Próximo + 1

3. Mostrar resultados.
3.1 Suma

Código correspondiente:

/*
Programa Ejemplo de Java: Ciclo While para Sumar

Archivo: CicloWhileSuma.java

*/

class CicloWhileSuma { //comienza la clase CicloWhileSuma

public static void main( String[] args ){ // comienza el método

main int proximo = 1, suma = 0;


while (proximo <= 500) {
suma = suma + proximo;//comienza el cuerpo del ciclo
while proximo++;//significa proximo = proximo + 1
}

System.out.println("suma = " + suma);

}// termina el método main


}//termina la clase CicloWhileSuma

7
ARREGLOS BIDIMENCIONALES

Los arreglos bidimensionales, también denominados matrices, están compuestos por filas y columnas; al
igual que los vectores, las matrices tienen 2 estados:
Declaración
Dimensionamiento
Para declarar una matriz, se hace de la siguiente forma:

int matriz[ ][ ];
Para dimensionar la matriz se hace dentro del constructor y se utiliza la sentencia:
matriz=new int[3][3];
Con estas dos sentencias se construye una matriz de 3 filas por 3 columnas.

Recorrido de una matriz


El proceso que se debe tener en cuenta para recorrer una matriz esta centrado en iniciar con la primera fila
hasta la última, obviamente recorriendo por cada filas todas las columnas que la compongan.

Con el fin de cumplir con este esquema es necesario manejar 2 tipos de recorridos, cada uno controlado por
un ciclo repetitivos; con el fin de garantizar un recorrido total de la matriz se maneja el concepto de ciclo
repetitivo anidado, donde el ciclo exterior controla el recorrido de las filas y el interior controla el recorrido de
las columnas.
Para comprender mucho mas fácilmente este proceso, a continuación se formula un código java utilizando
ciclo for anidado para llenar un matriz de 3 filas por 3 columnas con números enteros.

Donde i es el indicador de las Filas y j el de las columnas.


for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
Matriz[i][j]=Integer.parseInt(JoptionPane.showInputDialog(“Ingrese un numero”));
}

Operaciones de las matrices


A continuación veremos 3 de las operaciones mas utilizadas en las matrices.
Suma de matrices
Dadas dos matrices de la misma dimensión, A=(aij) y B=(bij), se define la matriz suma como: A+B=(aij+bij).
Es decir, aquella matriz cuyos elementos se obtienen: sumando los elementos de las dos matrices que
ocupan la misma posición.

8
Producto de un escalar por una matriz

Dada una matriz A = (aij) y un número real k R, se define el producto de un número real por una matriz: a la
matriz del mismo orden que A, en la que cada elemento está multiplicado por k.

Multiplicación de Matrices

Dos matrices A y B se dicen multiplicables si el número de columnas de A coincide con el


número de filas de B.
Mm x n x Mn x p = M m x p
El elemento cij de la matriz producto se obtiene multiplicando cada elemento de la fila i de
la matriz A por cada elemento de la columna j de la matriz B y sumándolos.

Вам также может понравиться