lunes, 22 de abril de 2013

Switch case, viajes y El ejercicio 10.

Switch case.

Se utiliza este comando para crear varios acciones para diferentes decisiones tomadas, en la practica, su uso es muy similar a la sentencia if-else. en este ejemplo se puede apreciar como se crea un menú a partir de switch case.

#include <stdio.h>
#include <conio.h>
#include <iostream.h>

void main()
{

int nOpcionDeViaje;
char cRespuesta, cRespuesta1, cNombre[35], cTipoDeViaje;

cout <<"===============================================================================" <<endl;
      cout <<"\t\t\t\tBienvenido" <<endl;
    cout <<"===============================================================================\n" <<endl;
      cout <<"escriba aqui su nombre: ";
      cin >>cNombre;


      do
            {

            cout <<"\nEstos son los paquetes que tenemos disponibles: " <<endl;
cout <<"\n1) Veracruz\t\t2) Viaje a Chiapas" <<endl;
            cout <<"3)Guanajuato \t\t4) Michoacan" <<endl;
cout <<"5) Guerrero\n" <<endl;
            cout <<"seleccione una opcion: ";
cin >>nOpcionDeViaje;


            switch(nOpcionDeViaje)
            {
            case 1:
                        clrscr();
                                    cout <<"Destino: Veracruz" <<endl;
                        cout <<"\neste paquete incluye: \n" <<endl;
                  cout <<"1.-visita al acuario\n2.-visita a la piramide del Tajin\n3.-paseo por el mar\n" <<endl;
                                    cout <<"le gustaria adquirrir este paquete <S/N>";
                                    cin >>cRespuesta;


                                    if(cRespuesta=='s' || cRespuesta=='S')
                                    {
                                                cout <<"\nahora seleccione el tipo de viaje que desea: \n";
                                                cout <<"\na) Basico\nb) Normal\nc) Completo\n";
                                                cout <<"\nelige: ";
cin >>cTipoDeViaje;


                                          cout <<"\n******************** gracias por su preferencia, buen viaje ******************" <<endl;
                                                getch();
                                                return;
                                          }


break;

                        case 2:
                        clrscr();
                                    cout <<"Destino: Viaje a Chiapas" <<
                        cout <<"este paquete incluye: \n" <<endl;
                  cout <<"1.-viaje en lancha en el canon del sumidero\n2.-excursion en palenque\n3.-visita a la capital del estado\n" <<endl;
                                    cout <<"le gustaria adquirrir este paquete <S/N>";
                                    cin >>cRespuesta;

                                    if(cRespuesta=='s' || cRespuesta=='S')
                                    {
                                                cout <<"\nahora seleccione el tipo de viaje que desea: \n";
                                                cout <<"\na) Basico\nb) Normal\nc) Completo\n";
                                                cout <<"\nelige: ";
cin >>cTipoDeViaje;


                                          cout <<"\n******************** gracias por su preferencia, buen viaje ******************" <<endl;
                                                getch();
                                                return;
                                          }

                                    break;

                        case 3:
                        clrscr();
                                    cout <<"Destino: Guanajuato" <<endl;
                        cout <<"este paquete incluye: \n" <<endl;
                  cout <<"1.-museo de las momias\n2.-jardin principal de la ciudad\n3.-recorrido por las minas de plata \n" <<endl;
                                    cout <<"le gustaria adquirrir este paquete <S/N>";
                                    cin >>cRespuesta;

                                    if(cRespuesta=='s' || cRespuesta=='S')
                                    {
                                                cout <<"\nahora seleccione el tipo de viaje que desea: \n";
                                                cout <<"\na) Basico\nb) Normal\nc) Completo\n";
                                                cout <<"\nelige: ";
cin >>cTipoDeViaje;


                                          cout <<"\n******************** gracias por su preferencia, buen viaje ******************" <<endl;
                                                getch();
                                                return;
                                          }

                                    break;

case 4:
                        clrscr();
                                    cout <<"Destino: Michoacan" <<endl;
                        cout <<"este paquete incluye: \n" <<endl;
                  cout <<"1.-lago de patzcuaro\n2.-parque nacional\n3.-Janitzio\n" <<endl;
                                    cout <<"le gustaria adquirrir este paquete <S/N>";
                                    cin >>cRespuesta;

                                    if(cRespuesta=='s' || cRespuesta=='S')
                                    {
                                                cout <<"\nahora seleccione el tipo de viaje que desea: \n";
                                                cout <<"\na) Basico\nb) Normal\nc) Completo\n";
                                                cout <<"\nelige: ";
cin >>cTipoDeViaje;


                                          cout <<"\n******************** gracias por su preferencia, buen viaje ******************" <<endl;
                                                getch();
                                                return;
                                          }

                                    break;

case 5:
clrscr();
cout <<"Destino: Guerrero" <<endl;
                        cout <<"este paquete incluye: \n" <<endl;
                  cout <<"1.-excursion por las grutas\n2.-Acapulco \n3.-otras playas\n" <<endl;
                                    cout <<"le gustaria adquirrir este paquete <S/N>";
                                    cin >>cRespuesta;

                                    if(cRespuesta=='s' || cRespuesta=='S')
                                    {
                                                cout <<"\nahora seleccione el tipo de viaje que desea: \n";
                                                cout <<"\na) Basico\nb) Normal\nc) Completo\n";
                                                cout <<"\nelige: ";
cin >>cTipoDeViaje;


                                          cout <<"\n******************** gracias por su preferencia, buen viaje ******************" <<endl;
                                                getch();
                                                return;
                                          }

                                    break;

default: cout <<"\nopcion incorrecta\n" <<endl;
}

              cout <<"\ndeseea ver las otras opciones <S/N>: ";
cin >>cRespuesta1;
                  clrscr();

            }while(cRespuesta1=='s' || cRespuesta1=='S');



      getch();
}


