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

ALGORITMOS

1. Construir un algoritmo que calcule el monto mensual que adeuda un cliente que compra un equipo de sonido al crdito, sabiendo que el monto de compra recibe un incremento del 19% de impuesto, as como, de 5% de inters mensual por cada letra que fracciona. a) Entradas:  Monto del equipo  Letras para pagar Salidas:  Total por letra a pagar mensualmente Datos adicionales:  Incremento del 19% de impuesto  Incremento del 5% de inters mensual Clculos:

 Impuesto a la venta =


 Costo total =    Costo por letra =
 

 Inters =   Costo total por letra a pagar =  Definicin de variables:

      

me = monto del equipo. ct = costo total. Igv = impuesto a la venta. nl= nmero de letras. Cl = costo por letra. Int = inters. ctl = costo total por letra a pagar mensualmente.

b) Pseudocdigo Inicio Leer (me, nl) Igv = me*0.19 ct = me + Igv

Cl = Int = Cl * 0.05 ctl = Int + Cl Escribir (ctl) Fin

c) Diagrama de Flujo

Inicio

me

Igv = me*0.19 ct = me + Igv

nl

Cl =

Int = Cl*0.05

Escribir (ctl)

Fin

d) Cdigo de C++ #include <cstdlib>

#include <iostream> using namespace std; int main() { float me,ct,Igv,nl,Cl,Int,ctl; cout<<"ingrese el monto del equipo"<<endl; cin>>me; Igv=me*0.19; ct=me+Igv; cout<<"el costo total a pagar es:"<<ct<<endl; cout<<"ingrese el numero de letras"<<endl; cin>>nl; Cl=ct/nl; Int=Cl*0.05; ctl=Int+Cl; cout<<"el total por letra a pagar es:"<<ctl<<endl; system("PAUSE"); return EXIT_SUCCESS; }

2. Un hospital a recibido una donacin especial que ser repartida de la siguiente manera: 45% para Medicina General, 30% para Cardiologa, 15% para Pediatra y el resto para Traumatologa. Disee un algoritmo que determine cuanto recibir cada rea. a) Entradas:  Monto de la donacin Salidas:  Medicina General Reibe  Cardiologia Reibe  Pediatria Reibe  Traumatologia Reibe Clculos:  Medicina general = Monto de la donacin * 0.45  Cardiologa = Monto de la donacin * 0.30  Pediatra = Monto de la donacin * 0.15

 Traumatologa= Monto de la donacin * 0.10 Definicin de variables:  d1: monto de la donacin  mg: Medicina General Reibe  car: Cardiologia Reibe  ped: Pediatria Reibe  tra: Traumatologia Reibe b) Pseudocdigo Inicio Leer d1 mg=d1*0.45 car=d1*0.30 ped=d1*0.15 tra=d1*0.10 Escribir (mg, car, ped, tra) Fin

c) Diagrama de Flujo

Inicio

d1

mg=d1*0.45 car=d1*0.30 ped=d1*0.15 tra=d1*0.10

Escribir (mg, car, ped, tra)

Fin

d) Cdigo de C++

#include <cstdlib> #include <iostream> using namespace std; int main() { double d1,mg,car,ped,tra; cout<<"ingrese el monto de la donacion"<<endl; cin>>d1; mg=d1*0.45; car=d1*0.30; ped=d1*0.15; tra=d1*0.10; cout<<"Medicina General Reibe"<<mg<<endl; cout<<"Cardiologia Reibe"<<car<<endl; cout<<"Pediatria Reibe"<<ped<<endl; cout<<"Traumatologia Reibe"<<tra<<endl; system("PAUSE"); return EXIT_SUCCESS; }

3. Tres personas deciden invertir su dinero para fundar una empresa. Cada una de ellas invierte una cantidad distinta. Obtener el porcentaje que cada quien invierte con respecto a la cantidad total invertida. a) Entradas:  Cantidad de persona 1  Cantidad de persona 2  Cantidad de persona 3 Salidas:  Porcentaje de persona 1  Porcentaje de persona 2  Porcentaje de persona 3

