+ All Categories
Home > Documents > Algoritmos en Dev

Algoritmos en Dev

Date post: 22-Jan-2016
Category:
Upload: omar-garcia-flores
View: 816 times
Download: 1 times
Share this document with a friend
Popular Tags:
36
ALGORITMOS EN DEV – C++ GUÍA N° 01 1. Dado un número natural de 4 cifras diseñe un algoritmo que permita obtener el revés del número. Así, si se lee el número 2358, el algoritmo deberá mostrar 8532. #include <cstdlib> #include <iostream> using namespace std; int main() { int a, b, c, d; cout<<"ingresar numero: "; cin>>a>>b>>c>>d; cout<<" el numero al reves es: "<<d<<c<<b<<a<<endl; system("PAUSE"); return EXIT_SUCCESS; } 2. Determinar el valor de la hipotenusa de un triángulo rectángulo aplicando el teorema de Pitágoras, el perímetro y el área conociendo el valor de sus catetos. #include <cstdlib> #include <iostream> #include <math.h> using namespace std; int main(int argc, char *argv[]) { float hip, co, ca, peri, ar; cout<<"ingresar catetos de un triangulo rectangulo: "; cin>>co>>ca; hip = sqrt(pow(co,2)+pow(ca,2)); peri = co + ca + hip; ar = (co * ca) / 2; cout<<"la hipotenusa es: "<<hip<<endl; cout<<"el perimetro es: "<<peri<<endl; cout<<"el area es: "<<ar<<endl; system("PAUSE"); return EXIT_SUCCESS; }
Transcript
Page 1: Algoritmos en Dev

ALGORITMOS EN DEV – C++GUÍA N° 01  1. Dado un número natural de 4 cifras diseñe un algoritmo que permita obtener el revés del número. Así, si se lee el número 2358, el algoritmo deberá mostrar 8532.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    int a, b, c, d;    cout<<"ingresar numero: ";    cin>>a>>b>>c>>d;    cout<<" el numero al reves es: "<<d<<c<<b<<a<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  2. Determinar el valor de la hipotenusa de un triángulo rectángulo aplicando el teorema de Pitágoras, el perímetro y el área conociendo el valor de sus catetos.

#include <cstdlib>#include <iostream>#include <math.h>

using namespace std;

