Está en la página 1de 30

PROGRAMACION AVANZADA LABORATORIO SESION 09

NOMBRE: SÁNCHEZ QUINTO CESAR ANTONIO

CODIGO: 1723225411

1. Un profesor tiene un salario anual de $1500, y recibe un incremento del 10% anual
durante 6 años. ¿Cuál es su salario al cabo de los 6 años? ¿Qué salario ha recibido en
cada uno de los 6 años? Realice un algoritmo y represente la solución mediante
diagrama de flujo utilizando el ciclo apropiado.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir i,s como real;

Escribir 'PROGRAMA PARA CALCULAR EL SALARIO DE UN PROFESOR';

Escribir ' '

Escribir 'El salario inicial es de S./1500';

s = 1500;

i = 1;

Mientras i<=6 hacer

s = s + 0.10*s;

Escribir 'El salario con el incremento del 10% en el año ',i,' es: ',s;

i = i + 1;

FinMientras

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


DIAGRAMA DE FLUJO:

CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double i;

double s;

System.out.println("PROGRAMA PARA CALCULAR EL SALARIO DE UN


PROFESOR");

System.out.println(" ");

System.out.println("El salario inicial es de S./1500");

s = 1500;

i = 1;

while (i<=6) {

s = s+0.10*s;

System.out.println("El salario con el incremento del 10% en el año


"+i+" es: "+s);
i = i+1;

}}}

EJECUCION O PRUEBA EN CONSOLA:

2. “El náufrago satisfecho” ofrece hamburguesas sencillas (S), doble(D) y triples (T), las
cuales tienen un costo de $20, $25 y $28 respectivamente. La empresa acepta tarjetas
de crédito con un rango de 5% sobre la compra. Suponiendo que los clientes
adquieren N hamburguesas, las cuales pueden ser de diferentes tipos, realice un
algoritmo para determinar cuánto deben pagar. Represéntelo en diagrama de flujo,
pseudocodigo y diagrama N/S.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir c,p,tipo como real;

Escribir 'PROGRAMA PARA CALCULAR EL PRECIO TOTAL DE HAMBURGUESAS';

Escribir ' ';

Escribir 'Cuantas hamburguesas desea: ';

leer c;

Escribir 'Ingrese el tipo 1(Simple), 2(Doble) y 3(Triple): ';

leer tipo;

segun tipo
1:

Escribir 'Eligio el tipo sencillas (S)';

p = c*20 + c*20*0.05;

Escribir 'El total a pagar es: ',p;

2:

Escribir 'Eligio el tipo doble (D)';

p = c*25 + c*25*0.05;

Escribir 'El total a pagar es: ',p;

3:

Escribir 'Eligio el tipo triple (T)';

p = c*28 + c*28*0.05;

Escribir 'El total a pagar es: ',p;

De Otro Modo:

Escribir 'No es un tipo de hamburgusa.'

FinSegun

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


DIAGRAMA DE FLUJO:

CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double c;

double p;

int tipo;

System.out.println("PROGRAMA PARA CALCULAR EL PRECIO TOTAL DE


HAMBURGUESAS");

System.out.println(" ");

System.out.println("Cuantas hamburguesas desea: ");

c = entrada.nextDouble();

System.out.println("Ingrese el tipo 1(Simple), 2(Doble) y 3(Triple): ");

tipo = entrada.nextInt();

switch (tipo) {

case 1:
System.out.println("Eligio el tipo sencillas (S)");

p = c*20+c*20*0.05;

System.out.println("El total a pagar es: "+p);

break;

case 2:

System.out.println("Eligio el tipo doble (D)");

p = c*25+c*25*0.05;

System.out.println("El total a pagar es: "+p);

break;

case 3:

System.out.println("Eligio el tipo triple (T)");

p = c*28+c*28*0.05;

System.out.println("El total a pagar es: "+p);

break;

default:

System.out.println("No es un tipo de hamburgusa.");

}}}

EJECUCIÓN O PRUEBA EN CONSOLA:


3. Se requiere un algoritmo para determinar, de N cantidades, cuantas son cero, cuantas
son menores a cero y cuantas son mayores a cero. Realice el diagrama de flujo, el
pseudocodigo y el diagrama N/S para representarlo utilizando el ciclo apropiado.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir c,n,i,x,m,j,l como real;

Escribir 'PROGRAMA PARA DETERMINAR SI UN NUMERO ES POSITIVO O NEGATIVO';

Escribir ' ';

Escribir 'Cuantos numeros va a ingresar: '

leer n;