Clculos:  Cantidad total= Cantidad de persona 1 + Cantidad de persona 2 + Cantidad de persona 3  Porcentaje de persona 1= (Cantidad de persona 1*100) / Cantidad total  Porcentaje de persona 2= (Cantidad de persona 2*100) / Cantidad total  Porcentaje de persona 3= (Cantidad de persona 3*100) / Cantidad total Definicin de variables:        cp1: Cantidad de persona 1 cp2: Cantidad de persona 2 cp3: Cantidad de persona 3 ct: Cantidad total pp1: Porcentaje de persona 1 pp2: Porcentaje de persona 2 pp3: Porcentaje de persona 3

b) Pseudocdigo Inicio Leer (cp1, cp2, cp3) ct =cp1+cp2+cp3 pp1=cp1*100/ct pp2=cp2*100/ct pp3=cp3*100/ct Escribir (pp1, pp2, pp3) Fin

c) Diagrama de Flujo

Inicio

cp1, cp2, cp3

ct =cp1+cp2+cp3 pp1=(cp1*100) / ct pp2=(cp2*100) / ct pp3=(cp3*100) / ct

Escribir (pp1, pp2, pp3)

Fin

d) Cdigo de C++ #include<iostream> using namespace std; int main() { float cp1,cp2,cp3,ct,pp1,pp2,pp3; cout<<"ingrese cantidad persona 1"<<endl; cin>>cp1; cout<<"ingrese cantidad persona 2"<<endl; cin>>cp2; cout<<"ingrese cantidad persona 3"<<endl; cin>>cp3; ct=cp1+cp2+cp3; pp1=cp1*100/ct; pp2=cp2*100/ct; pp3=cp3*100/ct; cout<<"porcentaje persona 1 es"<<pp1<<endl;

cout<<"porcentaje persona 2 es"<<pp2<<endl; cout<<"porcentaje persona 3 es"<<pp3<<endl; system ("pause"); return 0; }

4. Disee un algoritmo que determine el porcentaje de varones y de mujeres que hay en un saln de clase. a) Entradas:  Cantidad de varones  Cantidad de mujeres Salidas:  Porcentaje de varones  Porcentaje de mujeres Clculos:  Cantidad total de alumnos= Cantidad de varones+ Cantidad de mujeres  Porcentaje de varones= (Cantidad de varones / Cantidad total) *100  Porcentaje de mujeres= (Cantidad de mujeres / Cantidad total) *100

Definicin de variables:  t: Cantidad total de alumnos  cv: Cantidad de varones  cm: Cantidad de mujeres  pv: Porcentaje de varones  pm: Porcentaje de mujeres b) Pseudocdigo Inicio Leer (cv,cm) t=cv+cm pv= (cv/t)*100 pm= (cm/t)*100 Escribir (pv, pm) Fin

c) Diagrama de Flujo

Inicio

cv, cm

t=cv+cm pv= (cv/t)*100 pm= (cm/t)*100

Escribir (pv, pm)

Fin

d) Cdigo de C++ #include <cstdlib> #include <iostream> using namespace std; int main() { float t,cv,cm,pv,pm; cout<<"ingrese la cantidad de varones en un salon de clases"<<endl; cin>>cv; cout<<"ingrese la cantidad de mujeres en un salon de clases"<<endl; cin>>cm; t=cv+cm; pv=(cv/t)*100; pm=(cm/t)*100;

cout<<"el porcentaje de varones es:"<<pv<<endl; cout<<"el porcentaje de mujeres es:"<<pm<<endl; system("PAUSE"); return EXIT_SUCCESS; }

5. En una tienda se ha puesto en oferta la venta de cierto tipo de producto ofreciendo un descuento fijo del 11% del monto de la compra. Disee un algoritmo que determine el monto original de la compra, el monto del descuento y el monto a pagar por la compra de cierta cantidad de unidades del producto.

a) Entradas:  Monto por producto  Cantidad de unidades Salidas:  Total a pagar en soles Clculos:  Descuento= Monto por producto*0.11  Total a pagar en soles= (Monto por producto descuento)* Cantidad de unidades Definicin de variables:  cant1: Monto por producto  unid: Cantidad de unidades  desc: descuento  mt: Total a pagar en soles b) Pseudocdigo Inicio Leer (cant1, unid) desc= (cant1*0.11) Leer (des) mt= (cant1-desc)*unid Escribir (mt) Fin