int main(int argc, char *argv[]){    float hip, co, ca, peri, ar;    cout<<"ingresar catetos de un triangulo rectangulo: ";    cin>>co>>ca;    hip = sqrt(pow(co,2)+pow(ca,2));    peri = co + ca + hip;    ar = (co * ca) / 2;    cout<<"la hipotenusa es: "<<hip<<endl;    cout<<"el perimetro es: "<<peri<<endl;    cout<<"el area es: "<<ar<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  3. Construir un algoritmo que calcule el monto que pagará un determinado alumno en el momento de la matrícula, sabiendo que dicho alumno realiza una matrícula por créditos, el costo de cada crédito es de S/. 27.50. La cantidad de créditos es de 21.

#include <cstdlib>#include <iostream>

using namespace std;

Page 2: Algoritmos en Dev

int main(int argc,

char *argv[]){    float coscre, monpa;    cout<<"ingrese cantidad de creditos: "<<endl;    cin>>coscre;    monpa = coscre * 27.5;    cout<<"el costo de la matricula es: "<<monpa<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  4. En un sistema de numeración inglesa la estatura de una persona está dada por la suma de los pies y pulgadas que tiene. Así por ejemplo una persona puede medir 5 pies con 4 pulgadas. Construir un algoritmo que exprese este tipo de medidas a metros. Se sabe que 1 pie = 12 pulgadas, 1 pulgada = 2.54 cm y 1 metro = 100 cm.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    float pie, pulg, cen, me, pul2, can;    cout<<"ingresar estatura en pies y pulgadas respectivamente: ";    cin>>pie>>pulg;    pul2 = pie * 12;    can = pulg + pul2;    cen = can * 2.54;    me = cen / 100;    cout<<"la estatura en metros es: "<<me<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  5. Un hospital ha recibido una donación especial que será repartida de la siguiente manera: 45% para Medicina General, 30% para Cardiología, 15% para Pediatría y el resto para Traumatología. Diseñe un algoritmo que determine cuanto recibirá cada área.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float don, mdg, car, pe, tra;    cout<<"ingresar cantidad donada: ";    cin>>don;

Page 3: Algoritmos en Dev

    mdg = don * 0.45;    cout<<" la cantidad de medicina general es: "<<mdg<<endl;

  car = don * 0.30;    cout<<" la cantidad de cardiologia es: "<<car<<endl;    pe = don * 0.15;    cout<<" la cantidad de pediatria es: "<<pe<<endl;    tra = don * 0.10;    cout<<" la cantidad de traumatologia es: "<<tra<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  6. Construir un algoritmo que calcule el monto mensual que adeuda un cliente que compra un equipo de sonido al crédito, sabiendo que el monto de compra recibe un incremento del 19% de impuesto, así como, de 5% de interés mensual por cada letra que fracciona.#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float montotal, mes, montpa, intermes, total;    cout<<"ingresar el monto a total a pagar: ";    cin>>montotal;    cout<<"ingresar los meses a cancelar: ";    cin>>mes;    montpa = montotal * 0.19;    intermes = mes * 0.05;    total = montpa * intermes;    cout<<"el monto por mes es: "<<total<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  7. Diseñe un algoritmo para convertir una cantidad dada en pulgadas a pies, yardas y centímetros. Se sabe que:1 yarda = 3 pies1 pie = 12 pulgadas1 pulgada = 2.54 centímetros1 metro = 100 centímetros

#include <cstdlib>#include <iostream>

using namespace std;

int main (){    float pulg, pies, yardas, centi;    cout<<" ingrese medida en pulgadas: ";    cin>>pulg;

Page 4: Algoritmos en Dev

    pies = pulg / 12;    cout<<"la medida en pies es: "<<pies<<endl;    yardas = pies / 3;    cout<<"la

medida en yardas es: "<<yardas<<endl;    centi = pulg * 2.54;    cout<<"la medida en centimetros es: "<<centi<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  8. Dada la capacidad de un recipiente en galones, diseñe una algoritmo que exprese dicha capacidad en litros, metros cúbicos y pies cúbicos. Considere que:1 pie cúbico = 0.0283 metros cúbicos1 galón = 3.79 litros1 metro cúbico = 1000 litros

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float gal, lit, mecu, picu;    cout<<"ingrese capacidad en galones: ";    cin>>gal;    lit = gal * 3.79;    cout<<" la capacidad en litros es: "<<lit<<endl;    mecu = lit / 1000;    cout<<" la capacidad en metros cubicos es: "<<mecu<<endl;    picu = mecu / 0.0283;    cout<<" la capacidad en pies cubicos es: "<<picu<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  9. 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.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float in1, in2, in3, por1, por2, por3, total;    cout<<"ingresar 1era inversion: ";    cin>>in1;    cout<<"ingresar 2da inversion: ";

Page 5: Algoritmos en Dev

    cin>>in2;    cout<<"ingresar 3era inversion: ";    cin>>in3;    total = in1 + in2+ in3;    por1 = (in1 * 100)/total;    cout<<"

el porcentaje del primero es: "<<por1<<"%"<<endl;    por2 = (in2 * 100)/total;    cout<<" el porcentaje del primero es: "<<por2<<"%"<<endl;    por3 = (in3 * 100)/total;    cout<<" el porcentaje del primero es: "<<por3<<"%"<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  10. Diseñe un algoritmo que determine el porcentaje de varones y de mujeres que hay en un salón de clase.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float nuv, num, total;    int porv, porm;    cout<<"la cantidad de varones: ";    cin>>nuv;    cout<<"la cantidad de mujeres: ";    cin>>num;    total = nuv +   num;    porv = (nuv*100)/total;    cout<<" el porcentaje de varones es: "<<porv<<"%"<<endl;    porm = (num*100)/total;    cout<<" el porcentaje de mujeres es: "<<porm<<"%"<<endl;     system("PAUSE");    return EXIT_SUCCESS;}

GUÍA N° 02 (ESTRUCTURAS SECUENCIALES)  11. Construir un algoritmo que calcule el monto mensual que adeuda un cliente que compra un equipo de sonido al crédito, sabiendo que el monto de compra recibe un incremento del 19% de impuesto, así como, de 5% de interés mensual por cada letra que fracciona.#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float montotal, mes, montpa, intermes, total;

Page 6: Algoritmos en Dev

    cout<<"ingresar el monto a total a pagar: ";    cin>>montotal;    cout<<"ingresar los meses a cancelar: ";    cin>>mes;

    montpa = montotal * 0.19;    intermes = mes * 0.05;    total = montpa * intermes;    cout<<"el monto por mes es: "<<total<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  12. Un hospital ha recibido una donación especial que será repartida de la siguiente manera: 45% para Medicina General, 30% para Cardiología, 15% para Pediatría y el resto para Traumatología. Diseñe un algoritmo que determine cuanto recibirá cada área.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float don, mdg, car, pe, tra;    cout<<"ingresar cantidad donada: ";    cin>>don;    mdg = don * 0.45;    cout<<" la cantidad de medicina general es: "<<mdg<<endl;    car = don * 0.30;    cout<<" la cantidad de cardiologia es: "<<car<<endl;    pe = don * 0.15;    cout<<" la cantidad de pediatria es: "<<pe<<endl;    tra = don * 0.10;    cout<<" la cantidad de traumatologia es: "<<tra<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  13. 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.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float in1, in2, in3, por1, por2, por3, total;    cout<<"ingresar 1era inversion: ";    cin>>in1;

Page 7: Algoritmos en Dev

    cout<<"ingresar 2da inversion: ";    cin>>in2;    cout<<"ingresar 3era inversion:

";    cin>>in3;    total = in1 + in2+ in3;    por1 = (in1 * 100)/total;    cout<<" el porcentaje del primero es: "<<por1<<"%"<<endl;    por2 = (in2 * 100)/total;    cout<<" el porcentaje del primero es: "<<por2<<"%"<<endl;    por3 = (in3 * 100)/total;    cout<<" el porcentaje del primero es: "<<por3<<"%"<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  14. Diseñe un algoritmo que determine el porcentaje de varones y de mujeres que hay en un salón de clase.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float nuv, num, total;    int porv, porm;    cout<<"la cantidad de varones: ";    cin>>nuv;    cout<<"la cantidad de mujeres: ";    cin>>num;    total = nuv +   num;    porv = (nuv*100)/total;    cout<<" el porcentaje de varones es: "<<porv<<"%"<<endl;    porm = (num*100)/total;    cout<<" el porcentaje de mujeres es: "<<porm<<"%"<<endl;     system("PAUSE");    return EXIT_SUCCESS;}

  15. 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. Diseñe 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.

#include <cstdlib>#include <iostream>

using namespace std;

int main()

Page 8: Algoritmos en Dev

{    float nupro;    float montori, montdes, montpa;    cout<<"ingresar cantidad llevada:

";    cin>>nupro;    montori = 5 * nupro;    cout<<"el monto original de la compra es: "<<montori<<endl;    montdes = 0.11 * montori;    cout<<"el monto de descuento es: "<<montdes<<endl;    montpa = montori - montdes;    cout<<"el monto a pagar es: "<<montpa<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  16. Diseñe un algoritmo para convertir una cantidad dada en pulgadas a pies, yardas y centímetros. Se sabe que:1 yarda = 3 pies1 pie = 12 pulgadas1 pulgada = 2.54 centímetros1 metro = 100 centímetros

#include <cstdlib>#include <iostream>

using namespace std;

int main (){    float pulg, pies, yardas, centi;    cout<<" ingrese medida en pulgadas: ";    cin>>pulg;    pies = pulg / 12;    cout<<"la medida en pies es: "<<pies<<endl;    yardas = pies / 3;    cout<<"la medida en yardas es: "<<yardas<<endl;    centi = pulg * 2.54;    cout<<"la medida en centimetros es: "<<centi<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  17. Dada la capacidad de un recipiente en galones, diseñe una algoritmo que exprese dicha capacidad en litros, metros cúbicos y pies cúbicos. Considere que:1 pie cúbico = 0.0283 metros cúbicos1 galón = 3.79 litros1 metro cúbico = 1000 litros

#include <cstdlib>#include <iostream>

Page 9: Algoritmos en Dev

using namespace std;

int main(){    float gal, lit, mecu, picu;    cout<<"ingrese capacidad en galones: ";    cin>>gal;    lit = gal * 3.79;    cout<<" la capacidad

en litros es: "<<lit<<endl;    mecu = lit / 1000;    cout<<" la capacidad en metros cubicos es: "<<mecu<<endl;    picu = mecu / 0.0283;    cout<<" la capacidad en pies cubicos es: "<<picu<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  18. Diseñe un algoritmo que lea la capacidad de un disco duro en gigabytes y lo convierta a megabytes, kilobytes y bytes.1 kilobytes = 1024 bytes1 megabytes = 1024 kilobytes1 gigabytes = 1024 megabytes

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float giby, meby, kiby, by;    cout<<" ingrese capacidad del disco en gigabytes: ";    cin>>giby;    meby = giby * 1024;    cout<<" la capicidad en megabytes es: "<<meby<<endl;    kiby = meby * 1024;    cout<<" la capicidad en megabytes es: "<<kiby<<endl;    by = kiby * 1024;    cout<<" la capicidad en megabytes es: "<<by<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  19. Dado un número natural de 4 cifras diseñe una algoritmo que permita obtener la suma de sus dígitos. Así, si se lee el numero 2358, el algoritmo deberá mostrar 18 (2+3+5+8 = 18).

#include <cstdlib>#include <iostream>

using namespace std;

Page 10: Algoritmos en Dev

int main(){    int a, b, c, d, aux;    cout<<"ingresar numero separado por un espacio: ";    cin>>a>>b>>c>>d;    aux = a + b + c + d;    cout<<"la suma de sus cifras es: "<<aux<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  20.

Dado un número natural de 4 cifras diseñe una algoritmo que permita obtener el revés del número. Así, si se lee el número 2358, el algoritmo deberá mostrar 8532.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    int a, b, c, d;    cout<<"ingresar numero: ";    cin>>a>>b>>c>>d;    cout<<" el numero al reves es: "<<d<<c<<b<<a<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  21. Diseñe un algoritmo que intercambie las cifras de las unidades de dos números naturales.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float a, b, c, d, e, f, g, h;    cout<<"ingrese numero 1: ";    cin>>a>>b>>c>>d;    cout<<"ingrese numero 2: ";    cin>>e>>f>>g>>h;    cout<<" los numeros de unidades intercambiadas es: "<<a<<b<<c<<h<<"-"<<e<<f<<g<<d<<endl;        system("PAUSE");    return EXIT_SUCCESS;}

  22. Dado un número natural de 5 cifras, diseñe un algoritmo que determine la suma y el

Page 11: Algoritmos en Dev

producto de las cifras del número.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    int a, b, c, d, auxs, auxp;    cout<<"ingresar numero separado por un espacio: ";    cin>>a>>b>>c>>d;    auxs = a + b + c + d;    cout<<"la suma de sus cifras es: "<<auxs<<endl;    auxp = a * b * c * d;    cout<<"el producto de sus cifras es:

"<<auxp<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  23. Diseñe 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 formula:Monto de la persona   =   edad de la persona * monto a repartir      Suma total de edades

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float cantd, ed1, ed2, ed3, can1, can2, can3, sumed;    cout<<"ingresar monto a repartir: ";    cin>>cantd;    cout<<"ingresar edad 1: ";    cin>>ed1;    cout<<"ingresar edad 2: ";    cin>>ed2;    cout<<"ingresar edad 3: ";    cin>>ed3;     sumed = ed1 + ed2 + ed3;    can1 = (ed1*cantd)/sumed;    cout<<" el monto del primero es: "<<can1<<endl;    can2 = (ed2*cantd)/sumed;    cout<<" el monto del segundo es: "<<can2<<endl;    can3 = (ed3*cantd)/sumed;    cout<<" el monto del tercero es: "<<can3<<endl;    system("PAUSE");    return EXIT_SUCCESS;

Page 12: Algoritmos en Dev

}

  24. El dueño de una tienda compra un artículo a un precio determinado. Obtener el precio en que lo debe vender para obtener una ganancia del 30%.

#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float pre, prev;    cout<<"ingresar el precio de compra: ";    cin>>pre;    prev = pre + (pre*0.30);    cout<<"el precio a vender es: "<<prev<<endl;     system("PAUSE");    return EXIT_SUCCESS;}

 

25. Construir un algoritmo que lea una temperatura en grados Centígrados y calcule su equivalente en grados Fahrenheit, Kelvin y Rankine.C = F – 32 = K – 273 = R – 4925   9     5     9#include <cstdlib>#include <iostream>

using namespace std;

int main(){    float cen, fa, ke, ra;    cout<<"ingresar temperatura en grados centigrados: ";    cin>>cen;    fa = ((9*cen) + 160)/5;    cout<<"la temperatura en farenheit es: "<<fa<<endl;    ke = cen + 273;    cout<<"la temperatura en Kelvin es: "<<ke<<endl;    ra = fa + 460;    cout<<"la temperatura en rankine es: "<<ra<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

GUÍA N° 03 (ESTRUCTURAS SELECTIVAS - SI)  1. Construir un algoritmo que permita ingresar 3 números enteros positivos y que determine cuál de ellos es el mayor, cual es el menor y cual es el numero medio.

#include <cstdlib>#include <iostream>

Page 13: Algoritmos en Dev

using namespace std;

int main(int argc, char *argv[]){    float a, b, c, ma, me, inter, aux;    cout<<"ingresar 3 numeros: ";    cin>>a>>b>>c;    ma = a;    if(ma < b)    ma = b;    if(ma < c)    ma = c;    cout<<"el mayor valor es: "<<ma<<endl;    me = a;    if(me > b)    me = b;    if(me > c)    me = c;     cout<<"el menor de los numeros es: "<<me<<endl;      cout<<"el intermedio es: "<<inter<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  2. Calcular el costo del servicio de mudanza, de acuerdo

a la distancia entre el punto de partida y de llegada. Para calcular el costo se debe tener en cuenta: Si la distancia por cada viaje es mayor o igual a 5 km, se cobrará S/. 7.00 por kilómetro, de lo contrario se cobrará el monto básico que es de S/. 25.00.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    float kil, montpa;    cout<<"ingrese la distancia en kilometros: ";    cin>>kil;    if(kil >= 5){    montpa = kil * 7.00;    }else{    montpa = 25.00;    }    cout<<"el monto a pagar es: "<<"S/. "<<montpa<<",00"<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  3. Diseñe un algoritmo que determine el promedio final de un alumno conociendo sus tres

Page 14: Algoritmos en Dev

notas. El profesor del curso ha prometido incrementar en dos puntos la nota de la tercera práctica calificada si es que es mayor a 10. considere que la máxima nota final es 20.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    float n1, n2, n3;    int pro;    cout<<"ingresar las tres notas a promediar: ";    cin>>n1>>n2>>n3;    if(n3 > 10)    {          n3 = n3 + 2;          }    pro = (n1 + n2 + n3)/3;    if(pro > 20)    {          cout<<"no existe en nuestra correccion "<<endl;    }else{          cout<<"el promedio es: "<<pro<<endl;          }    system("PAUSE");    return EXIT_SUCCESS;}

  4. Diseñe un algoritmo que determine la categoría de un estudiante en base

a su promedio, acuerdo a la siguiente tabla:Promedio | Categoría |20 – 1716 – 1413 – 1211 – 0 | ABCD |

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    int pro;    cout<<"ingresar promedio del estudiante: ";    cin>>pro;    if(pro <= 20 && pro >= 17)    cout<<"es de la categoria A"<<endl;    if(pro <= 16 && pro >= 14)    cout<<"es de la categoria B"<<endl;    if(pro <= 13 && pro >= 12)    cout<<"es de la categoria C"<<endl;    if(11 >= pro)    cout<<"es de la categoria D"<<endl;

Page 15: Algoritmos en Dev

    system("PAUSE");    return EXIT_SUCCESS;}

  5. Una empresa de bienes raíces ofrece casas de interés social, bajo las siguientes condiciones: Si los ingresos del comprador son menores de $8000, el enganche será del 15% del costo de la casa y el resto se distribuirá en pagos mensuales, a pagar en diez años. Si los ingresos del comprador son de $8000 o mas, el enganche será del 30% del costo de la casa y el resto se distribuirá en pagos mensuales a pagar en 7 años. La empresa quiere obtener cuanto debe pagar un comprador por concepto de enganche y cuanto por cada pago parcial.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    float incom, cosca, engan, res, par;    cout<<"ingrese su ingreso: ";    cin>>incom;    cout<<"ingrese costo de la casa: ";    cin>>cosca;    if(incom < 8000){            engan = cosca*0.15;            res =  

cosca - engan;            par = res / 120;            }else{                  engan = cosca* 0.3;                  res = cosca - engan;                  par = res / 84;                  }    cout<<"el monto de enganche es: "<<engan<<endl;    cout<<"el parcial a pagar es: "<<par<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  6. El gobierno del estado Peruano desea reforestar un bosque. Si la superficie del terreno excede a 1 millón de metros cuadrados, entonces decidirá sembrar de la siguiente manera:Superficie del bosque (%) | Tipo de árbol |70%20%10% | pinooyamelcedro |Si la superficie del terreno es menor o igual a un millón de metros cuadrados, entonces decidirá sembrar de la siguiente manera:Superficie del bosque (%) | Tipo de árbol |50%30%20% | pinooyamelcedro |El gobierno desea saber el numero de pinos, oyameles y cedros que tendrá que sembrar en el bosque, si se sabe que en 10 metros cuadrados caben 8 pinos, en 15 metros cuadrados caben 15 oyameles y en 18 metros cuadrados caben 10 cedros.

#include <cstdlib>

Page 16: Algoritmos en Dev

#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    double super, spin, soya, sce, npin, noya, nce;    cout<<"ingresar superficie del terreno: ";    cin>>super;    if( super > 1000000){        spin = super * 0.7;        soya = super*0.2;        sce = super*0.1;         }else{              spin = super * 0.5;              soya = super * 0.3;              sce = super * 0.2;              }    npin = spin * 0.8;    noya = soya;    nce = sce * 0.56;

    cout<<"el numero de pinos es: "<<npin<<endl;    cout<<"el numero de oyameles es: "<<noya<<endl;    cout<<"el numero de cedros es: "<<nce<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  7. Una fabrica paga a sus empleados de acuerdo a su condición, de tal manera que un obrero contratado recibe al mes S/.1200.00 y un obrero estable S/.1000.00. así mismo, todos los empleados reciben un pago de gratificación en los meses de Julio y Diciembre. Dicha gratificación varía de acuerdo a los años de servicios que tiene el empleado, como se muestra en el siguiente cuadro:Años de Servicios | % de Gratificación |0 a 56 a 1011 a más | 6080100 |Además todos los empleados reciben un descuento por AFP del   9%. Calcular el sueldo de un obrero correspondiente a un mes determinado.#include <cstdlib>#include <iostream>#include <string.h>#include <conio.h>#include <ctype.h>

using namespace std;

int main(int argc, char *argv[]){    double anse, montg, des, grati, suel, con, aux;    cout<<"ingrese años de servicio: ";    cin>>anse;    cout<<"ingresar condicion (c - e): ";    con = toupper( getche());

Page 17: Algoritmos en Dev

    cout<<endl;    if(con = 'c')    aux = 1200;    if(con = 'e')    aux = 1000;    if(anse >= 11)    montg = aux;    if(anse >= 6 && anse <= 10)    montg = aux * 0.8;    if(anse <= 5)    montg = aux * 0.6;    grati = aux + montg;    des = grati * 0.09;       suel = grati - des;    cout<<"el sueldo es: "<<suel<<endl;    system("PAUSE");

    return EXIT_SUCCESS;}

  8. Una empresa se encarga de la venta y distribución de CD. Los clientes pueden adquirir los artículos por cantidad. Los precios son:      a. S/. 3.50 si se compra hasta 9 unidades.      b. S/. 3.30 si se compra entre 10 unidades y hasta 99.      c. S/. 3.10 si se compra entre 100 y 499 unidades.      d. S/. 2.80 para más de 500.El vendedor gana por cada CD vendido S/. 1.25. Realizar un algoritmo que calcule el precio total para el cliente, el costo total y la ganancia para el vendedor.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    float cant, pre;    cout<<"ingresar cantidad de unidades: ";    cin>>cant;    if(cant <= 9)    pre = cant * 3.5;    if(cant >= 10 && cant <= 99)    pre = cant * 3.3;    if(cant >= 100 && cant <= 499)    pre = cant * 3.1;    if(cant >= 500)    pre = cant * 2.8;    cout<<" el precio apagar es: "<<pre<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  9. El dueño de una empresa desea planificar las decisiones financieras que tomara en el

Page 18: Algoritmos en Dev

siguiente año. La manera de planificarlas depende de lo siguiente:Si actualmente su capital se encuentra con saldo negativo, pedirá un préstamo bancario para que su nuevo saldo sea de $10 000. Si su capital tiene actualmente un saldo positivo pedirá un préstamo bancario para tener un nuevo saldo de $20 000, pero si su capital tiene actualmente un saldo superior a los $20 000 no pedirá ningún préstamo. Posteriormente repartirá su presupuesto

de la siguiente manera.$5 000 para equipo de computo$2 000 para mobiliarioy el resto la mitad será para la compra de insumos y la otra para otorgar incentivos al personal. Desplegar que cantidades se destinaran para la compra de insumos e incentivos al personal y, en caso de que fuera necesario, a cuanto ascendería la cantidad que se pediría al banco.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    double cap, comin, ins, cpeban, capg, rescap;    cout<<"¿cuanto es el capital que tengo? ";    cin>>cap;        if(cap < 0)    cpeban = 10000 - cap;    if(cap >=0 && cap <= 20000)    cpeban = 20000 - cap;    if(cap >=20000)    cpeban = 0;        capg = cpeban + cap;    rescap = capg - 7000;    comin = rescap / 2;    ins = rescap / 2;    cout<<"para la compra de insumos: "<<comin<<endl;    cout<<"para los insentivos: "<<ins<<endl;    cout<<" la cantidad pedida del banco es: "<<cpeban<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  10. Una compañía de seguros ofrece a sus clientes cuatro tipos de seguro de sepelio:Tipo | Max. Personas | Pago mensual (S/.) |ABCD | 8642 | 40302010 |Si el cliente asegura a más personas de la indicadas en el cuadro anterior tendrá que pagar S/.8.00 mensuales por cada persona adicional si es que el seguro es de tipo A o B, y S/.5.00 mensuales por cada persona adicional si es que el seguro es de tipo C o D. Calcular el monto anual que tiene que pagar un determinado cliente.

#include

Page 19: Algoritmos en Dev

<cstdlib>#include <iostream>#include <ctype.h>#include <conio.h>#include <iomanip>

using namespace std;

int main(){    int nper, perad, monanual, monad, monmes;     char tipo;    cout<<"ingrese tipo: A - B- C- D"<<endl;    tipo = toupper( getche());    cout<<endl;    cout<<"ingrese el numero de personas: "<<endl;    cin>>nper;    switch(tipo)    {                case 'A': if(nper > 8){                    perad = nper - 8;                    monad = perad * 8;                    monmes = monad + 40;                    }else{                          monmes = 40;                          }; break;                case 'B': if(nper > 6){                    perad = nper - 6;                    monad = perad * 8;                    monmes = monad + 30;                    }else{                          monmes = 30;                          }; break;                case 'C':if(nper > 4){                    perad = nper - 4;                    monad = perad * 5;                    monmes = monad + 20;                    }else{                          monmes = 20;                          }; break;                case 'D':if(nper > 2){                    perad = nper - 2;                    monad = perad * 5;                    monmes = monad + 10;                    }else{                          monmes = 10;                          }; break;                          }    monanual = monmes * 12;    cout<<"El monto a pagar por una persona

en un ano es: "<<monanual<<endl;                           system("PAUSE");

Page 20: Algoritmos en Dev

    return EXIT_SUCCESS;}

GUÍA N° 04 (ESTRUCTURAS SELECTIVAS – según sea)  1. Construya una algoritmo que al ingresar un numero entero imprima el día de la semana que le corresponde. Por ejemplo: al ingresar 1 debe imprimir lunes.

#include <cstdlib>#include <iostream>#include <string.h>

using namespace std;

int main(int argc, char *argv[]){    int ndia;    char nomdia[8];    cout<<"ingresar numero del dia: ";    cin>>ndia;    switch(ndia)    {                case 1: strcpy(nomdia, "lunes"); break;                case 2: strcpy(nomdia, "martes"); break;                case 3: strcpy(nomdia, "miercoles"); break;                case 4: strcpy(nomdia, "jueves"); break;                case 5: strcpy(nomdia, "viernes"); break;                case 6: strcpy(nomdia, "sabado"); break;                case 7: strcpy(nomdia, "domingo"); break;                default: strcpy(nomdia, "desconocido");                 }    cout<<"el nombre del dia es: "<<nomdia<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  2. Construir un algoritmo que al ingresar un numero entero que indique el mes, nos muestre cuantos días tiene dicho mes.

#include <cstdlib>#include <iostream>#include <string.h>

using namespace std;

int main(int argc, char *argv[]){    int nmes;    char nomes[15], dimes[15];    cout<<"ingresar el numero del mes: ";    cin>>nmes;    switch(nmes)    {                case 1: strcpy(nomes,"enero");

Page 21: Algoritmos en Dev

break;                case 2: strcpy(nomes,"febrero"); break;                case 3: strcpy(nomes,"marzo"); break;                case 4: strcpy(nomes,"abril"); break;                case 5: strcpy(nomes,"mayo"); break;                case 6: strcpy(nomes,"junio"); break;                case 7: strcpy(nomes,"julio"); break;                case 8: strcpy(nomes,"agosto"); break;                case 9: strcpy(nomes,"setiembre"); break;                case 10: strcpy(nomes,"octubre"); break;                case 11: strcpy(nomes,"noviembre"); break;                case 12: strcpy(nomes,"diciembre"); break;                default: strcpy(nomes,"no existe tal mes");                 }    switch(nmes)    {                case 1: case 3: case 5: case 7: case 8 : case 10: case 12:                    strcpy(dimes,"31"); break;                    case 2: strcpy(dimes, "28"); break;                case 4: case 6: case 9: case 11:                    strcpy(dimes,"30"); break;                    }    cout<<"el nombre del mes es: "<<nomes<<endl;    cout<<"el numero de dias del mes es: "<<dimes<<" dias"<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  3. Construya una calculadora que lea 2 números y un operador y efectúe la operación indicada (suma, resta, multiplicación y división).

#include <cstdlib>#include <iostream>#include <ctype.h>#include <iomanip>#include <conio.h>

using namespace std;

int main(int argc, char *argv[]){    float a, b, oper;    char simbol;    cout<<"ingresar

la operacion ";    cin>>a;    simbol = toupper ( getche());    cout<<" ";    cin>> b;    switch(simbol)    {                  case '+': oper = a + b; break;

Page 22: Algoritmos en Dev

                  case '-': oper = a - b; break;                  case '*': oper = a * b; break;                  case '/': oper = a / b; break;                  }    cout<<"El resultado es: "<<oper<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  4. Construya un algoritmo que al ingresar una fecha (día, mes y año) nos indique si la fecha ingresada es correcta o no.

#include <cstdlib>#include <iostream>

using namespace std;

int main(int argc, char *argv[]){    unsigned int dia, mes, anio, dmax;    unsigned int correcto;    cout<<"ingresar dia {1 al 31} ";    cin>>dia;    cout<<"ingresar mes {1 al 12} ";    cin>>mes;    cout<<"ingresar año {1900 a mas) ";    cin>>anio;    switch(mes)    {              case 1: case 3: case 5: case 7: case 8: case 10: case 12: dmax = 31; break;              case 4: case 6: case 9: case 11: dmax = 30; break;               case 2: if(anio % 4 == 0){                    dmax = 29;                    }else{                          dmax = 28;                          }                          }    if ((dia >= 1 && dia <= dmax) && (mes >=1 && mes <= 12)&&(anio >= 1900)){    correcto = true;    }else{    correcto = false;}        if(correcto){    cout<<"fecha correcta";    }else{    cout<<"fecha

incorrecta";}    cout<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

Page 23: Algoritmos en Dev

  5. Una compañía de seguros ofrece a sus clientes cuatro tipos de seguro de sepelio:Tipo | Máximo número de Personas | Pago mensual (S/.) |ABCD | 8642 | 40302010 |Si el cliente asegura a más personas de la indicadas en el cuadro anterior tendrá que pagar S/.8.00 mensuales por cada persona adicional si es que el seguro es de tipo A o B, y S/.5.00 mensuales por cada persona adicional si es que el seguro es de tipo C o D. Calcular el monto anual que tiene que pagar un determinado cliente.

#include <cstdlib>#include <iostream>#include <ctype.h>#include <conio.h>#include <iomanip>

using namespace std;

int main(){    int nper, perad, monanual, monad, monmes;     char tipo;    cout<<"ingrese tipo: A - B- C- D"<<endl;    tipo = toupper( getche());    cout<<endl;    cout<<"ingrese el numero de personas: "<<endl;    cin>>nper;    switch(tipo)    {                case 'A': if(nper > 8){                    perad = nper - 8;                    monad = perad * 8;                    monmes = monad + 40;                    }else{                          monmes = 40;                          }; break;                case 'B': if(nper > 6){                    perad = nper - 6;                    monad = perad * 8;                    monmes = monad + 30;                    }else{                          monmes = 30;                          }; break;                case 'C':if(nper > 4){     

              perad = nper - 4;                    monad = perad * 5;                    monmes = monad + 20;                    }else{                          monmes = 20;                          }; break;                case 'D':if(nper > 2){                    perad = nper - 2;                    monad = perad * 5;

Page 24: Algoritmos en Dev

                    monmes = monad + 10;                    }else{                          monmes = 10;                          }; break;                          }    monanual = monmes * 12;    cout<<"El monto a pagar por una persona en un ano es: "<<monanual<<endl;                           system("PAUSE");    return EXIT_SUCCESS;}

  6. Una empresa de carga brinda servicio a todo el continente americano, la tarifa que cobra por cada tonelada se muestra en el siguiente cuadro:| Destinos ($/tonelada) |Medio de transporte | Norte | Sur | Centro |AéreoMarítimoTerrestre | 302520 | 252015 | 201510 |Asimismo, si la carga que se transporta es perecible, se le incrementa el 7% del pago total de acuerdo a las toneladas.

#include <cstdlib>#include <iostream>#include <string.h>#include <iomanip>#include <conio.h>#include <ctype.h>

using namespace std;

int main(int argc, char *argv[]){    char medio, desti, per;    float tar, ton, total;    cout<<"ingresar medio de transporte (a = aereo, m = maritimo, t = terrestre):"<<endl;    medio   = toupper ( getche());    cout<<endl;    cout<<"ingresar destino (n = norte, s = sur, c = centro): "<<endl; 

desti = toupper ( getche());    cout<<endl;    cout<<"si es (perecible = P, durable = D):";    per = toupper ( getche());    cout<<endl;    cout<<"ingresar toneladas: ";    cin>>ton;    switch (medio)    {          case 'A':switch(desti){                            case 'N': tar = 30 * ton; break;                            case 'S': tar = 25 * ton; break;                            case 'C': tar = 20 * ton; break;                            }                            break;

Page 25: Algoritmos en Dev

          case 'M':switch(desti){                            case 'N': tar = 25 * ton; break;                            case 'S': tar = 20 * ton; break;                            case 'C': tar = 15 * ton; break;                            }                            break;          case 'T':switch(desti){                            case 'N': tar = 20 * ton; break;                            case 'S': tar = 15 * ton; break;                            case 'C': tar = 10 * ton; break;                            }                            break;                            }    switch(per)    {                case 'P': total = tar * 0.07; break;                case 'D': total = tar; break;                }        cout<<"el total a pagar es: "<<total<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  7. Un banco realiza el pago de intereses a sus clientes por un deposito a plazo fijo de acuerdo a la siguiente información: Tipo de moneda, Tiempo de deposito y monto depositado. Los intereses serán aplicados según el siguiente

cuadro:Meses | Soles (%) | Dólares (%) |0 – 56 – 1213 –mas | 069 | 047 |Mostrar el interés y el monto total a recibir.

#include <cstdlib>#include <iostream>#include <ctype.h>#include <string.h>#include <conio.h>

using namespace std;

int main(int argc, char *argv[]){    float monde, inter, monto, mes;    char tipmo;    cout<<"ingresar tipo de moneda: ";    tipmo = toupper( getche());    cout<<endl;    cout<<"ingresar monto de deposito: ";    cin>>monde;    cout<<"ingresar cuantos meses quiere tiene: ";    cin>>mes;    switch(tipmo)

Page 26: Algoritmos en Dev

    {                case 'S': if(mes >= 0 && mes <= 5)                          inter = monde * 0;                          if(mes >= 6 && mes <= 12)                          inter = monde * 0.06;                          if(mes >= 13)                          inter = monde * 0.09;                          break;                case 'D': if(mes >= 0 && mes <= 5)                          inter = monde * 0;                          if(mes >= 6 && mes <= 12)                          inter = monde * 0.04;                          if(mes >= 13)                          inter = monde * 0.07;                          break;                          }                               monto = inter + monde;    cout<<"el interes es: "<<inter<<endl;    cout<<"el monto total es: "<<monto<<endl;    system("PAUSE");    return EXIT_SUCCESS;}

  8.

Un supermercado ofrece a sus clientes descuentos de acuerdo al monto de compra, como se muestra en el siguiente cuadro:Compra (S/.) | Descuento (%) |0 – 250251 – 500501 – 10001001 – más | 051015 |Para recibir los beneficios de descuento un cliente solo puede comprar dentro de un determinado rubro, así mismo dependiendo del rubro de la compra, se le aplica el siguiente impuesto sobre la compra descontada.Rubro | Impuesto (%) |ComestiblesJuguetes | 1520 |Construir un algoritmo que calcule el pago total que hará un determinado cliente.

#include <cstdlib>#include <iostream>#include <conio.h>#include <string.h>

using namespace std;

int main(int argc, char *argv[]){    float des, pato, moncom, mont1;    char rubro;    cout<<"ingrese el monto de compra: ";    cin>>moncom;    cout<<"ingrese rubro ( c = comestible, j = juguetes)   ";    rubro = toupper ( getche());    cout<<endl;    if(moncom <= 250)

Page 27: Algoritmos en Dev

    des = 0;    if(moncom >= 251 && moncom <=500)    des = moncom * 0.05;    if(moncom >= 501 && moncom <= 1000)    des = moncom * 0.1;    if(moncom >= 1001)    des = moncom * 0.15;        mont1 = moncom - des;    cout<<"el monto 1 es:"<<mont1<<endl;        switch(rubro)    {                case 'C': pato = (mont1 *0.15) + mont1; break;                case 'J': pato = (mont1 * 0.2) + mont1; break;                }    cout<<"el pago total es: "<<pato<<endl;     system("PAUSE");    return EXIT_SUCCESS;}

  9. Una tienda de venta de polos ha

establecido porcentajes de descuento, indicados a continuación, de acuerdo a las características de la prenda: Tipo de algodón (Simple, Pima), Tipo de prensa (Niño, Joven, Adulto), Detalle de la prenda (Sin estampado, Con estampado)| Niño | Joven | Adulto |Tipo de algodón | S | C | S | C | S | C |Simple | 3 | 5 | 4 | 6 | 5 | 7 |Pima | 5 | 3 | 6 | 4 | 7 | 5 |Calcular el importe a pagar por una prenda.

#include <cstdlib>#include <iostream>#include <string.h>#include <conio.h>

using namespace std;

int main(int argc, char *argv[]){    float pre, imp, des;    char tial, tipren, deta;    cout<<"ingresar precio de la prenda: ";    cin>>pre;    cout<<"el tipo de algodon ( S = simple, P = pima): ";    tial = toupper ( getche());    cout<<endl;    cout<<"el tipo de prensa (N = ninio, J = joven, A = adulto); ";    tipren = toupper ( getche());    cout<<endl;    cout<<"el detalle de prenda (C = estampado, k = sin estampar); ";    deta = toupper ( getche());

Page 28: Algoritmos en Dev

    cout<<endl;    switch(tial)    {                case 'S': switch (tipren)                {                    case 'N': switch (deta)                    {                          case 'C': des = pre * 0.03; break;                          case 'K': des = pre * 0.05; break;                          }                           break;                    case 'J': switch (deta)                    {                          case 'C': des = pre * 0.04; break;                          case 'K': des = pre * 0.06; break;           

            }                          break;                    case 'A': switch (deta)                    {                          case 'C': des = pre * 0.05; break;                          case 'K': des = pre * 0.07; break;                          }                           break;                          }                          break;                case 'P': switch (tipren)                {                    case 'N': switch (deta)                    {                          case 'C': des = pre * 0.05; break;                          case 'K': des = pre * 0.03; break;                          }                           break;                    case 'J': switch (deta)                    {                          case 'C': des = pre * 0.06; break;                          case 'K': des = pre * 0.04; break;                          }                          break;                    case 'A': switch (deta)                    {                          case 'C': des = pre * 0.07; break;                          case 'K': des = pre * 0.05; break;                          }                           break;                          }                          break;                             }    cout<<"el descuento es: "<<des<<endl;    imp = pre - des;    cout<<"el importe a pagar es: "<<imp<<endl;                        

Page 29: Algoritmos en Dev

    system("PAUSE");    return EXIT_SUCCESS;}

  10. Un centro comercial ofrece ventas financiadas por 3 tipos de tarjetas de crédito como indica a continuación:Max. Letras |

Tipo de Tarjeta | Interés (%) |1286 | ABC | 51015 |El cliente solo puede financiar una compra hasta el máximo de letras que se indica en el cuadro anterior, en caso contrario la venta no debe proceder. Calcular el monto de cada letra por pagar así como el monto total.

#include <cstdlib>#include <iostream>#include <string.h>#include <iomanip>#include <conio.h>

using namespace std;

int main(int argc, char *argv[]){    float maxle, monle, monto, cre, inter;    char tip;     cout<<"ingresar monto de credito: ";    cin>>cre;    cout<<"ingresar   cuantas letras: ";    cin>>maxle;    cout<<"ingresar tipo de tarjeta (a, b, c): ";    tip = toupper( getche());    cout<<endl;    switch (tip)    {          case 'A': if(maxle <= 12){                inter = cre * 0.05;                }else{                      cout<<"venta no procedente";                      }; break;          case 'B': if(maxle <= 8){                inter = cre * 0.10;                }else{                      cout<<"venta no procedente";                           }; break;          case 'C': if(maxle <= 6){                inter = cre * 0.15;                }else{                      cout<<"venta no procedente";                       }; break;                      }    monto = cre + inter;    monle = monto / maxle;

Page 30: Algoritmos en Dev

    cout<<"el monto por letras es: "<<monle<<endl;    cout<<"el monto total a pagar: "<<monto<<endl;                               system("PAUSE");


Recommended