Tarea Iv2
Tarea Iv2
Tarea Iv2
GUATEMALA
EXTENCION RETALHULEU
CURSO: ALGORITMOS
CATEDRTICO: ALEXIS JUAREZ
PROGRAMAS EN C++
ALUMNA: CARN:
ANALYS DE LA CRUZ 2790-10- 859
RETALHULEU, 17 DE SEPTIEMBRE DE 2010.
1) Dado como datos cuatro nmeros reales, identifique cul es el mayor.
Considere que los nmeros pueden ser iguales.
OUT: Nmero mayor.
PROCESO: n1<>=n2, n1<>=n3, n1<>=n4
IN: 4 numeros reales
no no no
si si
si si
INICIO
INGRESE EL
NMERO 1: N1
INGRESE EL
NMERO 2:
N2
INGRESE EL
NMERO 3:
N3
INGRESE EL
NMERO 4:
N4
N1>n2,
n1>n3,
n1>n4
n1 es el mayor
N2>n1,
n2>n3,
n2>n4
N2 es el mayor
N3>n2,
n3>n1,
n3>n4
N3 es el mayor
N4>n1,
n4>n2,
n4>n3
N4 es el mayor
FIN
no
C++
#include<stdio.h>
#include<conio.h>
main()
{
float N1,N2,N3,N4;
printf("ingrese el Numero 1: ");
scanf("%f",&N1);
printf("ingrese el Numero 2: ");
scanf("%f",&N2);
printf("ingrese el Numero 3: ");
scanf("%f",&N3);
printf("ingrese el Numero 4: ");
scanf("%f",&N4);
if (N1>N2)
if (N1>N3)
if (N1>N4)
printf("EL NUMERO MAYOR ES %f",N1);
if (N2>N1)
if (N2>N3)
if (N2>N4)
printf("EL NUMERO MAYOR ES %f",N2);
if (N3>N1)
if (N3>N2)
if (N3>N4)
printf("EL NUMERO MAYOR ES %f",N3);
if (N4>N1)
if (N4>N2)
if (N4>N3)
printf("EL NUMERO MAYOR ES %f",N4);
return (0);
}
2) El costo de las llamadas telefnicas internacionales depende de la zona
geogrfica en la que se encuentre el pas destino y del nmero de minutos
hablados. En la siguiente tabla se presenta el costo del minuto por zona. A
cada zona se le ha asociado una clave.
CLAVE ZONA PRECIO
12 Amrica
del Norte
2
15 Amrica
Central
2.55
18 Amrica 4.90
del Sur
19 Europa 3.5
23 Asia 6
25 frica 7.6
29 Oceana 5
OUT: costo de la llamada
PROCESO: multiplicacin
IN: clave, zona, precio, minutos hablados
C++
#include<stdio.h>
#include<conio.h>
main()
{
int CLV,MIN;
float CST;
printf("_______________________________");
printf("\nCLAVE | ZONA | PRECIO");
printf("\n 12 | Amrica dl Norte | 2");
printf("\n 15 | Amrica Central | 2.55");
printf("\n 18 | Amrica del Sur | 4.90");
printf("\n 19 | Europa | 3.50");
printf("\n 23 | Asia | 6");
printf("\n 25 | frica | 7.6");
printf("\n 29 | Oceana | 5");
printf("\n----------------------------------");
printf("\nIngrese la clave de la zona geogrfica: ");
scanf("%d",&CLV);
printf("Ingrese los minutos hablados: ");
scanf("%d",&MIN);
if (CLV==12)
{
printf("\nUsted llam a AMERICA DEL NORTE ");
CST=MIN*2;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==15)
{
printf("\nUsted llam a AMERICA CENTRAL");
CST=MIN*2.55;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==18)
{
printf("\nUsted llam a AMERICA DEL SUR");
CST=MIN*4.90;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==19)
{
printf("\nUsted llam a EUROPA");
CST=MIN*3.50;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==23)
{
printf("\nUsted llam a ASIA");
CST=MIN*6;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==25)
{
printf("\nUsted llam a AFRICA");
CST=MIN*7.60;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV==29)
{
printf("Usted llam a OCEANIA");
CST=MIN*5;
printf("\nEl costo de la llamada es %2.2f",CST);
}
if (CLV !=12)
if (CLV !=15)
if (CLV !=18)
if (CLV !=19)
if (CLV !=23)
if (CLV !=25)
if (CLV !=29)
printf("La clave no tiene ninguna ubicacion geografica");
return (0);
}
3) En una tienda efectan un descuento a los clientes dependiendo del
monto de la compra. El descuento se efecta con base en el siguiente
criterio:
a. Si el monto es menor que Q.500.00, no hay descuento e indqueselo al
usuario.
b. Si el monto est comprendido entre Q.500.00 y Q.1000.00 inclusive, el 5%
de descuento.
c. Si el monto est comprendido entre Q.1000.00 y Q.7000.00 inclusive, el
11% de descuento.
d. Si el monto est comprendido entre Q.7000.00 y Q.15000.00 inclusive, el
18% de descuento.
e. Si el monto es mayor a Q.15000.00, el descuento e del 30% de descuento
si es fin de semana, en caso contrario es del 25%.
Todos los descuentos habrn de notificarse al usuario.
OUT: monto total de la compra sin el descuento, si lo acredita.
PROCESO: multiplicacin, resta
IN: monto de la compra, dia de la semana
C++
#include <stdio.h>
#include <conio.h>
main()
{
int D;
int x;
float monto, descuento;
while(x!=27){
clrscr();
printf("\n");
printf(" _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ");
printf("\n| lunes | Martes | Miercoles | Jueves | Viernes | Sabado | Domingo |");
printf("\n________|________|___________|________|_________|_____________
______");
printf("\n| 1 | 2 | 3 | 4 | 5 | 6 | 7 |");
printf("\n ------------------------------------------------------------------");
printf("\n\nIndique el da de la semana: ");
scanf("%d",&D);
printf("Ingrese el monto de la compra: ");
scanf("%f",&monto);
if (monto < 500)
{
descuento= 0;
monto= monto - descuento;
printf("\nVALOR DE LA COMPRA: %2.2f", monto);
printf("\nNo hay descuento");
}
if (monto >= 500 && monto <= 1000)
{
descuento= monto * 0.05;
monto= monto - descuento;
printf("\nVALOR DE LA COMPRA: %2.2f", monto);
printf("\nVALOR DEL DESCUENTO: %2.2f", descuento);
}
if (monto > 1000 && monto <=7000)
{
descuento= monto * 0.11;
monto= monto - descuento;
printf("\nVALOR DE LA COMPRA: %2.2f", monto);
printf("\nVALOR DEL DESCUENTO: %2.2f", descuento);
}
if (monto > 7000 && monto <=15000)
{
descuento= monto * 0.18;
monto= monto - descuento;
printf("\nVALOR DE LA COMPRA: %2.2f", monto);
printf("\nVALOR DEL DESCUENTO: %2.2f", descuento);
}
if (monto > 15000)
{
if(D>=6 && D<=7)
{ descuento= monto * 0.3;
}
else
{ descuento= monto * 0.25;
}
monto= monto - descuento;
printf("\nVALOR DE LA COMPRA: %f", monto);
printf("\nVALOR DEL DESCUENTO: %f", descuento);
}
x=getch();
}
getch();
}
4) Calcule el factorial de un nmero entero ingresado por el usuario. Utilice
el mtodo de multiplicaciones sucesivas. Por ejemplo, si el nmero
introducido fuese 5, la salida sera su factorial: 120, ya que 1*2*3*4*5 = 120.
OUT: X!
PROCESO: multiplicacion
IN: numero entero positivo
C++
#include<stdio.h>
#include<conio.h>
Main ()
{
float N,X=1;
printf("Ingrese para hacer su factorial: ");
scanf("%f",&N);
while(N>1)
{
X= X*N;
N= N-1;
}
printf("el factorial es: %2.0f",X);
getch();
}
5) Escriba un algoritmo que implemente la conjetura de Ulam. La conjetura
de Ulam recibe su nombre en honor al matemtico S. ULAM. Esta se explica
as: Paso 1: seleccione cualquier nmero entero positivo
Paso 2: si este nmero es par, divdalo entre 2. Si es impar, multiplquelo por
3 y smele 1. En cualquiera de los dos casos habr obtenido un nuevo
nmero.
Paso 3: repita los pasos anteriores hasta que el nuevo nmero obtenido sea
1.
OUT: 1
PROCESO: suma, multiplicacin, divisin
IN: nmero entero positivo
C++
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
int a;
printf("ingrese un numero: ");
scanf("%d",&a);
if (a>1)
{
while (a != 1)
{
if ((a%2) == 0)
{
a= a/2;
printf("valor= %d \n",a);
}
else
{
a= (a*3)+1;
printf("valor= %d \n",a);
}
}
printf("El procedimiento ha llegado a 1");
}
getch();
return (0);
}
6) Suponga que se requiere disear un juego de adivinanza, en el que un
jugador introduce un nmero y otro jugador tratar de adivinarlo. Se dan 3
oportunidades de acertar. En cada oportunidad, se pregunta Qu nmero
es?; segn la respuesta que d, aparecer un mensaje: Tu nmero es mayor,
Tu nmero es menor o Acertaste. Si no acierta en las 5 oportunidades, el
ganador ser el primer jugador y se descubre el nmero. Asuma que
nicamente son permitidos nmeros enteros en el rango de 1 50
C++
#include<stdio.h>
#include<conio.h>
main()
{
int N1,i,N2,x;
printf("CONDICION DEL JUEGO:");
printf("\n*El numero ingresado debe de estar en un rango de 1 a 50.");
printf("\n*El jugador 1 debe ingresar un numero y el jugador 2 debe adivinarlo.");
printf("\n*El jugador 2 tiene 3 oportunidades para acertar.");
printf("\nprecione enter para iniciar el juego.");
printf("\n\nINICIAR JUEGO...");
getche();
clrscr();
printf("\nJUGADOR 1");
printf("\nIntroduzca un numero: ");
scanf("%d",&N1);
clrscr();
printf("\nJUGADOR 2");
printf("\nIntroduzca un numero:");
for(i=1;i<=5;i++)
{
printf("\nOportunidad %d: ",i);
scanf("\n%d",&N2);
if (N2==N1)
{
printf("Acertaste");
break;
}
if (N2>N1)
{
printf("El numero es menor.");
}
else{
printf("el numero es mayor.");
}
}
printf("\n.FIN DEL JUEGO.!!");
getch();
}
7) Imprima en forma inversa el alfabeto, desde la z hasta la a
respectivamente.
#include <iostream.h>
#include<stdio.h>
#include<conio.h>
char abc[27]={'a','b ','c ','d ','e ','f ','g ','h ','i ','j ','k
','l','m','n','','o','p','q','r','s','t','u','v','w','x','y','z'};
main()
{
int x;
char letra;
printf("el alfabeto inverso queda\n");
for(x=26;x>=0;x--)
{
cout<<abc[x];
}
getch();
}
8) Muestre un men donde por medio de un nmero, un usuario pueda elegir
su signo del zodiaco, a continuacin imprima la suerte en el amor
correspondiente al signo indicado. Por ejemplo, si el usuario teclea 12, el
signo ser Capricornio y su suerte ser Te casars muy joven y tendrs
doce hijos
OUT:
PROCESO:
IN:
signo del zodiaco, a continuacin imprima la suerte en el amor*/
#include<stdio.h>
#include<conio.h>
main()
{
int SZ;
printf(" SIGNOS DEL ZODIACO ");
printf("\n--------------------------------");
printf("\n ARIES | 1 ");
printf("\n TAURO | 2 ");
printf("\n GEMINIS | 3 ");
printf("\n CANCER | 4 ");
printf("\n LEO | 5 ");
printf("\n VIRGO | 6 ");
printf("\n LIBRA | 7 ");
printf("\n ESCORPIO | 8 ");
printf("\n SEGITARIO | 9 ");
printf("\n CAPRICORNIO | 10 ");
printf("\n ACUARIO | 11 ");
printf("\n PISCIS | 12 ");
printf("\n\nEscriba en numero de su signo zodiacal: ");
scanf("%d",&SZ);
clrscr();
if (SZ==1)
{
printf("Tu Signo Zodiacal es ARIES");
printf("\nEn el amor");
printf("\Se enamorar y se desenamorar de manera instantnea. Ejercer una poderosa
atraccin sobre el sexo opuesto y se entregar de manera incondicional, si el amor que le
profesa a su pareja es verdadero. Expresar su sexualidad con ms intensidad y fuerza en
comparacin con los otros signos del zodaco.");
}
if (SZ==2)
{
printf("Tu Signo Zodiacal es TAURO");
printf("\nEn el amor");
printf("\nGracias a la influencia de Venus, astro que representa el amor, el arte y la belleza;
sus sentimientos sern profundos y estables. Lo ms importante en su vida ser el amor, lo
cual le proporcionar felicidad y lo har sentirse realizado de verdad. Aunque actuar de
manera orgullosa, desear compartir su vida con una persona fiel, afectuosa y respetuosa.");
}
if (SZ==3)
{
printf("Tu Signo Zodiacal es GEMINIS");
printf("\nEn el amor");
printf("\nNo conocer el trmino fidelidad, ya que lo asimilar como sinnimo de aburrimiento.
Sin embargo, aunque su libertad ser algo muy importante y no estar dispuesto a renunciar a
ella de manera fcil, lo har si encuentra a una persona demasiado valiosa");
}
if (SZ==4)
{
printf("Tu Signo Zodiacal es CANCER");
printf("\nEn el amor");
printf("\nEl romanticismo y la sensibilidad, que le caracterizan, harn del amor un sentimiento
vital para su existencia. Desear encontrar esa alma gemela que le ofrezca comprensin,
compaa y apoyo incondicional. Existen dos tipos de Cncer, el que atrae con facilidad al sexo
opuesto o el que se sume en la ms profunda soledad.");
}
if (SZ==5)
{
printf("Tu Signo Zodiacal es LEO");
printf("\nEn el amor");
printf("\nEs estable, organizado y necesita recibir por parte de su pareja el asidero y el apoyo
que le permita avanzar y salir adelante, por esa razn aunque tiende a ser individualista,
difcilmente se ve un Leo solitario. Pretender dominar a su pareja, lo cual lo har sentirse
seguro del otro.");
}
if (SZ==6)
{
printf("Tu Signo Zodiacal es VIRGO");
printf("\nEn el amor");
printf("\nVirgo es el signo menos apasionado de todo el zodaco. La idea de ser presa de sus
instintos y deseos le ocasionar temor y creer que enamorarse, en el mejor de los casos, slo
le traer dolores de cabeza. Intentar, pase lo que pase, controlar sus sentimientos y
racionalizar el trmino amor.");
}
if (SZ==7)
{
printf("Tu Signo Zodiacal es LIBRA");
printf("\nEn el amor");
printf("\nLa naturaleza enamoradiza y no muy estable que le caracteriza, dar pie al
surgimiento de muchas alianzas en el curso de su vida y siempre estar a la espera de la
persona perfecta o ideal para entregarse sin restricciones.");
}
if (SZ==8)
{
printf("Tu Signo Zodiacal es ESCORPION");
printf("\nEn el amor");
printf("\n El amor ser un motivo para vivir o morir. Poseer gran simpata en el amor,
especialmente, por las personas con las que difiere en edad. Aunque los lazos que establezca
sern slidos y duraderos, estar expuesto a pasar por temporadas, en las que se generarn
brechas enormes.");
}
if (SZ==9)
{
printf("Tu Signo Zodiacal es SAGITARIO");
printf("\nEn el amor");
printf("\nSer propenso a sentir rpidamente las llamas y la ilusin del enamoramiento. Es
proclive a las decepciones y a las frustraciones sentimentales; sin embargo, no se dejar abatir
y se lanzar de cabeza a nuevas experiencias. La vida le ofrecer demasiadas maravillas para
limitarse a una sola persona, lo que le impedir vivir cada uno de sus romances a plenitud.");
}
if (SZ==10)
{
printf("Tu Signo Zodiacal es CAPRICORNIO");
printf("\nEn el amor");
printf("\nPor muy enamorado que est, siempre mantendr los pies sobre la tierra y es difcil
que caiga en actitudes romnticas o se implique verdaderamente en una relacin; sin
embargo, el da que abra la puerta de su corazn a un nuevo sentimiento, ser muy difcil que
rompa esa unin.");
}
if (SZ==11)
{
printf("Tu Signo Zodiacal es ACUARIO");
printf("\nEn el amor");
printf("\nSus relaciones sentimentales se movern en el laberinto de lo impredecible. Aparte
de su originalidad, Acuario siempre reservar algo de su personalidad para s mismo, de esta
manera tratar de conservar su intimidad. Las ataduras de cualquier tipo, lo harn sentir
incmodo y no soportar ninguna clase de presin. Sin embargo, aunque puede ser fiel y
mantener una relacin estable, jams renunciar a su idea de independencia.");
}
if (SZ==12)
{
printf("Tu Signo Zodiacal es PISCIS");
printf("\nEn el amor");
printf("\nEl manejo del amor abarca gran parte de su vida, ya que cuando se enamora, se
entrega por completo y cree que la persona que ha encontrado es la mejor del mundo lo que
como es obvio le ocasionar mltiples sinsabores. Sin embargo, esto no significa que se pueda
volver a enamorar de otra persona con la misma intensidad.");
}
getch();
}