La tienda y El ciclo For (Ejercicio número 9)


Ciclo For.

El ciclo for se emplea para realizar una tarea siempre y cuando la condición sea verdadera  generalmente se usa junto a los contadores.
A diferencia del ciclo Do-While, con el ciclo for se repite la acción tantas veces sea necesarias hasta que la condición deje de ser verdadera. 

#include <conio.h>
#include <iostream.h>
#include <stdio.h>

void main()
{
char nombre[30];
char respuesta;
char respuesta2;
char respuesta3;
int monitor_15=1900;
int monitor_18=2200;
int computadora=4800;
int teclado=420;
int mouse_inalambrico=310;
int altavoces=540;
int computadora_portatil=8050;
int audifonos=280;
int impresora_tinta=2650;
int impresora_laser=4300;
int restante=0;
int total=0;
int producto=0;
int numero_de_pagos=0, pago=0;
float abono,abono2 ,saldo_a_favor;

cout <<"ingrese su nombre: ";
cin >>nombre;
cout <<"de la lista siguiente, seleccione los productos que desea comprar" <<endl;
cout <<"\n1) monitor de 15''\n2) monitor de 18''\n3) computadora \n4) teclado \n5) mouse inalambrico \n6) altavoces \n7) computadora portatil \n8) audifonos \n9)impresora de tinta\n10) impresora laser" <<endl;
do {
cout <<"\nIindique el numero del producto desea comprar:";
cin >>producto;

if(producto==1)
{
total=total+monitor_15;
}

else if(producto==2)
{
total=total+monitor_18;
}

else if(producto==3)
{
total=total+computadora;
}
else if(producto==4)
{
total=total+teclado;
}

else if(producto==5)
{
total=total+mouse_inalambrico;
}

else if(producto==6)
{
total=total+altavoces;
}

else if(producto==7)
{
total=total+computadora_portatil;
}
else if(producto==8)
{
total=total+audifonos;
}

else if(producto==9)
{
total=total+impresora_tinta;
}

else if(producto==10)
{
total=total+impresora_laser;
}

else {
cout <<"opcion no valida";
getch();
break;
}

cout <<"quire seleccionar otro producto: " ;
cin >>respuesta;
} while (respuesta=='s' || respuesta=='S');

cout <<"el total a pagar es de: " <<total <<endl;
cout <<"indique el numero de pagos que desea  hacer para cubrir su adeudo: ";
cin >>numero_de_pagos;
abono=total/numero_de_pagos;
cout <<"sus pagos seran de: " <<abono <<endl;
   getch();

do
   {
    clrscr();

    for(abono2=1; abono2<=total;abono2+abono2)
{

          do
            {
            //respuesta2='n';
          cout <<"Desea realizar un pago: <s/n> ";
      cin >>respuesta2;
            cout <<"ingrese la cantidad:";
            cin >>abono2;
restante=total-abono2;


            if(restante<total)
{

               cout <<"gracias por su pago, restan: $ "<<restante <<endl;

               }

               else if(restante>=total)
               {

               saldo_a_favor=restante-total;
               cout <<"felicidades has terminado de pagar " <<nombre;
               cout <<"cuenta con un saldo a favor de: " <<saldo_a_favor;
               getch();
               continue;

               }
             }while(respuesta2=='s' || respuesta2=='S');
         }

         cout <<"quiere realizar otro pago " ;
         cin >>respuesta3;

    }while(respuesta3=='s' || respuesta3=='S');


    getch();
}

Imagen alusiva:

Registro de una Escuela (ejercicio 8)

Ejercicio numero 8

En este ejercicio se hace uso de diversos recursos para realizar las acciones que se desean:
registrar alumnos, a los cuales se les pide su nombre, edad, direccion, etc. Posteriormente se almacena esa informacion se pone a disposicion para su consulta.

