Está en la página 1de 51

UNIVERSIDAD NACIONAL DEL CALLAO

FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA


ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA

Progra
mación Digital
LABORATORIO 02

APELLIDOS Y NOMBRES: VEGA CABALLERO LUIS ALBERTO


CÓDIGO:2213210011
PROFESOR: MENDOZA APAZA FERNANDO
GRUPO HORARIO:01L(91G)

CALLAO – BELLAVISTA
2023
EJERCICIOS PROPUESTOS
1)Realice un algoritmo para determinar si una persona puede votar con base en su
edad en las próximas elecciones. Construya el diagrama de flujo, el pseudocódigo y
el diagrama N/S.
*Pseudocódigo y Diagrama de Flujo:
a) Condicional Doble:
-Pseudocódigo:
Proceso unapersonapuedevotar

Definir edad Como Entero

Escribir "Ingresa una edad"

leer edad

si edad >= 18 Entonces

Escribir "Puedes votar eres mayor de edad"

SiNo

Escribir "No puedes votar eres menor de edad"

FinSi

FinAlgoritmo
-Diagrama de Flujo:

b) Condicional Doble Anidado:


-Pseudocódigo:
Proceso unapersonapuedevotar

definir edad Como Entero

escribir "ingresa una edad"

leer edad

si edad >= 18 Entonces

escribir "puedes votar eres mayor de edad"

sino

si 18>=edad Entonces

escribir "no puedes votar eres menor de edad"

SiNo

escribir "puedes votar tienes la edad mínima 18 años"

FinSi
FinSi

FinProceso

-Diagrama de Flujo:

c) Condicional Simple:
-Pseudocódigo:
Proceso unapersonapuedevotar
definir edad Como Entero

escribir "ingresa una edad"

leer edad

si edad >18 Entonces

escribir "puedes votar eres mayor de edad"

FinSi

si 18>edad Entonces

escribir "no puedes votar eres menor de edad"

FinSi

si edad=18 Entonces

escribir "puedes votar tienes la edad mínima 18 años"

FinSi

FinProceso
-Diagrama de Flujo:

*Ejecución o Prueba de Consola:


*Código en C++
#include<iostream>

using namespace std;

