clase9 ejercicios estructurarepetitiva
TRANSCRIPT
![Page 1: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/1.jpg)
Ejercicios estructura repetitiva
Edisson Gutiérrez Jiménez
Universidad de Antioquia
Lógica y representación I
![Page 2: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/2.jpg)
Sintaxis de la estructura de repetición
while en java
⁞
while (expresión lógica) {
// Instrucciones del ciclo
}
⁞
Si la expresión lógica evalúa a verdadero se ejecutan lasinstrucciones que están entre { y }. Una vez ejecutadas lasinstrucciones se vuelve a evaluar la expresión lógica. Dentro lasinstrucciones debe existir una que eventualmente haga que laexpresión lógica evalúe a falso. Si la expresión lógica evalúa a falso,termina el while y se ejecutan las instrucciones que se encuentrendespués de }.
![Page 3: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/3.jpg)
Ejercicio
• Diseñar un programa que calcule la suma y el promedio de un conjunto de N datos ingresados por el usuario.
import java.util.Scanner;
public class sumaProm {
public static void main(String[] args) {
/*Declaración de variables. La variable cont sirve para controlar el ciclo,
* la variable suma será un acumulador para sumar los datos ingresados
* por el usuario, la variable tope será la que almacene la cantidad
* de datos que desee ingresar el usuario, la variable
* promedio guardará el promedio de los datos y la variable dato
* guardará cada uno de los datos que ingrese el usuario.*/
//int: Para declarar variables de tipo entero
int cont, suma, tope, promedio, dato;
/*El objeto sc es del tipo Scanner y sirve para leer datos ingresados
* por el usuario*/
Scanner sc = new Scanner( System.in );
//System.out.print: Para mostrarle datos al usuario.
System.out.print("Ingrese la cantidad de datos que desea sumar: ");
//nextInt(): Captura el dato ingresado por el usuario y lo convierte a entero.
tope = sc.nextInt();
//Se le asigna el valor inicial a contador.
cont = 1;
![Page 4: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/4.jpg)
//Se inicia el acumulador en cero.
suma = 0;
//Se inicia la estructura repetitiva
while (cont <= tope)
{
//Se piden los datos al usuario.
System.out.print("Ingrese el dato " + cont);
dato = sc.nextInt();
//Se suman cada uno de los datos ingresados
suma += dato;
cont++;
}
//Se calcula el promedio
promedio = suma/tope;
System.out.println("La suma de los datos es " + suma);
System.out.println("El promedio de los datos es " + promedio);
}
}
![Page 5: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/5.jpg)
• Diseñe un programa para calcular el factorial de un número ingresado por el usuario.
public class factorial {
public static void main(String[] args) {
// TODO Auto-generated method stub
int cont, facto, num;
Scanner sc = new Scanner( System.in );
System.out.print("Ingrese el número al que desea calcularle el factorial: ");
num = sc.nextInt();
cont = 1;
facto = 1;
while (cont <= num)
{
facto *= cont;
cont++;
}
System.out.println("El factorial de " + num + " es " + facto);
}
}
![Page 6: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/6.jpg)
• Un vendedor desea calcular la comisión total
sobre la venta de varios artículos. Al vendedor
le corresponde el 10% de comisión sobre
artículos, cuyo precio es menor o igual a
$1.000 y el 7% de comisión sobre aquellos
artículos cuyo precio sea mayor de $1.000.
Elabore un algoritmo para obtener la comisión
total, si se conoce que el vendedor hizo N
ventas.
![Page 7: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/7.jpg)
public class articulos {
public static void main(String[] args) {
int cont, totalArt;
double precio, comision;
Scanner sc = new Scanner( System.in );
System.out.print("Ingrese la cantidad de artículos vendidos: ");
totalArt = sc.nextInt();
cont = 1;
comision = 0;
while (cont <= totalArt)
{
System.out.print("Ingrese el precio del artículo " + cont);
precio = sc.nextDouble();
if (precio <= 1000)
//Es lo mismo que tener comision = comision + (precion * 0.1)
comision += precio * 0.1;
else
comision += precio * 0.07;
cont++;
}
System.out.println("La comisión total es " + comision);
}
}
![Page 8: Clase9 ejercicios estructurarepetitiva](https://reader031.vdocuments.co/reader031/viewer/2022022203/587627311a28ab8b7b8b5dab/html5/thumbnails/8.jpg)
Ejercicio
• En un curso se practican 4 evaluaciones con
los siguientes porcentajes: 25%, 20%, 25% y
30%, respectivamente. Por cada estudiante se
informa código y las cuatro notas. Hacer un
algoritmo que calcule la nota definitiva de
cada estudiante, el promedio de notas
definitivas del curso y el porcentaje de
perdedores.