el ejemplo:


#include <stdio.h>
#include <windows>
#include <conio.h>
#include <iostream.h>

struct alumnos{
char nombre[20];
char direccion[50];
char carrera[25];
int edad;
float promedio;
};

void main()
{
 alumnos mecatronica[100];
 int estudiante=0;
 char respuesta='s';

 int no_aceptado=0, contador_ejecuciones=0,registro_consulta=0, contador=0;

   cout <<"********************************************************************************\n" <<endl;
   cout <<"**************************  UNIVERSIDAD AUTONOMA  ******************************\n" <<endl;
   cout <<"********************************************************************************\n" <<endl;
cout <<"\n\t\t\tregistrese aqui, ingrese sus datos" <<endl;
do {
    contador_ejecuciones++;

         cout <<"\nregistro numero: "<<(estudiante+1) <<endl;

cout <<"\n\ningrese su nombre: ";
cin >> mecatronica[estudiante].nombre;

cout <<"su promedio es de: ";
cin  >>mecatronica[estudiante].promedio;

if(mecatronica[estudiante].promedio<8 || mecatronica[estudiante].promedio>10)
{
cout <<"\nLo siento su promedio no es el adecuado para est institucion, busque otras opciones" <<endl;
no_aceptado++;
getche();
continue;
}


cout <<"indique su edad: ";
cin >>mecatronica[estudiante].edad;

if(mecatronica[estudiante].edad<=10 || mecatronica[estudiante].edad>40)
{
cout <<"\nsu edad no es aceptada" <<endl;
no_aceptado++;
getche();
continue;
}

cout <<"nombre de la carrera a la que pertenece: ";
cin >>mecatronica[estudiante].carrera;

      cout <<"su direccion es: ";
cin >>mecatronica[estudiante].direccion;

cout <<endl<<endl<<"desea hacer otro registro?";
cin >>respuesta;

   estudiante++;
}while (respuesta=='s' || respuesta=='S');

   clrscr();
cout <<"Numero de personas registradas: " <<estudiante <<endl;
cout <<"Cantidad de personas no aceptadas: " <<no_aceptado <<endl;
cout <<"El programa se ha ejecutado: " <<contador_ejecuciones <<" veces" <<endl;

getche();

   do{
          cout <<"\ningrese el numero de registro que desea consultar: ";
          cin >>registro_consulta;
          registro_consulta--;
          if(registro_consulta<0 || registro_consulta>=estudiante)
          {
            cout <<"el numero de registro solicitado no existe" <<endl;
               getch();

            }
            else
            {

            cout <<"nombre: " <<mecatronica[registro_consulta].nombre <<endl;
cout <<"edad: " <<mecatronica[registro_consulta].edad <<endl;
          cout <<"promedio: " <<mecatronica[registro_consulta].promedio <<endl;
cout <<"carrera: " <<mecatronica[registro_consulta].carrera <<endl;
cout <<"direccion " <<mecatronica[registro_consulta].direccion<<endl <<endl;
            }

cout <<endl<<endl<<"desea consultar otro registro?";
cin >>respuesta;

   contador++;
}while (respuesta=='s' || respuesta=='S');

}


Uso de And y Or (Ejercicio 7).

And y Or.

Cuando se usa el comando if-else, generalmente se indica cuando se debe ejecutar la accion, es decir, cuando se cumpla una condicion. Para indicar una condicion existen varios simbolos:

>         mayor que
<         menor que
==       igual (comparación)
<=       menor o igual que
>=       mayor o igual que
&&     And (y)
||         Or (o)
=!       Diferente

en este ejemplo solo se utilizan el And y el Or:


#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <windows>

char o, a;

void main()
{
do
{clrscr();
 do
 {clrscr();
  cout <<"seleccione una de las siguientes figuras: " <<endl;
       cout <<" r)- rectangulo\n c)- circulo\n h)- hexagono" <<endl;
       cout <<"su respuesta: ";
       cin >>o;
  system("pause");

  }while(o!= 'r' && o!='c' && o!='h');

  cout <<"la opcion es correcta, puede continuar" <<endl;
  cout <<"quiere volver al inicio? <s = si..   n=no >";
  cin >>a;
  cout <<endl;
  system("pause");
}while(a=='s'||a=='S');

getche();

}











Sentencia Doble (Ejercicio número 6).

Sentencia If-else doble.

Se hace referencia a una Sentencia doble, cuando existen dos o mas sentencias if o else if, de tal manera que indica la accion que se puede tomar en determinado numero de casos.
en este programa se incluye la librería <windows> y se hace uso del comando System("pause"), el cual funciona de manera análoga al comando getch.

ejemplo:
#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <windows>