c) Diagrama de Flujo

Inicio

cant1, unid

desc= (cant1*0.11) mt= (cant1-desc)*unid

mt

Fin

d) Cdigo de C++ #include <cstdlib> #include <iostream> using namespace std; int main() { int cant1,unid,desc,mt; cout<<"ingrese el monto por producto:"<<endl; cin>>cant1; cout<<"ingrese la cantidad de unidades:"<<endl; cin>>unid; desc=(cant1*0.11); cout<<"el descuento es:"<<desc<<endl; mt=(cant1-desc)*unid; cout<<"el total a pagar es:"<<mt<<" soles"<<endl;

system("PAUSE"); return EXIT_SUCCESS; }

6. Disee un algoritmo para convertir una cantidad dada en pulgadas a pies, yardas y centmetros. Se sabe que: 1 yarda=3 pies 1 pie= 12 pulgadas 1 pulgada= 2,54 centmetros 1 metro= 100 centmetros a) Entradas:  Cantidad dada en pulgadas Salidas:  cantidad dada en centmetros  cantidad dada en metros  cantidad dada en pies  cantidad dada en yardas Clculos:  cantidad dada en centmetros= (2.54)* Cantidad dada en pulgadas  cantidad dada en metros= (2.54/100)* Cantidad dada en pulgadas  cantidad dada en pies= (1/12)* Cantidad dada en pulgadas  cantidad dada en yardas= (1/36)* Cantidad dada en pulgadas Definicin de variables:  c: cantidad dada en centmetros  m: cantidad dada en metros  p: cantidad dada en pies  y: cantidad dada en yardas  u: cantidad dada en pulgadas b) Pseudocdigo Inicio Leer (u) c=(2.54)*u m=(2.54/100)*u p=(1/12)*u y=(1/36)*u Escribir (c, m, p, y) Fin

c) Diagrama de Flujo

Inicio

c=(2.54)*u m=(2.54/100)*u p=(1/12)*u y=(1/36)*u

c, m, p, y

Fin

d) Cdigo de C++ #include <cstdlib> #include <iostream> using namespace std; int main() { //variables float u,p,y,c,m; cout<<"ingrese la cantidad dada en pulgadas"<<endl; cin>>u; //proceso c=(2.54)*u; m=(2.54/100)*u; p=u/12;

y=(u/36);

//salida cout<<"la cantidad dada en centimetros es:"<<c<<endl; cout<<"la cantidad dada en metros es:"<<m<<endl; cout<<"la cantidad dada en pies es:"<<p<<endl; cout<<"la cantidad dada en yardas es:"<<y<<endl; system("PAUSE"); return EXIT_SUCCESS; }

7. Dada la capacidad de un recipiente en galones, disee un algoritmo que exprese dicha capacidad en litros, metros cbicos y pies cbicos. Considere que: 1 pie cbico= 0,0283 metros cbicos 1 galn= 3,79 litros 1 metro cbico= 1000 litros a) Entradas:  Capacidad de un recipiente en galones Salidas:  capacidad del galn en litros  capacidad del galon en metros cubicos  capacidad del galon en pies cubicos Clculos:  Capacidad de un recipiente en galones=(3.79)* capacidad del galn en litros  capacidad del galn en litros=0.001* capacidad del galon en metros cubicos  capacidad del galon en metros cubicos=1/0.0283* capacidad del galon en pies cubicos Definicin de variables:  G: Capacidad de un recipiente en galones  p: capacidad del galon en pies cubicos  m: capacidad del galon en metros cubicos  l: capacidad del galn en litros

b) Pseudocdigo Inicio Leer (G) G= (3.79)*l l=0.001*m m=1/0.0283*p Escribir (l, m, p) Fin

c) Diagrama de Flujo

Inicio

G= (3.79)*l l=0.001*m m=1/0.0283*p

l, m, p

Fin

d) Cdigo de C++ #include <cstdlib> #include <iostream> using namespace std; int main() { float G,p,m,l;