m = 0;

j = 0;

l = 0;

para i=1 hasta n Hacer

Escribir 'Ingrese el numero ',i,': ';

leer x;

si x = 0 Entonces

m = m+1;

FinSi

si x < 0 Entonces

j = j + 1;

FinSi

si x > 0 Entonces

l = l + 1;

FinSi

FinPara

Escribir 'Lo numeros iguales a cero son: ',m;

Escribir 'Lo numeros menores a cero son: ',j;

Escribir 'Lo numeros mayores a cero son: ',l;

FinProceso
EJECUCION O PRUEBA EN CONSOLA:

DIAGRAMA DE FLUJO
CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double c;

double i;

double j;

double l;

double m;

double n;

double x;

System.out.println("PROGRAMA PARA DETERMINAR SI UN NUMERO ES


POSITIVO O NEGATIVO");

System.out.println(" ");

System.out.println("Cuantos numeros va a ingresar: ");

n = entrada.nextDouble();

m = 0;

j = 0;

l = 0;

for (i=1;i<=n;i++) {

System.out.println("Ingrese el numero "+i+": ");

x = entrada.nextDouble();

if (x==0) {

m = m+1;

if (x<0) {

j = j+1;

}
if (x>0) {

l = l+1;

System.out.println("Lo numeros iguales a cero son: "+m);

System.out.println("Lo numeros menores a cero son: "+j);

System.out.println("Lo numeros mayores a cero son: "+l);

EJECUCION O PRUEBA EN CONSOLA:


4. Una compañía fabrica focos de colores (verdes, blancos y rojos). Se desea contabilizar,
de un lote de N focos, el número de focos de cada color que hay en existencia.
Desarrolle un algoritmo para desarrollar esto y represéntelo mediante un diagrama de
flujo, el pseudocodigo y el diagrama N/S, utilizando el ciclo apropiado.

Solución:

PSEUDOCOFDIGO:

Proceso SESION_9

Definir c,r,v,b como real;

Escribir 'PROGRAMA PARA DETERMINAR LA CANTIDAD DE FOCOS';

Escribir ' ';

Escribir 'Ingrese la cantidad de focos que hay: '

leer c;

Escribir 'Ingrese los de color rojo: ';

leer r;

Escribir 'Ingrese los de colo verde: ';

leer v;

b = c-v-r;

Escribir 'La cantidad de focos blancos es; ',b;

Escribir 'La cantidad de focos verdes es; ',v;

Escribir 'La cantidad de focos rojos es; ',r;

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


DIAGRAMA DE FLUJO:

CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double b;

double c;

double r;

double v;

System.out.println("PROGRAMA PARA DETERMINAR LA CANTIDAD DE


FOCOS");

System.out.println(" ");

System.out.println("Ingrese la cantidad de focos que hay: ");

c = entrada.nextDouble();
System.out.println("Ingrese los de color rojo: ");

r = entrada.nextDouble();

System.out.println("Ingrese los de colo verde: ");

v = entrada.nextDouble();

b = c-v-r;

System.out.println("La cantidad de focos blancos es; "+b);

System.out.println("La cantidad de focos verdes es; "+v);

System.out.println("La cantidad de focos rojos es; "+r);

EJECUCION O PRUEBA EN CONSOLA:


5. Se requiere un algoritmo para determinar cuánto ahorrará una persona en pesos
diariamente y en un año, si ahorra 3c, el primero de enero, 9 el dos de enero, 27 el 3
de enero y así sucesivamente todo el año. Represente la solución mediante diagrama
de flujo, el pseudocodigo y el diagrama N/S, utilizando un ciclo apropiado.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir s,i,a,suma como real;

Escribir 'PROGRAMA PARA DETERMINAR CUANTO AHORRA UNA PERSONA.';

Escribir ' ';

suma = 0;

Para i=1 hasta 30 Hacer

a = 3^i;

suma = suma + a;

FinPara

Escribir suma;

Escribir 'suponiendo que es un año comercial'

s = suma*12;

Escribir 'El ahorro durante un alo es: ',s;

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


DIAGRAMA DE FLUJO:

CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double a;

double i;

double s;

double suma;

System.out.println("PROGRAMA PARA DETERMINAR CUANTO AHORRA UNA


PERSONA.");

System.out.println(" ");

suma = 0;
for (i=1;i<=30;i++) {

a = Math.pow(3,i);

suma = suma+a;

System.out.println(suma);

System.out.println("suponiendo que es un año comercial");

s = suma*12;

System.out.println("El ahorro durante un alo es: "+s);

EJECUCION O PRUEBA EN CONSOLA:

6. Resuelva el ejercicio 1 mediante a) un ciclo repetir b) un ciclo desde

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir i,s como real;

Escribir 'PROGRAMA PARA CALCULAR EL SALARIO DE UN PROFESOR';

Escribir ' '

Escribir 'El salario inicial es de S./1500';


s = 1500;

i = 1;

Repetir

s = s + 0.10*s;

Escribir 'El salario con el incremento del 10% en el año ',i,' es: ',s;

i = i + 1;

Hasta Que i=6

FinProceso

EJERCICIO 1 CON CICLO DESDE O PARA

Proceso SESION_9

Definir i,s como real;

Escribir 'PROGRAMA PARA CALCULAR EL SALARIO DE UN PROFESOR';

Escribir ' '

Escribir 'El salario inicial es de S./1500';

s = 1500;

i = 1;

Para i=1 hasta 6 hacer

s = s + 0.10*s;

Escribir 'El salario con el incremento del 10% en el año ',i,' es: ',s;

finpara

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


7. Resuelva el problema 2, mediante: a) un ciclo mientras y b) un ciclo desde.

Solución:

Disculpe profesor, pero no se me ocurre como hacer la 2 con un ciclo mientras o con un ciclo
para, solo se me ocurre hacerlo con si, finsi, y con según.

8. Realice un algoritmo para determinar cuánto pagara una persona que adquiere N
artículos, los cuales están de promoción. Considere que si su precio es mayor o igual a
$200 se le aplica un descuento de 15%, y si su precio es mayor a $100 pero menor a
$200, el descuento es del 12%; de lo contrario, solo se aplica 10%. Se debe saber cuál
es el costo y el descuento que tendrá cada uno de los artículos y finalmente se pagará
por todos los artículos obtenidos. Represente la solución mediante el diagrama de
flujo, el pseudocodigo y el diagraman N/S.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir c,ca,p como real;

Escribir 'PROGRAMA PARA CALCULAR EL PRECIO DE LOS ARTICULOS.';

Escribir ' ';

Escribir 'Ingrese el costo del articulo: ';

leer c;

Escribir 'Ingrese la cantidad de articulos que desea: ';

leer ca;

p = ca*c;

si p >=200 entonces

p = p - p*0.15;

Escribir 'El precio a pagar con el 15% de descuento es: ',p;

FinSi

si p >100 y p<200 entonces

p = p - p*0.12;

Escribir 'El precio a pagar con el 12% de descuento es: ',p;

FinSi

si p <100 entonces

p = p - p*0.10;

Escribir 'El precio a pagar con el 10% de descuento es: ',p;

FinSi
FinProceso

EJECUCION O PRUEBA EN CONSOLA:

DIAGRAMA DE FLUJO:
CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double c;

double ca;

double p;

System.out.println("PROGRAMA PARA CALCULAR EL PRECIO DE LOS


ARTICULOS.");

System.out.println(" ");

System.out.println("Ingrese el costo del articulo: ");

c = entrada.nextDouble();

System.out.println("Ingrese la cantidad de articulos que desea: ");

ca = entrada.nextDouble();

p = ca*c;

if (p>=200) {

p = p-p*0.15;

System.out.println("El precio a pagar con el 15% de descuento es: "+p);

if (p>100 && p<200) {

p = p-p*0.12;

System.out.println("El precio a pagar con el 12% de descuento es: "+p);

if (p<100) {

p = p-p*0.10;

System.out.println("El precio a pagar con el 10% de descuento es: "+p);

}}}
EJECUCION O PRUEBA EN CONSOLA:

9. Un cliente de un banco deposita equis cantidad de pesos cada mes en una cuenta de
ahorros. La cuenta recibe un interés fijo durante un año del 10% anual. Realice un
algoritmo para determinar el total de la inversión final de cada año en los próximos N
años. Represente la solución mediante diagrama de flujo, el pseudocodigo y el
diagrama N/S.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir c,i,a,suma,t como real;

Escribir 'PROGRAMA PARA CALCULAR EL TOTAL DE LA INVERSION DE UN CLIENTE.';

Escribir ' ';

Escribir 'Ingrese la cantidad de dinero a ingresar por mes: ';

leer c;

Escribir 'Ingrese la cantidad de años de servicio del banco: '

leer a;

t = c*12;

suma = 0;

para i=1 hasta a Hacer


t = t + t*0.10;

suma = suma + t;

FinPara

Escribir 'El totañ de la inversion en los ',a,' años es: ',suma;

FinProceso

EJECUCION O PRUEBA EN CONSOLA:

DIAGRAMA DE FLUJO:
CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double a;

double c;

double i;

double suma;

double t;

System.out.println("PROGRAMA PARA CALCULAR EL TOTAL DE LA INVERSION


DE UN CLIENTE.");

System.out.println(" ");

System.out.println("Ingrese la cantidad de dinero a ingresar por mes: ");

c = entrada.nextDouble();

System.out.println("Ingrese la cantidad de años de servicio del banco: ");

a = entrada.nextDouble();

t = c*12;

suma = 0;

for (i=1;i<=a;i++) {

t = t+t*0.10;

suma = suma+t;

System.out.println("El totañ de la inversion en los "+a+" años es: "+suma);

}
EJECUCION O PRUEBA EN CONSOLA:

10. Los directivos de equis escuela desean determinar cuál es la edad promedio de cada
uno de los M salones y cuál es la edad promedio de toda la escuela. Realice un
algoritmo para determinar estos promedios y represente la solución mediante un
diagrama de flujo, el pseudocodigo y el diagrama N/S.

Solución:

PSEUDOCODIGO:

Proceso SESION_9

Definir c,i,a,e,suma,promedio,j como real;

Escribir 'PROGRAMA PARA CALCULAR LA EDAD PROMEDIO DEL COLEGIO.';

Escribir ' ';

Escribir 'Ingrese la cantidad de salones del colegio: ';

leer c;

suma = 0;

para j=1 hasta c con paso 1 hacer

Escribir 'Ingrese la cantidad de alumnos del salon ',j,': ';

leer a;

para i=1 hasta a Con Paso 1 Hacer

Escribir 'Ingrese la edad del estudiante numero ',i,': ';


leer e;

suma = suma + e;

FinPara

FinPara

promedio = suma/(i+1);

Escribir 'La edad promdeio de todo el colegio es: ',promedio;

FinProceso

EJECUCION O PRUEBA EN CONSOLA:

DIAGRAMA DE FLUJO:
CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

double a;

double c;

double e;

double i=1;

double j;

double promedio;

double suma;

System.out.println("PROGRAMA PARA CALCULAR LA EDAD PROMEDIO DEL


COLEGIO.");

System.out.println(" ");

System.out.println("Ingrese la cantidad de salones del colegio: ");

c = entrada.nextDouble();

suma = 0;

for (j=1;j<=c;j++) {

System.out.println("Ingrese la cantidad de alumnos del salon "+j+": ");

a = entrada.nextDouble();

for (i=1;i<=a;i++) {

System.out.println("Ingrese la edad del estudiante numero


"+i+": ");

e = entrada.nextDouble();

suma = suma+e;

}
promedio = suma/(i+1);

System.out.println("La edad promdeio de todo el colegio es: "+promedio);

}}

EJECUCION O PRUEBA EN CONSOLA:

11. Realice un algoritmo y represéntelo mediante un diagrama de flujo para obtener la


función exponencial, la cual está dada por:

Solución:

PSEUDOCODIGO:

Proceso SESION_9

definir i,n,f,x como entero;

Definir funcionT, factorial como real;

Escribir Sin Saltar ' Cuantos terminos desea: ';

leer n;

Escribir Sin Saltar ' Digite el valor de x: ';

leer x;
funcionT=1;i=1;

Mientras i<n hacer

factorial=1;

para f<-1 hasta i hacer

factorial = factorial*f;

FinPara

funcionT= funcionT+(x^i)/factorial;

i=i+1

FinMientras

Escribir " ";

Escribir Sin Saltar "e^",x,"= ",funcionT;

FinProceso

EJECUCION O PRUEBA EN CONSOLA:


DIAGRAMA DE FLUJO:

CODIGO EN JAVA:

package area;

import java.util.Scanner;

public class Area {

public static void main(String[] args) {

Scanner entrada = new Scanner(System.in);

int f;

double factorial;

double funciont;

int i;

int n;

int x;

System.out.print(" Cuantos terminos desea: ");

n = entrada.nextInt();

System.out.print(" Digite el valor de x: ");


x = entrada.nextInt();

funciont = 1;

i = 1;

while (i<n) {

factorial = 1;

for (f=1;f<=i;f++) {

factorial = factorial*f;

funciont = funciont+(Math.pow(x,i))/factorial;

i = i+1;

System.out.println(" ");

System.out.print("e^"+x+"= "+funciont);

EJECUCION O PRUEBA EN CONSOLA:

También podría gustarte