char nombre[25], carrera[25], op;
float base=0, altura=0, radio=0, area=0, perim=0, cir=0, diametro=0, pi=3.14159;


void main()
{
 cout <<"Ingresar nombre" <<endl;
  cin >> nombre;
   cout <<"ingresar carrera" <<endl;
    cin >> carrera;
     cout <<"seleccion de figuras a operar" <<endl;
      cout <<"t)-Triangulo" <<endl;
      cout <<"r)-rectangulo" <<endl;
      cout <<"c)-circulo" <<endl;
       cout <<"seleccione la opcion a operar:";
        cin >>op;

//limpiar pantalla
clrscr();
 if(op=='t')
 {
  cout <<"selecciono triangulo, ingrese datos:" <<endl;
   cout <<"base:";
    cin >> base;
     cout <<"altura:";
      cin >> altura;
       area=(base*altura)/2;
       perim= base*3;

        cout <<"\nel area es:" <<area <<endl;
        cout <<"el perimetro es:" <<perim <<endl;

  //obtener area y perimetro
 }
 else if(op=='r')
 {
  cout <<"esta operando un rectangulo, ingrese datos" <<endl;
   cout <<"base:";
    cin >> base;
     cout <<"altura:";
      cin >> altura;
       area=(base*altura);
       perim=(base*2)+(altura*2);

        cout <<"\nel area es:" <<area <<endl;
        cout <<"el perimetro es:" <<perim <<endl;

 //optener area, perimetro
 }
 else if(op=='c')
 {
  cout <<"selecciono circulo, ingrese datos:" <<endl;
   cout <<"radio:";
    cin >> radio;
     diametro=radio*2;
      cir=(diametro)*pi;
       area=(radio*radio)*pi;

        cout <<"\nel diametro es:" <<diametro <<endl;
        cout <<"la circunferencia es:" <<cir <<endl;
         cout <<"el area es:" <<area <<endl;

 //obtener circunferencia y diametro

 }
 else
 {
 cout <<"opcion no valida, favor de reintentar" <<endl;
 }
 system("pause");
}









   

El pez, Sentencia if-else (ejercicio número 5).

La Sentencia if - else

Se emplea para determinar el flujo que debe seguir un programa dependiendo de las deciciones que el usuario tome.

un ejemplo de su uso se muestra en el siguente programa.


#include <conio.h>
#include <iostream.h>
#include <stdio.h>

    char  nom[30],dir[20],r;
    int   edd=0,mas=0;

    void main()
{
   cout <<"      introducir nombre del alumno:"<<endl;
    cin >>nom;
   cout <<"       introducir la edad:"<<endl;
    cin >>edd;
   cout <<"       introducir su direccion:"<<endl;
    cin >>dir;
   cout <<"       introducir si tienes mascota<1=si...2=no>:"<<endl;
    cin >>mas;
   if  (mas==1)
    {
      cout<<"        felicidades por tener una mascota"<<endl;
      cout <<"       Que mascota es < p=pez ... d= no es un pez >:"<<endl;
      cin>>r;
       if  (r=='p')
     {
     cout<<"    tu mascota es un pez y necesita agua"<<endl;
     }
     else
     {
     cout <<"  si tu mascota no es un pez entonces Que es?"<<endl;
     }
     }
     else
     {
     cout<<"       consiguete una"<<endl;
     }


    getche();
 }



El comando cin (Ejercicio numero 4).

Introducir Datos.

Ahora es el momento de utilizar el comando cin, éste se emplea para indicar al programa que debe esperar hasta que el usuario ingrese el valor de una variable previamente declarada.
Ademas tambien se hace uso de if-else para condicionar la accion que se debe ejecutar dependiendo del valor que se introduzca.

#include <conio.h>
#include <iostream.h>
#include <stdio.h>

char nombre[25], dir[35];
int edad=0, dias=0;
float salario=0, sueldo=0;

void main ()
{

cout <<"introducir el nombre del empleado" <<endl;
cin >> nombre;
cout <<"introducir la edad" <<endl;
cin >> edad;
cout <<"introducir su direccion" <<endl;
cin >> dir;
cout << "Introducir salario por dia" <<endl;
cin >> salario;
cout <<"Introducir dias trabajados" <<endl;
cin >> dias;
sueldo=salario*dias;//proceso para obtener sueldo y limpiar pantalla
clrscr ();

cout <<"Desplegando datos del empleado" <<endl;
cout <<"\nNombre del Empleado:" <<nombre <<endl;
cout <<"edad:" <<edad <<endl;
cout <<"direccion:" <<dir <<endl;
cout <<"Sueldo: $" <<sueldo;
if (sueldo>1400)
{
cout <<"\n\nEl salario esta dentro del promedio";
}
else
{
cout <<"\n\nEl salario esta por debajo de la media";
}

getch ();

}


Imagen representativa del programa