int main() {

int edad;

cout << "ingresa una edad" << endl;

cin >> edad;

if (edad>18) {

cout << "puedes votar eres mayor de edad" << endl;

if (18>edad) {

cout << "no puedes votar eres menor de edad" << endl;

if (edad==18) {

cout << "puedes votar tienes la edad mínima 18 años" << endl;

return 0;

*Código en Java:
public class unapersonapuedevotar {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

int edad;

System.out.println("ingresa una edad");

edad = Integer.parseInt(bufEntrada.readLine());

if (edad>18) {

System.out.println("puedes votar eres mayor de edad");

}
if (18>edad) {

System.out.println("no puedes votar eres menor de edad");

if (edad==18) {

System.out.println("puedes votar tienes la edad mínima 18 años");

*Diagrama N/S:
2)Realice un algoritmo para determinar el sueldo semanal de un trabajador con base en las
horas trabajadas y el pago por hora, considerando que después de las 40 horas cada hora se
considera como excedente y se paga el doble. Construya el diagrama de flujo, el
pseudocódigo y el diagrama N/S.
*Pseudocódigo y Diagrama de Flujo:
a) Condicional Doble:
-Pseudocódigo:
Algoritmo sueldosemanaldeuntrabajador

Definir horas,extra Como Entero

Definir pago,sueldo como real

Escribir "Ingresa las horas"

Leer horas

Escribir "Ingresa el pago por hora"

Leer pago

Si horas>40 Entonces

extra=horas-40

sueldo=(40*pago)+(extra * pago *2)

SiNo

sueldo=horas*pago

Fin Si

Escribir "el sueldo por ",horas,"hora es:$",sueldo

FinAlgoritmo
-Diagrama de Flujo:
b) Condicional Doble Anidado
Algoritmo sueldosemanaldeuntrabajador

Definir horas,extra Como Entero

Definir pago,sueldo como real

Escribir "Ingresa las horas"

Leer horas

Escribir "Ingresa el pago por hora"

Leer pago

Si horas>40 Entonces

extra=horas-40

sueldo=(40*pago)+(extra * pago *2)

SiNo

Si 40>=horas Entonces

sueldo=horas*pago
SiNo

sueldo=horas*pago

Fin Si

Fin Si

Escribir "el sueldo por ",horas,"hora es:$",sueldo

FinAlgoritmo

-Diagrama de Flujo:

c) Condicional Simple:
-Pseudocódigo:
Algoritmo sueldosemanaldeuntrabajador

Definir horas,extra Como Entero

Definir pago,sueldo como real

Escribir "Ingresa las horas"

Leer horas

Escribir "Ingresa el pago por hora"

Leer pago

Si horas>40 Entonces

extra=horas-40

sueldo=(40*pago)+(extra * pago *2)

FinSi

Si 40>=horas Entonces

sueldo=horas*pago

FinSi

Si horas=40 Entonces

sueldo=horas*pago

Fin Si
Escribir "el sueldo por ",horas,"hora es:$", sueldo

FinAlgoritmo
-Diagrama de Flujo:

*Ejecución o Prueba de Consola


*Código en C++:
#include<iostream>

using namespace std;

int main() {
int extra;

int horas;

float pago;

float sueldo;

cout << "Ingresa las horas" << endl;

cin >> horas;

cout << "Ingresa el pago por hora" << endl;

cin >> pago;

if (horas>40) {

extra = horas-40;

sueldo = (40*pago)+(extra*pago*2);

} else {

sueldo = horas*pago;

cout << "el sueldo por " << horas << "hora es:$" << sueldo << endl;

return 0;

*Código en Java:
import java.io.*;

public class sueldosemanaldeuntrabajador {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

int extra;

int horas;

double pago;

double sueldo;

System.out.println("Ingresa las horas");

horas = Integer.parseInt(bufEntrada.readLine());
System.out.println("Ingresa el pago por hora");

pago = Double.parseDouble(bufEntrada.readLine());

if (horas>40) {

extra = horas-40;

sueldo = (40*pago)+(extra*pago*2);

} else {

sueldo = horas*pago;

System.out.println("el sueldo por "+horas+"hora es:$"+sueldo);

*Diagrama N/S:

3) El 14 de febrero una persona desea comprarle un regalo al ser querido que más
aprecia en ese momento, su dilema radica en qué regalo puede hacerle, las
alternativas que tiene son las siguientes:
 Regalo Costo Tarjeta $10.00 o menos
 Chocolates $11.00 a $100.00
 Flores $101.00 a $250.00
 Anillo Más de $251.00
Se requiere un diagrama de flujo con el algoritmo que ayude a determinar qué
regalo se le puede comprar a ese ser tan especial por el día del amor y la amistad.
*Pseudocódigo y Diagrama de Flujo:
a) Condicional Doble:
-Pseudocódigo:
Algoritmo regaloquesepuedecomprar

definir cantidad Como Real

Escribir "Ingresa una cantidad de dinero"

leer cantidad

si cantidad > 251 Entonces

Escribir "Puedes regalar un anillo"

SiNo

Escribir "Puedes regalar flores"

FinSi

FinAlgoritmo

-Diagrama de Flujo:
b) Condicional doble Anidado:
-Pseudocódigo:
Algoritmo regaloquesepuedecomprar

definir cantidad Como Real

Escribir "Ingresa una cantidad de dinero"

leer cantidad

si cantidad > 251 Entonces

Escribir "Puedes regalar un anillo"

SiNo

si cantidad >= 101 y cantidad <= 250 Entonces

Escribir "Puedes regalar flores"

SiNo

si cantidad >= 11 y cantidad <= 100 Entonces

Escribir "Puedes regalar chocolates"

SiNo

Escribir "Puedes regalar una tarjeta"

FinSi

FinSi

FinSi

FinAlgoritmo
-Diagrama de Flujo:
c)Condicional Simple:
-Pseudocódigo:
Algoritmo regaloquesepuedecomprar

Definir cantidad Como Real

Escribir "Ingresa una cantidad de dinero"

leer cantidad

si cantidad > 251 Entonces

Escribir "Puedes regalar un anillo"

FinSi

si cantidad >= 101 y cantidad <= 250 Entonces

Escribir "Puedes regalar flores"

FinSi

si cantidad >= 11 y cantidad <= 100 Entonces

Escribir "Puedes regalar chocolates"


FinSi

Si cantidad < 11 entonces

Escribir "Puedes regalar una tarjeta"

FinSi

FinAlgoritmo

-Diagrama de Flujo:
*Ejecución o Código de Control:
*Código C++:
#include<iostream>
using namespace std;

int main() {

float cantidad;

cout << "Ingresa una cantidad de dinero" << endl;

cin >> cantidad;

if (cantidad>251) {

cout << "Puedes regalar un anillo" << endl;

} else {

if (cantidad>=101 && cantidad<=250) {

cout << "Puedes regalar flores" << endl;

} else {

if (cantidad>=11 && cantidad<=100) {

cout << "Puedes regalar chocolates" << endl;

} else {

cout << "Puedes regalar una tarjeta" << endl;

return 0;

*Código Java:
import java.io.*;

public class regaloquesepuedecomprar {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

double cantidad;

System.out.println("Ingresa una cantidad de dinero");

cantidad = Double.parseDouble(bufEntrada.readLine());

if (cantidad>251) {

System.out.println("Puedes regalar un anillo");


} else {

if (cantidad>=101 && cantidad<=250) {

System.out.println("Puedes regalar flores");

} else {

if (cantidad>=11 && cantidad<=100) {

System.out.println("Puedes regalar chocolates");

} else {

System.out.println("Puedes regalar una tarjeta");

4)El dueño de un estacionamiento requiere un diagrama de flujo con el algoritmo


que le permita determinar cuanto debe cobrar por el uso del estacionamiento a sus
clientes.Las tarifas que se tienen son los siguientes
Las dos primeras horas a ~5.00c/u
Las siguientes tres a “4.00
Las 5 siguientes a $3.00 c/u

Después de diez horas el costo por cada una es de dos pesos.

*Pseudocódigo:
Algoritmo detarea

definir total como real

definir n como entero

Escribir "Ingresa las horas"


Leer n

Si n <= 2 Entonces

total = n * 5

SiNo

Si n<=5 Entonces

total = ((n-2)*4)+10

SiNo

Si n<=10 Entonces

total = ((n-5)*3)+22

SiNo

total = ((n-10)*2)+37

FinSi

FinSi

FinSi

Escribir "El total a pagar por ",n," horas es: $",total

FinAlgoritmo

*Diagrama de Flujo:(Doble Condicional Anidada)


*Ejecución o Código de Control:

*Código C++:
#include<iostream>

using namespace std;

int main() {

int n;

float total;

cout << "Ingresa las horas" << endl;

cin >> n;
if (n<=2) {

total = n*5;

} else {

if (n<=5) {

total = ((n-2)*4)+10;

} else {

if (n<=10) {

total = ((n-5)*3)+22;

} else {

total = ((n-10)*2)+37;

cout << "El total a pagar por " << n << " horas es: $" << total << endl;

return 0;

*Código en Java:
import java.io.*;

public class detarea {

public static void main(String args[]) throws IOException {


BufferedReader bufEntrada = new BufferedReader(new
InputStreamReader(System.in));
int n;
double total;
System.out.println("Ingresa las horas");
n = Integer.parseInt(bufEntrada.readLine());
if (n<=2) {
total = n*5;
} else {
if (n<=5) {
total = ((n-2)*4)+10;
} else {
if (n<=10) {
total = ((n-5)*3)+22;
} else {
total = ((n-10)*2)+37;
}
}
}
System.out.println("El total a pagar por "+n+" horas es: $"+total);
}

5) Se tiene el nombre y la edad de tres personas se desea saber el nombre y


la edad de la persona de menor edad. Realice el algoritmo correspondiente y
represéntelo con un diagrama de flujo,pseudocódigo y diagrama N/S.

*Pseudocódigo y Diagrama de Flujo:

-Pseudocódigo:
Algoritmo nombreyedaddelmenordeedad

Definir nombre1,nombre2,nombre3 Como Caracter

Definir edad1,edad2,edad3 Como Entero

Escribir "Escribe tu nombre"

leer nombre1

Escribir "Escribe tu edad"

leer edad1

Escribir "Escribe tu nombre"

leer nombre2
Escribir "Escribe tu edad"

leer edad2

Escribir "Escribe tu nombre"

leer nombre3

Escribir "Escribe tu edad"

leer edad3

si edad1 < edad2 Entonces

si edad1<edad3 Entonces

Escribir "La edad menor es de: ",nombre1

Escribir edad1," años"

SiNo

Escribir "La edad menor es de: ",nombre3

Escribir edad3," años"

FinSi

SiNo

si edad2 < edad3 Entonces

Escribir "La edad menor es de: ",nombre2

Escribir edad2," años"

SiNo

Escribir "La edad menor es de: ",nombre3

Escribir edad3," años"

FinSi

FinSi

FinAlgoritmo
-Diagrama de Flujo:(Doble Condicional Anidado)
*Ejecución o Código de Control

*Código C++:
include<iostream>

using namespace std;

int edad1;

int edad2;

int edad3;

string nombre1;

string nombre2;

string nombre3;

cout << "Escribe tu nombre" << endl;

cin >> nombre1;

cout << "Escribe tu edad" << endl;

cin >> edad1;

cout << "Escribe tu nombre" << endl;

cin >> nombre2;

cout << "Escribe tu edad" << endl;

cin >> edad2;

cout << "Escribe tu nombre" << endl;

cin >> nombre3;

cout << "Escribe tu edad" << endl;

cin >> edad3;

if (edad1<edad2) {

if (edad1<edad3) {

cout << "La edad menor es de: " << nombre1 << endl;

cout << edad1 << " años" << endl;

} else {

cout << "La edad menor es de: " << nombre3 << endl;

cout << edad3 << " años" << endl;

} else {

if (edad2<edad3) {
cout << "La edad menor es de: " << nombre2 << endl;

cout << edad2 << " años" << endl;

} else {

cout << "La edad menor es de: " << nombre3 << endl;

cout << edad3 << " años" << endl;

return 0;

*Código en Java:
import java.io.*;

public class nombreyedaddelmenordeedad {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

int edad1;

int edad2;

int edad3;

String nombre1;

String nombre2;

String nombre3;

System.out.println("Escribe tu nombre");

nombre1 = bufEntrada.readLine();

System.out.println("Escribe tu edad");

edad1 = Integer.parseInt(bufEntrada.readLine());

System.out.println("Escribe tu nombre");

nombre2 = bufEntrada.readLine();

System.out.println("Escribe tu edad");
edad2 = Integer.parseInt(bufEntrada.readLine());

System.out.println("Escribe tu nombre");

nombre3 = bufEntrada.readLine();

System.out.println("Escribe tu edad");

edad3 = Integer.parseInt(bufEntrada.readLine());

if (edad1<edad2) {

if (edad1<edad3) {

System.out.println("La edad menor es de: "+nombre1);

System.out.println(edad1+" años");

} else {

System.out.println("La edad menor es de: "+nombre3);

System.out.println(edad3+" años");

} else {

if (edad2<edad3) {

System.out.println("La edad menor es de: "+nombre2);

System.out.println(edad2+" años");

} else {

System.out.println("La edad menor es de: "+nombre3);

System.out.println(edad3+" años");

}
6) Realice el diagrama de flujo,el pseudocódigo y l diagrama N/Sque muestran el
algoritmo para determinar el costo y el descuento que tendra un articulo, 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 de 12%, y si es menor
a $100, sólo 10%.
*Pseudocódigo:
Proceso costoydescuentoquetendráunartículo
Definir precio, descuento como real
Escribir "Ingresa el precio del artículo"
Leer precio
Si precio >= 200 Entonces
descuento = precio * .15

Escribir "Se aplico un 15% de descuento"

SiNo
Si precio >= 100 Entonces
descuento = precio * .12

Escribir "Se aplico un 12% de descuento"

SiNo
descuento = precio * .10

Escribir "Se aplico un 10% de descuento"

FinSi

FinSi
Escribir "El precio con descuento aplicado es: $",precio-descuento
Escribir "El descuento aplicado es: $",descuento
FinProceso
*Diagrama de Flujo:(Condicional Doble Anidado)
*Ejecución o Código de Control:

*Código en C++:
#include<iostream>

using namespace std;

int main() {
float descuento;

float precio;

cout << "Ingresa el precio del artículo" << endl;

cin >> precio;

if (precio>=200) {

descuento = precio*.15;

cout << "Se aplico un 15% de descuento" << endl;

} else {

if (precio>=100) {

descuento = precio*.12;

cout << "Se aplico un 12% de descuento" << endl;

} else {

descuento = precio*.10;

cout << "Se aplico un 10% de descuento" << endl;

cout << "El precio con descuento aplicado es: $" << precio-descuento << endl;

cout << "El descuento aplicado es: $" << descuento << endl;

return 0;

*Código en Java:
import java.io.*;

public class costoydescuentoquetendráunartículo {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

double descuento;

double precio;

System.out.println("Ingresa el precio del artículo");


precio = Double.parseDouble(bufEntrada.readLine());

if (precio>=200) {

descuento = precio*.15;

System.out.println("Se aplico un 15% de descuento");

} else {

if (precio>=100) {

descuento = precio*.12;

System.out.println("Se aplico un 12% de descuento");

} else {

descuento = precio*.10;

System.out.println("Se aplico un 10% de descuento");

System.out.println("El precio con descuento aplicado es: $"+precio-descuento);

System.out.println("El descuento aplicado es: $"+descuento);

*Diagrama N/S:
7) El presidente de la república ha decidido estimular a todos los estudiantes de una
universidad mediante la asignación de becas mensuales, para esto se tomarán en
consideración los siguientes criterios:
Para alumnos mayores de 18 años con promedio mayor o igual a 9, la beca será de
$2000.00; con promedio mayor o igual a 7.5, de $1000.00; para los promedios
menores de 7.5 pero mayores o iguales a 6.0, de $500.00; a los demás se les
enviará una carta de invitación incitándolos a que estudien más en el próximo ciclo
escolar.
A los alumnos de 18 años o menores de esta edad, con promedios mayores o
iguales a 9, se les dará $3000; con promedios menores a 9 pero mayores o iguales
a 8, $2000; para los alumnos con promedios menores a 8 pero mayores o iguales a
6, se les dará $100, y a los alumnos que tengan promedios menores a 6 se les
enviará carta de invitación.Realice el algoritmo correspondiente y represéntelo con
un diagrama de flujo.

*Pseudocódigo:
Algoritmo Tecorrespondeunabeca

definir edad,beca como entero

definir promedio como real


Escribir "Ingresa una edad"

Leer edad

Escribir "Ingresa tu promedio"

Leer promedio

Si edad > 18 Entonces

Si promedio >= 9 Entonces

beca = 2000

SiNo

Si promedio >= 7.5 Entonces

beca = 1000

SiNo

Si promedio >= 6 Entonces

beca = 500

SiNo

Escribir "Estudia mas para el proximo ciclo escolar"

FinSi

FinSi

FinSi

SiNo

Si promedio >= 9 Entonces

beca = 3000

SiNo

Si promedio >= 8 Entonces

beca = 2000

SiNo

Si promedio >= 6 Entonces

beca = 1000

SiNo

Escribir "Estudia mas para el proximo ciclo escolar"

FinSi

FinSi
FinSi

FinSi

Escribir "Te corresponde una beca de $",beca

FinAlgoritmo

*Diagrama de Flujo (Condicional Doble Anidado)


*Ejecución o Código de Control:

*Código en C++:
#include<iostream>

using namespace std;

int main() {

int beca;

int edad;

float promedio;

cout << "Ingresa una edad" << endl;

cin >> edad;

cout << "Ingresa tu promedio" << endl;

cin >> promedio;

if (edad>18) {

if (promedio>=9) {

beca = 2000;

} else {

if (promedio>=7.5) {

beca = 1000;

} else {

if (promedio>=6) {

beca = 500;

} else {

cout << "Estudia mas para el proximo ciclo escolar" << endl;

} else {

if (promedio>=9) {

beca = 3000;

} else {

if (promedio>=8) {

beca = 2000;

} else {
if (promedio>=6) {

beca = 1000;

} else {

cout << "Estudia mas para el proximo ciclo escolar" << endl;

cout << "Te corresponde una beca de $" << beca << endl;

return 0;

*Código en Java:
import java.io.*;

public class tecorrespondeunabeca {

public static void main(String args[]) throws IOException {

BufferedReader bufEntrada = new BufferedReader(new InputStreamReader(System.in));

int beca;

int edad;

double promedio;

System.out.println("Ingresa una edad");

edad = Integer.parseInt(bufEntrada.readLine());

System.out.println("Ingresa tu promedio");

promedio = Double.parseDouble(bufEntrada.readLine());

if (edad>18) {

if (promedio>=9) {

beca = 2000;

} else {

if (promedio>=7.5) {

beca = 1000;
} else {

if (promedio>=6) {

beca = 500;

} else {

System.out.println("Estudia mas para el proximo ciclo escolar");

} else {

if (promedio>=9) {

beca = 3000;

} else {

if (promedio>=8) {

beca = 2000;

} else {

if (promedio>=6) {

beca = 1000;

} else {

System.out.println("Estudia mas para el proximo ciclo escolar");

System.out.println("Te corresponde una beca de $"+beca);

También podría gustarte