cout<<"ingrese la capacidad de un recipiente en galones"<<endl; cin>>G; G=(3.79)*l; l=0.001*m; m=1/0.0283*p; cout<<"la capacidad del galon en litros es:"<<l<<endl; cout<<"la capacidad del galon en metros cubicos es:"<<m<<endl; cout<<"la capacidad del galon en pie cubicos es:"<<p<<endl; system("PAUSE"); return EXIT_SUCCESS; }

8. Disee un algoritmo que lea la capacidad de un disco duro en gigabytes y lo convierta a megabytes, kilobytes y bytes. 1 kilobytes= 1024 bytes 1 megabytes= 1024 kilobytes 1 gigabytes= 1024 megabytes a) Entradas:  capacidad de un disco duro en gigabytes Salidas:  capacidad del disco duro en megabytes  capacidad del disco duro en kilobytes  capacidad del disco duro en bytes Clculos:  capacidad del disco duro en megabytes = capacidad de un disco duro en gigabytes*1024  capacidad del disco duro en kilobytes = capacidad del disco duro en megabytes*1024  capacidad del disco duro en bytes = capacidad del disco duro en kilobytes*1024 Definicin de variables:  G: capacidad de un disco duro en gigabytes  m: capacidad del disco duro en megabytes  k: capacidad del disco duro en kilobytes  b: capacidad del disco duro en bytes

b) Pseudocdigo Inicio Leer (G) m= G*1024; k= m*1024; b= k*1024; Escribir (m, k, b) Fin

c) Diagrama de Flujo

Inicio

m= G*1024 k= m*1024 b= k*1024

m, k, b

Fin

d) Cdigo de C++ #include <cstdlib> #include <iostream> using namespace std; int main() {

//entrada unsigned long int G,m,k,b; cout<<"iingrese la capacidad de un disco duro en gigabytes"<<endl; cin>>G; //proceso

m= G*1024; k= m*1024; b= k*1024; //salida cout<<"la capacidad del disco duro en megabytes es:"<<m<<endl; cout<<"la capacidad del disco duro en kilobytes es:"<<k<<endl; cout<<"la capacidad del disco duro en bytes es:"<<b<<endl; system("PAUSE"); return EXIT_SUCCESS; }

9. Dado un nmero natural de 4 cifras disee un algoritmo que permita obtener la suma de sus dgitos. As si se lee el nmero 2358, el algoritmo deber mostrar 18 (2+3+5+8= 18). a) Entradas:  numero de 4 cifras Salidas:  suma de sus cifras Clculos:  Suma= numero de 4 cifras/1000 + numero de 4 cifras /100%10 + numero de 4 cifras /10%10 + numero de 4 cifras %10 Definicin de variables:  n: numero de 4 cifras  suma: suma de sus cifras

b) Pseudocdigo Inicio Leer (n) suma = n/1000 + n/100%10 + n/10%10 + n%10 Escribir (suma) Fin

c) Diagrama de Flujo

Inicio

suma = n/1000 +
n/100%10 + n/10%10 + n%10

suma

Fin

d) Cdigo de C++ #include <iostream.h> #include <conio.h> main() { int n , suma ; cout<<"Ingrese un numero de 4 cifras: ";

cin>>n; suma = n/1000 + n/100%10 + n/10%10 + n%10 ; cout<<"La suma de sus cifras es "<<suma ; getch(); }

10. Dado un nmero natural de 4 cifras disee un algoritmo que permita obtener el revs del nmero. As, si se lee el nmero 2358, el algoritmo deber mostrar 8532. a) Entradas:  nmero de 4 cifras Salidas:  revs del numero Clculos:  s=( numero de 4 cifras%10)*1000 + (numero de 4 cifras/10)%10*100 + (numero de 4 cifras/100)%10*10 + (numero de 4 cifras /1000) Definicin de variables:  n: numero de 4 cifras  s: revs del numero b) Pseudocdigo Inicio Leer (n) s = (n%10)*1000 + (n/10)%10*100 + (n/100)%10*10 + (n/1000) Escribir (s) Fin

c) Diagrama de Flujo

Inicio

s = (n%10)*1000 +
(n/10)%10*100 + (n/100)%10*10 + (n/1000)

