1.- El clásico Hola Mundo public class HolaMundo { public static void main(String[] args) { System.out.println("Hola Mundo "); } } 2.- Elaborar un programa que realice operaciones aritméticas utlizando métodos diferentes para sumar, restar, multiplicar, dividir y residuo. import java.util.Scanner; class OperacionesAritmeticas{ int a,b; public static void main(String[] Arg){ //declaracion de variables int a,b; Scanner teclado = new Scanner (System.in); System.out.print("Proporciona Valor de operadpr 1: "); a = teclado.nextInt(); System.out.print("\nProporciona Valor de operador 2: "); b = teclado.nextInt(); //Sumatorio sr = new Sumatorio(); //System.out.println("Sumatorio "+sr.sumar()); int resultado=resta(a,b); System.out.println("a = "+a); System.out.println("Resta ="+resultado); resultado=suma(a,b); System.out.println("Suma = "+resultado); resultado = multiplica(a,b); System.out.println("Multiplica = "+resultado); double resultado2 = dividir(a,b); System.out.println("Divisioo = "+resultado2); resultado = residuo(a,b); System.out.println("Residuo = "+resultado); } public static int suma(int i,int j){ return i+j; } public static int resta(int a,int b){ return a-b; } public static int multiplica(int x, int y){ return x*y; } public static double dividir(int a,int b){ return (double)(a)/(double)(b); } public static int residuo(int a, int b){ return a % b; } } 3.- Se desea calcular la distancia recorrida (m) por un automóvil que tiene velocidad constante (m/s) durante un tiempo t (s), considerar que es un Movimiento Rectilíneo Uniforme. import java.util.Scanner; public class Distancia{ public static void main(String[] args) { // declaracion de variables int d=0; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona tiempo en s"); short t=entrada.nextShort(); System.out.print("Proporciona Velocidad em m/s"); short v=entrada.nextShort(); d = v * t; System.out.print("Distancia = "); System.out.println(d); } } 4.- Se necesita obtener el promedio aritmético de un estudiante a partir de sus tres notas parciales. import java.util.Scanner; public class Promedio{ public static void main(String[] args){ // Declaración de variables byte calf1 = 0, calf2 = 0,calf3 = 0; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona Calificacion 1: "); calf1=entrada.nextByte(); System.out.print("Proporciona Calificacion 2: "); calf2=entrada.nextByte(); System.out.print("Proporciona Calificacion 3 "); calf3=entrada.nextByte(); float promedio=(float)((calf1+calf2+calf3)/3.0); System.out.print("Promedio = "); System.out.println(promedio); } } import java.util.Scanner; public class Promedio2{ public static void main(String[] Args){ byte c_2 = 0,c2 = 0,c3 = 0; /* c1=0; c2=0; c3=0; */ byte c[] = new byte[3]; Scanner entrada = new Scanner (System.in); System.out.print("Propocione Calif 1: "); //c1 = entrada.nextByte(); c[0] = entrada.nextByte(); System.out.print("\nPropocione Calif 2: "); //c2 = entrada.nextByte(); c[1] = entrada.nextByte(); System.out.print("\nPropocione Calif 3: "); //c3 = entrada.nextByte(); c[2] = entrada.nextByte(); //double prom = promedio(c1,c2,c3); double prom = promedio(c[0],c[1],c[2]); System.out.println("\nPromedio = "+prom); } public static double promedio(byte x, byte y, byte z) { return (double)(x+y+z)/3; } } import java.util.*; public class Promedio3{ public static void main(String []Args){ //declaración de variables int tec2020 = 0; int tec2021 = 0; //ejemplo de nombre de variables char x= 'a',y='b'; // variables tipo char char c1 = 'C'; byte c[] = new byte[3]; // ejemplo de un arreglo float prom; Scanner entrada = new Scanner (System.in); System.out.print("Propociona calificación 1:"); c[0] = entrada.nextByte(); System.out.print("\nPropociona calificación 2:"); c[1] = entrada.nextByte(); System.out.print("\nPropociona calificación 3:"); c[2] = entrada.nextByte(); prom = promedio(c[0],c[1],c[2]); System.out.println("Promedio = "+prom); } public static float promedio(byte a, byte b, byte c) { return (float)(a+b+c)/3; } } 5.-Elaborar un algoritmo que solicite el número de respuestas correctas, incorrectas y en blanco, correspondiente a concursantes y muestre su puntaje final considerando, que por cada respuesta correcta tendrá 4 puntos, repuesta incorrecta tendrá -1 y respuestas en blanco tendrán un valor de 0. import java.util.Scanner; public class Puntaje{ public static void main(String []Args){ //Declaración de variables short trc = 0; short tri = 0, trb=0; short tpc = 0, tpi =0; int totalPuntaje = 0; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona respuestas correctas: "); trc = entrada.nextShort(); System.out.print("Proporciona respuestas incorrectas: "); tri = entrada.nextShort(); System.out.print("Proporciona respuestas en blanco: "); trb = entrada.nextShort(); tpc = (short)(trc * 4); tpi = (short)(tri * -1); totalPuntaje = tpc + tpi ; System.out.println("Puntaje Total = "+totalPuntaje); } } 6.- Elaborar un algoritmo que permita ingresar el número de partidos ganados, perdidos y empatados, por algún equipo en el torneo de apertura, se debe de mostrar su puntaje total, teniendo en cuenta que por cada partido ganado obtendrá 3 puntos, empatado 1 punto y perdido 0 puntos. import java.util.*; public class Partidos{ public static void main(String[] Args){ //Declaracion de variables int pgan = 0; int pemp = 0; int pper = 0; int totalpartidos = 0; Scanner entrada = new Scanner (System.in); System.out.print("Proporcionar partidos ganados: "); pgan = entrada.nextInt(); System.out.print("Proporcionar partidos empatados: "); pemp = entrada.nextInt(); System.out.print("Proporcionar partidos perdidos: "); pper = entrada.nextInt(); totalpartidos = pgan*3 + pemp*1 + pper*0; System.out.println("Total de Partidos = "+ totalpartidos); } } 7.- Elaborar un algoritmo que permita averiguar su una persona debe sacar su INE, sabiendo su año de nacimiento, para lo cual debe demostrar que es mayor de 17 años. Algoritmo sin_titulo Leer AA Leer AN E = AA - AN Si (E>17) Entonces Escribir "Solicitar INE" SiNo Escribir "NO Solicitar" Fin Si FinAlgoritmo import java.util.Scanner; public class Id{ public static void main(String []Args){ //Declaración de variables short aActual= 0; short aNac = 0; short edad = 0; String mensaje; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona Año Actual: "); aActual = entrada.nextShort(); System.out.print("Proporciona Año Nacimiento: "); aNac = entrada.nextShort(); edad = (short)(aActual - aNac); if (edad>17) {mensaje = "Solicitar ID"; System.out.println("Felcidades");} else {mensaje = "NO Solicitar ID";} System.out.println(mensaje); } } 8.-Elaborar un algoritmo que solicite la edad y nombre de 2 hermanos y muestre un mensaje indicando la edad y nombre del mayor y cuántos años de diferencia tiene con el menor. PSEUDOCÓDIGO Algoritmo DiferenciaEdades Leer edad1,edad2 si (edad1>edad2) Entonces msg = "Hermano 1 mayor que hermano 2" dEdades = edad1 - edad2 SiNo msg = "Hermano 2 es mayor que hermano 1" dEdades = edad2 - edad1 FinSi Escribir msg Escribir "La diferencia de edades = ",dEdades FinAlgoritmo DIAGRAMA DE FLUJO: EN JAVA: import java.util.*; public class DiferenciaEdades{ public static void main(String[] Args){ //Declaracion de variables String msg; short e1,e2,dE; Scanner entrada = new Scanner (System.in); System.out.print("Proporcione Edad Hermano 1: "); e1= entrada.nextShort(); System.out.print("Proporcione Edad Hermano 2: "); e2 = entrada.nextShort(); if (e1>e2) { msg = "Hermano 1 es mayor que Hermano 2"; dE = (short)(e1-e2); } else if (e1==e2) { msg = "Hermano 1 es igual que Hermano 2"; dE = 0; } else { msg = "Hermano 2 es mayor que Hermano 1"; dE = (short)(e2-e1); } /*if (e1==e2) { msg = "Hermano 1 es igual que Hermano 2"; dE = 0; }*/ System.out.println(msg); System.out.println("Diferencia de Edades = "+dE); } } import java.util.*; public class DiferenciaEdades{ public static void main(String[] Args){ //Declaracion de variables String msg; short e1,e2,dE; Scanner entrada = new Scanner (System.in); System.out.print("Proporcione Edad Hermano 1: "); e1= entrada.nextShort(); System.out.print("Proporcione Edad Hermano 2: "); e2 = entrada.nextShort(); if (e1>e2) { msg = "Hermano 1 es mayor que Hermano 2"; dE = (short)(e1-e2); } else { msg = "Hermano 2 es mayor que Hermano 1"; dE = (short)(e2-e1); } /*if (e1==e2) { msg = "Hermano 1 es igual que Hermano 2"; dE = 0; }*/ System.out.println(msg); System.out.println("Diferencia de Edades = "+dE); } } 9.- Se tiene registrado la producción (unidades) logrados por un trabajador a lo largo de una semana (lunes a sábado). Elabore un algoritmo que nos muestre o nos diga si el operario recibirá incentivos sabiendo que el promedio de producción mínima es de 100 unidades. PSEUDOCÓDIGO Algoritmo Produccion Escribir "Dame nombre de trabajador: " Leer nombre Escribir "Dame producción de una semana: " Leer horasTrab Si horasTrab>100 Escribir nombre+"SI recibirá incentivos" SiNo Escribir nombre+"NO recibirá incentivos" FinSi FinAlgoritmo DIAGRAMA DE FLUJO JAVA import java.util.Scanner; public class Produccion{ public static void main(String args[]) { Scanner teclado = new Scanner (System.in); double unidadesProd; String nombre; System.out.println("Dame nombre de trabajador: "); nombre = teclado.nextLine(); //teclado.nextLine(); System.out.println("Dame producción de una semana: "); unidadesProd =teclado.nextDouble(); if (unidadesProd>100) { System.out.println(nombre+" SI recibirá incentivos"); } else { System.out.println(nombre+" NO recibirá incentivos"); } } } 10.-Elaborar un algoritmo que lea 3 números diferentes entre sí, y determine el número mayor de los tres. Algoritmo Mayor Leer a,b,c Si a>b Entonces Si a>c Entonces Escribir "El mayor es ", a SiNo Escribir "El mayor es ", c FinSi SiNo Si b>c Entonces Escribir "El mayor es", b SiNo Escribir "El mayor es" ,c FinSi Fin Si FinAlgoritmo Algoritmo Mayor2 Leer a,b,c Si a>b y a>c Escribir "el mayor es ", a FinSi Si b>a y b>c Escribir "el mayor es ", b FinSi Si c>a y c>b Escribir "el mayor es ", c FinSi FinAlgoritmo Algoritmo Mayorde3 Leer a,b,c Si (a>b) Entonces Si (a>c) Entonces Escribir 'La mayor es a' SiNo Escribir 'La mayoe es C' FinSi SiNo Si (b>c) Entonces Escribir 'La mayor es b' SiNo Escribir 'La mayor es c' FinSi FinSi FinAlgoritmo EN JAVA: //Lee 3 valores diferentes y calcula el mayor import java.util.Scanner; public class Intercambia2Variables{ public static void main(String[] arg){ // Declaración de Variables int a,b, aux; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona valor de a "); a=entrada.nextInt(); System.out.print("Proporciona valor de b "); b=entrada.nextInt(); aux = a; a=b; b=aux; } } // Calcula la mayor de 3 valores diferentes utilizando // una variable auxiliar import java.util.Scanner; public class Mayorv2{ public static void main(String[] arg){ // Declaración de Variables int a,b,c; int aux; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona valor de a "); a=entrada.nextInt(); System.out.print("Proporciona valor de b "); b=entrada.nextInt(); System.out.print("Proporciona valor de c "); c=entrada.nextInt(); if (a>b) if(a>c) aux=a; else aux=c; else if(b>c) aux=b; else aux=c; System.out.print("El mayor es "+aux); } } import java.util.Scanner; public class Mayor3{ public static void main(String[] arg){ // Declaración de Variables int a,b,c; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona valor de a "); a=entrada.nextInt(); System.out.print("Proporciona valor de b "); b=entrada.nextInt(); System.out.print("Proporciona valor de c "); c=entrada.nextInt(); if (a>b && a>c) System.out.println(a); if (b>a && b>c) System.out.println(b); if (c>a && c>b) System.out.println(c); } } //Calcula el mayor de 3 valores diferentes import java.util.Scanner; public class Mayor4{ public static void main(String[] arg){ // Declaración de Variables int a,b,c; int mayor; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona valor de a "); a=entrada.nextInt(); System.out.print("Proporciona valor de b "); b=entrada.nextInt(); System.out.print("Proporciona valor de c "); c=entrada.nextInt(); mayor=a; if(b>mayor) mayor = b; if(c>mayor) mayor = c; System.out.print(mayor); } } 11.- Elabore un algoritmo que lea dos variables a y b e intercambio sus valores. // Intercambia el valor de 2 variables import java.util.Scanner; public class Intercambia2Variables{ public static void main(String[] arg){ // Declaración de Variables int a,b; int aux; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona valor de a "); a=entrada.nextInt(); System.out.print("Proporciona valor de b "); b=entrada.nextInt(); aux=a; a=b; b=aux; System.out.println("Valor de a ="+a); System.out.println("Valor de b ="+b); } } 12.- Elaborar un algoritmo que sirva para identificar el tipo de triángulo conociendo sus tres lados. PSEUDOCODIGO Algoritmo Triangulo Escribir "Dame Lado 1:" Leer lado1 Escribir "Dame Lado 2:" Leer lado2 Escribir "Dame Lado 3:" Leer lado3 SI lado1<>lado2 Y lado2<>lado3 Y lado3<>lado1 Escribir "ESCALENO" SiNo SI lado1 = lado2 Y lado2 = lado3 Escribir "EQUILATERO" SIno Escribir "ISOCELES" FinSi FinSi FinAlgoritmo DIAGRAMA DE FLUJO JAVA import java.util.Scanner; public class Triangulo{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); double lado1,lado2,lado3; System.out.print("Proporciona Lado1 :"); lado1 = entrada.nextDouble(); System.out.print("Proporciona Lado2 :"); lado2=entrada.nextDouble(); System.out.print("Proporciona Lado3 :"); lado3=entrada.nextDouble(); if ((lado1 != lado2) & (lado2 != lado3) & (lado3 != lado1)) System.out.print("ESCALENO\n"); else if ((lado1 == lado2) & (lado2 == lado3)) System.out.print("EQUILATERO\n"); else System.out.print("ISOCELES\n"); } } 13.- Elabore un algoritmo que permita ingresar un número entero (1 a 10) y muestre su equivalente en romano. PSEUDOCÓDIGO: Algoritmo Romano Escribir "Proporcione Número Arábigo" Leer numArabigo Segun numArabigo Hacer opcion 1: Escribir "I" opcion 2: Escribir "II" opcion 3: Escribir "III" opcion 4: Escribir "IV" opcion 5: Escribir "V" opcion 6: Escribir "VI" opcion 7: Escribir "VII" opcion 8: Escribir "VIII" opcion 9: Escribir "IX" opcion 10: Escribir "X" De Otro Modo: Escribir "Dato Invalido" Fin Segun FinAlgoritmo DIAGRAMA DE FLUJO: JAVA: import java.util.Scanner; public class Romano{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); int nArabigo; System.out.print("Proporciona número arábigo del 1 al 10 "); nArabigo = entrada.nextInt(); switch (nArabigo){ case 1: System.out.print("I"); break; case 2: System.out.print("II"); break; case 3: System.out.print("III"); break; case 4: System.out.print("IV"); break; case 5: System.out.print("V"); break; case 6: System.out.print("VI"); break; case 7: System.out.print("VII"); break; case 8: System.out.print("VIII"); break; case 9: System.out.print("IX"); break; case 10: System.out.print("X"); break; default: System.out.print("DATO NO VALIDO"); } System.out.print("\n Fin de la Estructura switch"); } } 14.-Elabore un algoritmo que solicite un carácter (vocales de la a a la u) y muestre su correspondiente número: a= 1, e=2,i=3,o=4 y u=5 JAVA: import java.util.Scanner; public class Vocal{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); System.out.print("Proporciona vocal "); char vocal = entrada.next().charAt(0); // LEE UN CARACTER int num; switch (vocal){ case 'a': num =1; break; case 'e': num=2; break; case 'i': num=3; break; case 'o': num=4; break; case 'u': num=5; break; default: System.out.println("DATOS INVALIDOS"); num=0; } System.out.print("\n Valor = "+num); } } 15.- Elabore un algoritmo que solicite un número entero y diferente a cero, e indique si es par. JAVA: import java.util.Scanner; public class ParImpar{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); int num; System.out.print("Proporciona número: "); num = entrada.nextInt(); if (num % 2 == 0) {System.out.print("ES PAR");} else {System.out.print("ES IMPAR");} } } 16.- Elabore un algoritmo que permita ingresar el monto de venta alcanzado por un vendedor durante un mes, luego de calcular la bonificación que le corresponde sabiendo: Monto 0-1000 1000-5000 5000-20000 20000 o mas Bonificación (%) 0 3 5 8 JAVA: import javax.swing.JOptionPane; import java.util.Scanner; public class Bonificaciones{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); int ventas; ventas = Integer.parseInt(JOptionPane.showInputDialog("Dame las ventas")); JOptionPane.showMessageDialog(null, "Ventas = "+ventas); double bon = 0; // Utilizando if anidados /* if (ventas<1000) bon = 0; else if (ventas<5000) bon =ventas * 0.03; else if(ventas<20000) bon = ventas * 0.05; else bon = ventas * 0.08; */ if (ventas>1000 && ventas<5000) bon =ventas * 0.03; if (ventas>5000 && ventas<20000) bon = ventas * 0.05; if (ventas>20000) bon = ventas * 0.08; System.out.println("Bonificacion = "+bon); } } 17.- Se desea leer un número entero de 2 cifras y que muestre el número de unidades, decenas que lo componen. JAVA import java.util.Scanner; public class DecenasUnidades{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); byte num; System.out.print("Proporciona número de dos digitos: "); num = entrada.nextByte(); byte d = (byte)(Math.floor(num/10)); System.out.println("Decenas = "+d); byte u = (byte)(num - d * 10); System.out.print("Unidades ="+u); } } 18.- Programa que lee 5 calificaciones y calcula su promedio utilizando el ciclo for. import java.util.Scanner; public class PromedioCiclos{ public static void main(String[] args){ // Promedio sin ciclos // Declaración de variables byte calf1 = 0, calf2 = 0,calf3 = 0; Scanner entrada = new Scanner (System.in); System.out.print("Proporciona Calificacion 1: "); calf1=entrada.nextByte(); System.out.print("Proporciona Calificacion 2: "); calf2=entrada.nextByte(); System.out.print("Proporciona Calificacion 3 "); calf3=entrada.nextByte(); float promedio=(float)((calf1+calf2+calf3)/3.0); System.out.print("Promedio = "); System.out.println(promedio); */ /* byte calf = 0; float promedio = 0; Scanner entrada = new Scanner (System.in); for (int i =1; i<=3; i++) { System.out.print("Proporciona Calificacion : "+i); calf = entrada.nextByte(); promedio = promedio + calf; } promedio = promedio/3; System.out.print("Promedio = "); System.out.println(promedio); /* byte n = 0, calf = 0; float promedio = 0; Scanner entrada = new Scanner (System.in); System.out.print("¿Cuántas calificaciones capturaras?"); n = entrada.nextByte(); for (int i =1; i<=n; i++) { System.out.print("Proporciona Calificacion : "+i+" "); calf = entrada.nextByte(); promedio = promedio + calf; } promedio = promedio/n; System.out.print("Promedio = "); System.out.println(promedio); */ } } 19.- Programa que lee n calificaciones y calcula su promedio utilizando el ciclo for. PSEUDOCODIGO: Algoritmo PromedionCalificaciones Escribir 'Cantidad de calificaciones' Leer n Para i<-1 Hasta n Hacer Escribir 'Dame calificacion ',i Leer calf promedio <- promedio+calf FinPara promedio <- promedio/n Escribir 'Promedio = ',promedio FinAlgoritmo DIAGRAMA DE FLUJO: JAVA: import java.util.Scanner; public class PromedioCiclos{ public static void main(String[] args){ byte n = 0, calf = 0; float promedio = 0; Scanner entrada = new Scanner (System.in); System.out.print("¿Cuántas calificaciones capturaras?"); n = entrada.nextByte(); for (int i =1; i<=n; i++) { System.out.print("Proporciona Calificacion : "+i+" "); calf = entrada.nextByte(); promedio = promedio + calf; } promedio = promedio/n; System.out.print("Promedio = "); System.out.println(promedio); */ } } 20.- Calcula la siguiente ecuación e2-x utilizando el ciclo for. JAVA //Calcula la funcion e^(x)-x final int VECES =15; Scanner entrada = new Scanner(System.in); for (int i=1;i<=VECES;i++){ double x,f; System.out.print("Valor de x: "); x=entrada.nextDouble(); f=Math.exp(x)-x; System.out.println("f("+x +") = "+f); } 21.- Programa que visualice por pantalla todos los caracteres correspondientes a letras minúsculas JAVA public class Letras{ public static void main(String[] arg){ for (char i='a';i<='z';i++) { System.out.println("\t"+(int)(i)+"\t"+i); } } } 22.- Construir un programa que calcule el factorial de un valor numérico introducido como parámetro o argumento en la línea de comando JAVA public class Factorial{ public static void main(String[] arg){ long fact = 1; int f = Integer.parseInt(arg[0]); System.out.print("Factorial de "+f+"= "); for (int i=2;i<=f;i++) fact *= i; //fact = fact *i; System.out.println(fact); } } 23.- Programa que calcula y visualiza por pantalla las tablas demultiplicar del 1 al 10 JAVA public class Tablas1al10{ public static void main(String[] arg){ for (int i = 1;i <= 10; i++) { System.out.println("TABLA DEL "+i); for (int j = 1; j<10; j++) { System.out.println(i +" X "+j +" = "+i*j); } } } } 24.- Programa que calcula y visualiza por pantalla el factorial de todos los valores numéricos enteros entre 1 y 10 JAVA public class Factorial1al10{ public static void main(String[] arg){ long fact ; for (int j=1;j<=10;j++) { int f = j; System.out.print("Factorial de "+f+"= "); fact = 1; for (int i=2;i<=f;i++) fact *= i; //fact = fact *i; System.out.println(fact); } } } 25.- Programa que visualiza por pantalla los parámetros o argumento de la línea de ejecución en orden inverso palabra por palabra JAVA public class PalabrasInversas{ public static void main(String[] arg){ int i = arg.length; // regresa la longitud del parámetro for (int j=i;j>0;j--) { System.out.print(arg[j-1]+" "); } System.out.println(); } } 26.- Programa que visualiza por pantalla los parámetros o argumento de la línea de ejecución en orden inverso letra por letra JAVA public class LetrasInversas{ public static void main(String[] arg){ int longitudFrase = arg.length; // regresa la longitud del parámetro //System.out.println("Longitud de la Frase = "+longitudFrase); for (int j=longitudFrase;j>0;j--) { int longitudPalabra = arg[j-1].length(); // regresa la longitud de la palabra //System.out.println("Palabra analizada "+arg[j-1]); //System.out.println("Longitud de la palabra: "+longitudPalabra); for (int z=longitudPalabra;z>0;z--){ System.out.print(arg[j-1].charAt(z-1)); } } System.out.println(); } } 27.-Calculo de Calorías con la sentencia WHILE. import java.util.Scanner; public class Calorias{ public static void main(String[] algo){ Scanner entrada = new Scanner (System.in); int num_de_elementos, cuenta; int calorias_por_alimento, calorias_total; System.out.print("¿Cuántos alimentos ha comido hoy? "); num_de_elementos = entrada.nextInt(); System.out.println("Introducir el número de calorías de"+ " cada uno de los " + num_de_elementos + " alimentos tomados:"); calorias_total = 0; cuenta = 0; while (cuenta<num_de_elementos) { calorias_por_alimento = entrada.nextInt(); calorias_total = calorias_total+calorias_por_alimento; cuenta++; } System.out.println("Las calorías totales consumidas hoy son = " + calorias_total); } } 28.- Calcula la funcion e^(x)-x //Calcula la funcion e^(x)-x /* final int VECES =15; Scanner entrada = new Scanner(System.in); for (int i=1;i<=VECES;i++){ double x,f; System.out.print("Valor de x: "); x=entrada.nextDouble(); f=Math.exp(x)-x; System.out.println("f("+x +") = "+f); } */ 29.- Lee un Carácter y cuando teclea un dígito sale del ciclo ya que utiliza a los dígitos como INDICADORES O VALORES BANDERA PSEUDOCODIGO: Algoritmo LeerCaracter digito_leido <- Falso Mientras ( NO digito_leido) Hacer // ! Escribir 'Introduzca un caracter, teclee del 0 al 9 para salir' Leer CARACTER digito_leido <- CARACTER>='0' Y CARACTER<='9' FinMientras FinAlgoritmo DIAGRAMA DE FLUJO: boolean digito_leido = false; char car = ' '; while (!digito_leido) { System.out.println("Introduzca un caracter: "); try { car = (char)System.in.read(); System.in.skip(1); } catch(Exception e) { } digito_leido = (car>='0' && car<='9'); } // fin de bucle 30.- Calcula el Promedio de calificaciones, utilizando un CENTINELA para terminar PSEUDOCODIGO: Algoritmo Notas CENTINELA <- -1 cuenta <- 1 Leer nota suma <- nota Mientras nota<>CENTINELA Hacer Leer nota Si nota<>CENTINELA Entonces suma <- suma+nota cuenta <- cuenta+1 FinSi FinMientras promedio <- suma/cuenta Escribir 'Promedio = ',promedio FinAlgoritmo DIAGRAMA DE FLUJO: PROGRAMA JAVA: /* entrada de datos numéricos, centinela –1 */ /* Scanner entrada = new Scanner(System.in); final int centinela = -1; int nota; int cuenta=1; int suma = 0; System.out.println("Proporcione primera calificación"); nota = entrada.nextInt(); suma = nota; while (nota != centinela) { System.out.println("Proporcione Siguiente calificación"); nota = entrada.nextInt(); if (nota != centinela) { suma+=nota; // suma = suma +nota cuenta++; // cuenta = cuenta +1 } } // calculo del promedio System.out.println("Promedio = "+suma/cuenta); */ 31.- Salida de un ciclo indefinido. // Salida de un bucle for indefinido final int CLAVE = -999; Scanner entrada = new Scanner(System.in); for (;;) { System.out.println("Introduzca un número "+CLAVE+ "para terminar"); int num = entrada.nextInt(); if (num == CLAVE) break; } // Lo mismo utilizando una Sentencia While while (true) { System.out.println("Introduzca un número "+CLAVE+ "para terminar"); int num = entrada.nextInt(); if (num == CLAVE) break; } 32.- Programa JAVA que genero número de 3 cifras, excepto múltiplos de 3. Utilizando la Sentencia Continue // Utilización de la Sentencia Continue final int CLAVE = 3; final int RANGO = 999; int n = (int)(Math.random()*RANGO +1); for (int i = 0; i < n; i++) { int numero; numero = (int)(Math.random()*RANGO +1); if (numero % CLAVE == 0) { System.out.println(); continue; } System.out.print(" " + numero); } 33.- El programa Asteriscos escribe líneas con asteriscos en una cantidad igual al número de línea correspondiente del código fuente. Utilizando sentencia CONTINUE public class Asteriscos{ public static void main(String[] arg){ final int COLUMNA = 17; final int FILA =17; siguiente: for (int f = 1; f <= FILA; f++) { System.out.println(); for (int c = 1; c <= COLUMNA; c++) { if (c > f) continue siguiente; System.out.print('*'); } } //Otra forma de hacerlo for (int f=1;f<=FILA;f++) { System.out.println(); for(int c=1;c<=f;c++) { System.out.print('*'); } } } 34.- Aplicación simple de un bucle do while: seleccionar una opción de saludo al usuario dentro de un programa. PSEUDOCODIGO Algoritmo Saludo Definir resp como caracter Repetir Escribir "Hola" Escribir "Le gustaría otro tipo de saludos?" Leer resp Hasta Que resp = 'n' o resp = 'N' Escribir "Adios!" FinAlgoritmo DIAGRAMA DE FLUJO: JAVA: import java.util.Scanner; public class Saludo{ public static void main(String[] arg){ Scanner entrada = new Scanner (System.in); char opcion=' '; do { System.out.println("Hola"); System.out.println("Desea otro tipo de saludo?"); System.out.println("Pulse s para si y n para no,"); System.out.print("y a continuacion pulse intro: "); try { opcion = entrada.next().charAt(0); } catch(Exception e) {} } while (opcion == 's'|| opcion == 'S'); System.out.println("Adios"); } } 35.- Elabore un programa que le permita conocer a una persona que desea su jubulación, la cantidad de años que requiere para en base a la suma de jubilación, pago anual y tasa de interés, la cantidad de años que tiene trabajar. Pseudocódigo: Algoritmo Jubilacion definir pago, tasaInteres, meta, balance,interes Como Real definir anios como entero Escribir "¿Cuánto desea recibir cuando se jubile?" Leer meta Escribir "¿Cuánto desea aportar anualmente? " Leer pago Escribir "Proporcione tasa de interes anual: " Leer tasaInteres balance = 0 anios = 0 Mientras (balance< meta) Hacer balance = balance + pago interes = balance * (tasaInteres/100) balance =balance + interes anios = anios +1 FinMientras Escribir "Usted requiere ", anios, " anios para Retirarse" FinAlgoritmo DIAGRAMA DE FLUJO: JAVA: import javax.swing.*; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; public class Jubilacion{ public static void main(String[] args){ // Formateo de números DecimalFormatSymbols simbolos = new DecimalFormatSymbols(); simbolos.setDecimalSeparator(','); DecimalFormat formato = new DecimalFormat("$#,###,###.##",simbolos); //Lee las entradas String input = JOptionPane.showInputDialog ("CUánto dinero quieres tener cuando te retires "); double objetivo = Double.parseDouble(input); input = JOptionPane.showInputDialog ("Con cuánto dinero quieres contribuir cada año "); double pago = Double.parseDouble(input); input = JOptionPane.showInputDialog("Tasa de Interes % "); double tasaInteres = Double.parseDouble(input); double balance = 0; int anios = 0; // Actualiza el saldo de la cuenta mientras no se alcance el objetivo while (balance < objetivo){ balance += pago; double interes = balance * tasaInteres/100; balance += interes; anios ++; System.out.println("Anio "+anios + " Monto Acumulado: "+formato.format(balance)+ " Interes :"+formato.format(interes)); } System.out.println (" Usted podra retirase en "+ anios + " Anios "); System.exit(0); } } 36.- Elabore un programa que le permita conocer a una persona que desea su jubIlación, en base la cantidad de aportación anual y tasa de interés, en cada cálculo se le preguntará al usuario si es suficiente. PSEUDOCODIGO: Algoritmo Jubilacion2 Definir pago,tasaInteres,meta,balance,interes Como Real Definir anios Como Entero Definir resp Como caracter Escribir '¿Cuánto desea aportar anualmente? ' Leer pago Escribir 'Proporcione tasa de interes anual: ' Leer tasaInteres balance <- 0 anios <- 0 Repetir balance <- balance+pago interes <- balance*(tasaInteres/100) balance <- balance+interes anios <- anios+1 Escribir "La cantidad acumulada en año:",anio," = ",balance Escribir "Desea Continuar (S/N)?" Leer resp Hasta Que (resp = "N" o resp ="n") FinAlgoritmo DIAGRAMA DE FLUJO: JAVA: import javax.swing.*; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; public class Jubilacion2{ public static void main(String[] args){ // Formateo de números DecimalFormatSymbols simbolos = new DecimalFormatSymbols(); simbolos.setDecimalSeparator(','); DecimalFormat formato = new DecimalFormat("$#,###,###.##"); //Lee las entradas String input = JOptionPane.showInputDialog("Con cuánto dinero quieres contribuir cada año "); double pago = Double.parseDouble(input); input = JOptionPane.showInputDialog("Tasa de Interes % "); double tasaInteres = Double.parseDouble(input); double balance = 0; int anios = 0; // Actualiza el saldo de la cuenta mientras no se alcance el objetivo do { //Añade el interes y el pago de este año balance += pago; double interes = balance * tasaInteres/100; balance += interes; anios ++; //Muestra el saldo Actual System.out.println("Despues de anio "+ anios +": "+ formato.format(balance)); //Preguntar si quiere jubilarse y tomar la respuesta del usuario input = JOptionPane.showInputDialog("Listo para retirarse (S/N): "); input = input.toUpperCase(); } while (input.equals("N")); System.exit(0); } } 37.- Programa JAVA que hace un Menu. import java.util.Scanner; public class Menu2{ static Scanner entrada = new Scanner (System.in); static int opc = -1 ; // Opcion elegida por el usuario public static void main(String[] args){ while (opc != 0){ // Para evitar que el programa termine si hay un error try{ System.out.println("\t1) Clase 1:"); System.out.println("\t2) Clase 2: "); System.out.println("\t0) Salir: "); opc = Integer.parseInt(entrada.nextLine()); switch (opc){ case 1: //System.out.println("Entre a la opcion 1"); Clase1 obj = new Clase1(); break; case 2: //System.out.println("Entre a la opcion 2"); Clase2 obj = new Clase2(); break; case 0: System.out.println("Adios!!"); break; default: System.out.println("Seleccione valores de 0 a 2!"); break; } } catch(Exception e){ System.out.println("Upss! hubo un Error"); } } } } public class Clase1{ public Clase1(){ System.out.println(" Hola 0Estoy en Clase 1"); } } public class Clase2{ public Clase2(){ System.out.println("Hola Estoy en Clase 2"); } } 38.- Programa que lea por teclado 10 números enteros y los guarde en un Array, después calcula y muestra la media de los valores positivos y negativo. import java.util.Scanner; public class Arreglo10{ public static Scanner entrada = new Scanner(System.in); public static void main(String[] arg) { int i; int pos = 0, neg = 0; //contadores de los numero // positivos y negativos int [] numeros = new int[10]; // Array que contrendrá // los números leídos double sumaPos = 0, sumaNeg = 0;//acumuladores para la // suma de los negativos y positivos //Lectura de los datos y llenar en el array System.out.println("Lectura de los elementos del array:"); for (i = 0; i<10; i++){ System.out.print("numeros["+i+"]= "); numeros[i] = entrada.nextInt(); } //Recorrer el array para sumar por separado los //numero positivos y negativos for(i=0;i<10;i++){ if(numeros[i]>0){//sumar positivos sumaPos += numeros[i]; pos ++; }else if (numeros[i]<0){// sumar negativos sumaNeg += numeros[i]; neg ++; } } //calcular y mostrar las medias if (pos != 0) { System.out.println("Media Positivos: "+sumaPos/pos); }else { System.out.println("No ha introducido positivos"); } if (neg != 0){ System.out.println("Media Negativos: "+sumaNeg/neg); }else{ System.out.println("No ha introducido negativos"); } } } 39.- Modificamos el Programa anterior para que además de que que lea por teclado 10 números enteros y los guarde en un Array, después calcula y muestra la media de los valores positivos y negativo. Deberá tener un método que calcule el promedio de todo el arreglo, un método para que calcule la calificación mayor, un método para que ordene de mayor a menor la lista y un método para que calcule la mediana, así como un método que imprima las frecuencia de las calificaciones. JAVA: import java.util.Scanner; import java.util.ArrayList; public class ArregloMedia{ public static Scanner teclado = new Scanner(System.in); public static void main(String arg[]){ int i; int pos = 0, neg = 0; // double sumaPos = 0, sumaNeg = 0; final int TAM = 4; int numeros[] = new int[TAM]; //lectura de datos System.out.println("Lectura de los elementos del array"); for(i=0;i<TAM;i++){ System.out.print("numeros["+i+"] = "); numeros[i] = teclado.nextInt(); } //Recorrer el array para sumar separado pos y neg for(i = 0;i<TAM;i++){ if(numeros[i] > 0 ){ // sumar los positivos sumaPos += numeros[i]; pos ++; }else if (numeros[i]<0){// sumar los negativos sumaNeg += numeros[i]; neg ++; } } //calcular y mostrar las medias if(pos != 0){ System.out.println("Media de los valores positivos "+ sumaPos/pos); }else { System.out.println("No hay positivos"); } if (neg != 0){ System.out.println("MEdia de los valores negativos "+ sumaNeg/neg); }else{ System.out.println("No hay negativos"); } double pr; pr = promedio(numeros); System.out.println("Promedio = "+pr); //Calculo de la mediana //Deberá primero ordenar la lista double med; med = medio(numeros); System.out.println("Mediana = "+med); int mayor = mayor(numeros); System.out.println("Mayor = "+mayor); System.out.println("Lista Ordenada : "); ordenar(numeros); //Invoca al calculo de frecuencias frecuencias(numeros); } public static double promedio(int a[]) { /* double acum = 0; for(int j=0;j<10;j++) {//acum = acum +a[j]; acum += a[j];} return acum/10; */ /* double acum = 0; for(int elemento:a) acum +=elemento; return acum/10; */ double acum = 0; for(int j=0;j<a.length;j++) {//acum = acum +a[j]; acum += a[j];} return acum/a.length; } public static double medio(int arg[]) { int indice; double med; indice = (int)(arg.length/2) ; if (arg.length % 2 != 0){ // Es impar med = (double)(arg[indice]); } else{//Es par med =(double)((arg[indice-1]+arg[indice]))/2; } return med; } //método que calcula el mayor de un arreglo public static int mayor(int arg[]){ int tam=arg.length; int arreglo[] = new int[tam]; //arreglo para copiar el arreglo original for (int i=0;i<tam;i++) arreglo[i] = arg[i] ; //copio para no alterar el arreglo original int mayor = arreglo[0]; int aux = 0; for (int i=1;i<arreglo.length;i++){ if (arreglo[i]>mayor){ aux = mayor; mayor = arreglo[i]; arreglo[i] = aux; } } return mayor; } //método que ordena un arreglo public static int[] ordenar(int arg[]){ int aux; for(int i=0;i<arg.length-1;i++){ for(int x = i+1;x<arg.length;x++){ if(arg[x] < arg[i]){ aux = arg[i]; arg[i] = arg[x]; arg[x] = aux; } } } return arg; } //métoto para sacar table de frecuencias public static void frecuencias(int arg[]){ int frec[] = new int[11]; for (int i=0;i<arg.length;i++){ frec[arg[i]] = frec[arg[i]]+1; } for (int i=0;i<frec.length;i++) System.out.println("Calificacion ["+i+"] = " +frec[i]); } }