Fin

d) Cdigo de C+++ #include <iostream.h> #include <conio.h> main () { int n , s ; cout<<"Ingrese un numero de 4 cifras: " ; cin>>n ; s = (n%10)*1000 + (n/10)%10*100 + (n/100)%10*10 + (n/1000) ; cout<<"El reves del numero es "<<s ; getch(); }

11. Disee un algoritmo que intercambie las cifras de las unidades de dos nmeros naturales. a) Entradas:  dos nmeros Salidas:  nmeros con las cifras de sus unidades intercambiadas Clculos:  aux = a%10  a = a - a%10 + b%10  b = b - b%10 + aux Definicin de variables:  a: primer nmero con cifras de sus unidades intercambiadas  b: segundo nmero con cifras de sus unidades intercambiadas

b) Pseudocdigo Inicio Leer (a, b) aux = a%10 ; a = a - a%10 + b%10 b = b - b%10 + aux Escribir (a, b) Fin

c) Diagrama de Flujo

Inicio

a, b

aux = a%10 a = a - a%10 + b%10 b = b - b%10 + aux

a, b

Fin

d) Cdigo de C+++ #include <iostream.h> #include <conio.h> main() { int a , b , aux ; cout<<"Ingrese dos numeros:"<<endl ; cin>>a>>b ; aux = a%10 ; a = a - a%10 + b%10 ; b = b - b%10 + aux ; cout<<"Los numeros con las cifras de sus unidades intercambiadas seran"<<a<<" y "<<b ; getch(); }

12. Dado un nmero natural de 5 cifras, disee un algoritmo que determine la suma y el producto de las cifras del nmero. a) Entradas:  numero de 5 cifras Salidas:  producto de las cifras del numero Clculos:  suma = (n%10) + ((n/10)%10) + ((n/100)%10) + ((n/1000)%10) + ((n/10000)%10)  prod = (n%10) * ((n/10)%10) * ((n/100)%10) * ((n/1000)%10) * ((n/10000)%10) Definicin de variables:  n: numero de 5 cifras  suma  prod: producto de las cifras del numero b) Pseudocdigo Inicio Leer (n) suma = (n%10) + ((n/10)%10) + ((n/100)%10) + ((n/1000)%10) + ((n/10000)%10) prod = (n%10) * ((n/10)%10) * ((n/100)%10) * ((n/1000)%10) * ((n/10000)%10) Escribir (suma, prod) Fin

c) Diagrama de Flujo

Inicio

suma = (n%10) + ((n/10)%10)


+ ((n/100)%10) + ((n/1000)%10) + ((n/10000)%10)

prod = (n%10) * ((n/10)%10) *


((n/100)%10) * ((n/1000)%10) * ((n/10000)%10)

suma, prod

Fin

d) Cdigo de C+++ #include <iostream.h> #include <conio.h> main() { long n , suma , prod ; cout<<"Ingrese un numero de 5 cifras: " ; cin>>n ; suma = (n%10) + ((n/10)%10) + ((n/100)%10) + ((n/1000)%10) + ((n/10000)%10) ; prod = (n%10) * ((n/10)%10) * ((n/100)%10) * ((n/1000)%10) * ((n/10000)%10); cout<<"La suma de las cifras del numero es "<<suma<<endl ; cout<<"El producto de las cifras del numero es "<<prod ; getch(); }

13. Disee un algoritmo para repartir una cantidad de dinero a tres personas en forma proporcional a sus edades. El monto que le corresponde a cada persona se calcula con la siguiente frmula: Monto de la persona =
  

a) Entradas:  Monto  Edad de la primera persona  Edad de la segunda persona  Edad de la tercera persona Salidas:  monto asignado a la primera persona  monto asignado a la segunda persona  monto asignado a la tercera persona Clculos:  Suma de las edades= Edad de la primera persona+ Edad de la segunda persona+ Edad de la tercera persona  monto asignado a la primera persona= Edad de la primera persona*Monto / Suma de las edades  monto asignado a la segunda persona=Edad de la segunda persona*Monto / Suma de las edades  monto asignado a la tercera persona=Edad de la tercera persona*Monto / Suma de las edades Definicin de variables:  monto  e1: Edad de la primera persona  e2: Edad de la segunda persona  e3: Edad de la tercera persona  c1: monto asignado a la primera persona  c2: monto asignado a la segunda persona  c3: monto asignado a la tercera persona  se: Suma de las edades

b)

Pseudocdigo Inicio Variables (monto, e1, e2, e3, c1, c2, c3, se) Leer (monto, e1, e2, e3) se =e1+e2+e3 c1=e1*monto/se c2=e2*monto/se c3=e3*monto/se Escribir (c1, c2, c3) Fin

c)

Diagrama de Flujo

Inicio

monto, e1, e2, e3

se =e1+e2+e3 c1=e1*monto/se c2=e2*monto/se c3=e3*monto/se

c1, c2, c3

Fin

d)

Cdigo de C+++ #include <cstdlib> #include <iostream> using namespace std;

int main() { int monto,e1,e2,e3,c1,c2,c3,se; cout<<"ingrese el monto:"; cin>>monto; cout<<"ingrese la edad de la primera persona:"; cin>>e1; cout<<"ingrese la edad de la segunda persona:"; cin>>e2; cout<<"ingrese la edad de la tercera persona:"; cin>>e3; se=e1+e2+e3; c1=e1*monto/se; c2=e2*monto/se; c3=e3*monto/se; cout<<"monto asignado a la primera persona:"<<c1<<endl; cout<<"monto asigando a la segunda persona:"<<c2<<endl; cout<<"monto asignado a la tercera persona:"<<c3<<endl; system("PAUSE"); return EXIT_SUCCESS; }

14. El dueo de una tienda compra un artculo a un precio determinado. Obtener el precio en que lo debe vender para obtener una ganancia del 30%. a) Entradas:  precio del articulo Salidas:  el precio para ganar el 30% Clculos:  precio para ganar el 30%= precio del articulo+ precio del articulo*0.30 Definicin de variables:  c1: precio del articulo  p1: el precio para ganar el 30%

b) Pseudocdigo Inicio Leer (c1) p1=c1+c1*0.30 Escribir (p1) Fin

c) Diagrama de Flujo

Inicio

c1

p1=c1+c1*0.30

p1

Fin

d) Cdigo de C+++ #include <cstdlib> #include <iostream> using namespace std; int main() { double c1,p1;

cout<<"ingrese el precio del articulo:"; cin>>c1; p1=c1+c1*0.30;

cout<<"el precio para ganar el 30% es de:"<<p1<<endl; system("PAUSE"); return EXIT_SUCCESS; }

15. Construir un algoritmo que lea una temperatura en grados Centgrados y calcule su equivalente en grados Fahrenheit, Kelvin y Rankine. a) Entradas:  temperatura en grados Celsius Salidas:  temperatura en grados Faranheit  temperatura en grados Kelvin  temperatura en grados Rankine Clculos:  temperatura en grados Faranheit=(9*( temperatura en grados Celsius/5)+32)  temperatura en grados Kelvin = (temperatura en grados Celsius+273)  temperatura en grados Rankine = (9*( temperatura en grados Celsius/5)+492) Definicin de variables:  c: temperatura en grados Celsius  f: temperatura en grados faranheit  k: temperatura en grados kelvin  R: temperatura en grados Rankine b) Pseudocdigo Inicio Leer (c) f=(9*(c/5)+32) k=(c+273) R=(9*(c/5)+492)

Escribir (f, k, R) Fin

c) Diagrama de Flujo

Inicio

f=(9*(c/5)+32) k=(c+273) R=(9*(c/5)+492)

f, k, R

Fin

d) Cdigo de C+++ #include <cstdlib> #include <iostream> using namespace std; int main() { float c, f, k, R; cout<<"ingrese la temperatura en grados celsius"<<endl; cin>>c; f=(9*(c/5)+32); k=(c+273); R=(9*(c/5)+492);

cout<<"la temperatura en grados faranheit es:"<<f<<endl; cout<<"la temperatura en grados kelvin es:"<<k<<endl; cout<<"la temperatura en grados Rankine es:"<<R<<endl; system("PAUSE"); return EXIT_SUCCESS; }

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