lunes, 22 de abril de 2013

C++: operaciones aritmeticas y decisiones


BORLAND C++;

PROGRAMA 6: Sentencia simple IF-ELSE y operaciones matemáticas


IF-ELSE

Se trata de una estructura de control que permite redirigir un curso de acción según la evaluación de una condición simple, sea falsa o verdadera.
Si la condición es verdadera, se ejecuta el bloque de sentencias 1, de lo contrario, se ejecuta el bloque de sentencias 2.
   IF (Condición) 
      (Bloque de sentencias 1)
   ELSE
      (Bloque de sentencias 2)

ejemplo:

el siguiente programa consiste en un menu de opciones para calcular algunas operaciones basicas como areas y perimetros de figuras, a partir de su seleccion. solo debera de aparecer la peticion de datos para ser procesados, muestra resultados al final.

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

/*ALICIA CHAVEZ ROMERO
2do CUATRIMESTRE "C"
MECATRONICA
FIGURAS
*/
char nom[30],car[20], op;
float base=0,altura=0, lad1=0, lad2=0, lad3=0, radio=0, a, p;

void main()
{
cout<<"******************************************************************"<<endl;
cout<<"******************************************************************"<<endl;
cout<<"******************************************************************"<<endl;
   cout<<"Ingresar nombre"<<endl;
      cin>>nom;
      cout<<"Ingresar carrera"<<endl;
         cin>>car;
         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"<<endl;
           cin>>op;
           //limpiar pantalla
           clrscr();

if  (op=='t')
{
 cout<<"selecciono triangulo, INGRESAR DATOS"<<endl;
      //obtener, Area y Perimetro
      cout<<"ingresar base.......";
        cin>>base;
      cout<<"ingresar altura.....";
        cin>>altura;
      cout<<"ingresar el valor del lado 1....";
        cin>>lad1;
      cout<<"ingresar el valor del lado 2....";
        cin>>lad2;
      cout<<"ingresar el valor del lado 3....";
        cin>>lad3;
      a=(base*altura)/2; //haciendo operacion
      p=lad1+lad2+lad3;
      clrscr();
      cout<<".........RESULTADOS........."<<endl;
      cout<<"area......."<<a<<endl;
      cout<<"perimetro....."<<p<<endl;
}
else if  (op=='r')
{
 cout<<"selecciono rectangulo, INGRESAR DATOS"<<endl;
      //obtener, Area y Perimetro
      cout<<"ingresar base....";
        cin>>base;
      cout<<"ingresar altura....";
        cin>>altura;
      a=(base*altura); //haciendo operacion
      p=(base + altura + base + altura);
      clrscr();
      cout<<"...............RESULTADOS.........."<<endl;
      cout<<"area......"<<a<<endl;
      cout<<"perimetro......."<<p<<endl;
}
else if  (op=='c')
{
 cout<<"selecciono CIRCULO, INGRESAR DATOS"<<endl;
      //obtener, Area y Perimetro
      cout<<"ingresar valor del radio...";
        cin>>radio;
      a=radio*2;
      p=(3.1416*a); //haciendo operacion
      clrscr();
      cout<<"...............RESULTADOS........"<<endl;
      cout<<"circunferencia........"<<p<<endl;
      cout<<"diametro......."<<a<<endl;
}
else
{
cout<<"OPCION NO VALIDA FAVOR DE REINTENTAR"<<endl;
}
system("pause");
}

Imagenes del programa ejecutado:


pantalla inicial y llenado de informacio por parte del usuario y apertura del menu donde se debe de seleccionar una opción y entra en accion la condicion IF-ELSE para continuar con la ejecución

como en este caso se selecciono el triangulo, pues e pieden las medidas para hacer los calculos pertinentes (operaciones aritmeticas) que procesara automaticamente

en la ultima pantalla solo se muestran los resultados de las operaciones.


referencia:
http://es.wikipedia.org/wiki/Estructuras_de_control

C++, SENTENCIA DOBLE


BORLAND C++;

PROGRAMA 5: Sentencia doble, IF-ELSE


Selección if simple

Se trata de una estructura de control que permite redirigir un curso de acción según la evaluación de una condición simple, sea falsa o verdadera.
Si la condición es verdadera, se ejecuta el bloque de sentencias 1, de lo contrario, se ejecuta el bloque de sentencias 2.
   IF (Condición) THEN
      (Bloque de sentencias 1)
   ELSE
      (Bloque de sentencias 2)
   END IF
Se pueden plantear múltiples concisiones simultáneamente, si se cumple la (Condición 1), se ejecuta (Bloque de sentencias 1) en caso contrario se comprueba la (Condición 2), si es cierta se ejecuta (Bloque de sentencias 2), y así sucesivamente hasta n condiciones, si ninguna de ellas es cumple se ejecuta (Bloque de sentencias else).
   IF (Condición 1) THEN
      (Bloque de sentencias 1)
   ELSEIF (Condición 2) THEN
      (Bloque de sentencias 2)
 
   .....
 
   ELSEIF (Condición n) THEN
      (Bloque de sentencias n)
   ELSE
      (Bloque de sentencias ELSE)
   END IF



PROGRAMA:

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

/*ALICIA CHAVEZ ROMERO
2do CUATRIMESTRE "C"
MECATRONICA
SENTENCIA DOBLE
*/
char nom[30], dir[30],mas;
int  ed=0, resp;

void main()
{
cout<<"*********************************************************************"<<endl;
cout<<"*********************************************************************"<<endl;
cout<<"*********************************************************************"<<endl;
   cout<<"\n Introducir Nombre del alumno..."<<endl;
    cout<<">    ";
      cin>>nom;
   cout<<"\n Introducir Edad................"<<endl;
    cout<<">    ";
      cin>>ed;
   cout<<"\n Introducir Direccion..........."<<endl;
    cout<<">     ";
      cin>>dir;
   cout<<"\n Introducir si tiene mascota <1=si---2=no>"<<endl;
    cout<<">    ";
      cin>>resp;

if  (resp==1)
{
  cout<<"\n Seleccionar que mascota es:"<<endl;
  cout<<"P=PEZ "<<endl;
  cout<<"G=GATO "<<endl;
  cout<<"P=PERRO "<<endl;
  cout<<"O=OTRO "<<endl;
    cin>>mas;
      if (mas=='p' || mas=='P')
      {
       cout<<"necesita agua tu pez"<<endl;
      }
      else
      {
        cout<<"no se que necesita"<<endl;
      }
}
else
{
cout<<"Ya adopta una te lo recomiendo"<<endl;
}
getche();
}



Parte 1: Petición de datos

Parte 2: Conforme se van llenando los datos se van realizando las condiciones, por ejemplo en Introducir si tiene mascota.... hubiese puesto una etra o un numero que no fuese el 1 no hubiera desplegado la siguiente sentencia, pero en esta ocasion si contesto 1 y se muestra la siguiente condicion la cual es responder que mascota es.... de igual forma si hubiese contestado algo ajeno a P hubiera realizado la accion indicada en el programa escrito

C++: El uso del AND y el OR

BORLAND C++;

PROGRAMA 7: El uso del AND y el OR. system("pause")


El uso del AND y el OR


  • and, que significa ‘y’ y se representa con &&
  • or, que significa ‘o’ y se representa con || (alt+124 dos veces)
Sirven para relacionar dos o más operaciones lógicas. Al usar && (y), las dos operaciones tienen que ser verdaderas para que arroje un resultado verdadero, si no, es falso. Al usar || (o), las dos operaciones tienen que ser falsas para que arroje un resultado falso, si no, es verdadero.


system("pause")

para pausar un poco el programa es necesario utilizar la subrutina system, que envía una orden al sistema operativo: detenerse. El programa, entonces, queda así:


EJEMPLO:
 el siguiente programa incluira el uso del and y el or en cualquier momento, es un menu de opciones simple y ademas utilizara la herramienta system("pause"), con su respectiva libreria #include <windows>.



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

/*ALICIA CHAVEZ ROMERO
2do CUATRIMESTRE "C"
MECATRONICA
USO DEL AND Y EL OR
*/
char r,rex;

void main()
{
do
{
 clrscr();
 cout<<"*******BIENVENIDO A NUESTRO JUEGO********"<<endl;
 cout<<"#############   FIGURAS   ###############"<<endl;
 cout<<"INSTRUCCION: Se trata de ingresar la figura deseada a operar"<<endl;
 cout<<"\n\n Seleccion    \n t) Triangulo  \n  c) Cuadrado  \n  r)Rectangulo"<<endl;
   do
   {
   system ("pause"); //coloca la leyenda
     cout<<"Ingrese Opcion:\n";
     cin>>r;
   }while (r!='t' && r!='c' && r!='r');
   system("pause"); //colocando leyenda
    cout<<"FELICIDADES: Le atinaste a una de las opciones\n";
    cout<<"La letra seleccionada fue:...."<<r<<endl;
    cout<<"DESEA VOLVER A SELECCIONAR UNA OPCION? **S=SI****N=NO**";
    cin>>rex;
}while (rex=='s' || rex=='S');
getche();

 }

se muestran las imagenes del programa ejecutado:

portada principal

con la utlizacion de system("pause"), aparece la leyenda Presione una tecla para continuar... esta es automaticamente y con cualquier tecla presionada se sigue ejecutando el programa

utilizacion del siguiente system("pause"), para dar una pequeña pausa al programa y se imprime el resultado de la seleccion, se presenta el ciclo DO-WHILE

C++, introduccion de datos, contadores y acumuladores


BORLAND C++;

PROGRAMA 8: Introducción de datos y Utilización de contadores y acumuladores



Contador:
Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o acción. Los contadores se utilizan con la finalidad de contar sucesos o acciones internas de un bucle; deben realizar una operación de inicialización y posteriormente las sucesivas de incremento o decremento del mismo. La inicialización consiste en asignarle al contador un valor inicial. Se situará antes y fuera del bucle.

estructura:

int cont = 0
inicio del bucle
i = i +1
fin del bucle


Acumulador:

Es una variable que suma sobre sí misma un conjunto de valores para de esta manera tener la suma de todos ellos en una sola variable. La diferencia entre un contador y un acumulador es que mientras el primero va aumentando de uno en uno, el acumulador va aumentando en una cantidad variable.
 
estructura:
 
int acum = 0
inicio del bucle
acum = acum + valor
fin del bucle
 
 
 
 
ejemplo:
el siguiente programa pedira que ingresen datos personales para poder ser aceptado en una escuela X, se utilizarán las condiciones IF-ELSE, DO-WHILE, tambien el uso del AND y el OR, tambien el uso de contadores para saber el numero de intentos, de los aceptados y rechazados. Los datos al final seran mostrados en pantalla asi como el recuento de los contadores.



#include <conio.h>

#include <iostream.h>

#include <stdio.h>

#include <windows>


/*ALICIA CHAVEZ ROMERO

2do CUATRIMESTRE "C"

MECATRONICA

REGISTRO DE ALUMNOS

*/

char n[30],d[30],i[40],st[10],e,s,r,res;

int ed=0;

float  p=0;

short int cnt1,cnt2,cnt3;


void main()

{

cnt1==0;

cnt2==0;

cnt3==0;


do

{


  clrscr();

   cout<<"             ####### BIENVENIDO A NUESTRA INSTITUCION #######"<<endl;
   cout<<"             ##############      UTVM     ###################"<<endl;
   cout<<"\n INTRODUCCION DE DATOS PERSONALES"<<endl;
   cout<<"\n........INGRESAR NOMBRE COMPLETO......"<<endl;
    cin>>n;
   cout<<"\n........INGRESAR DIRECCION"<<endl;
    cin>>d;
   cout<<"\n........INGRESAR SEXO"<<endl;
   cout<<"..f=Femenino.........m=Masculino.."<<endl;
    cin>>s;
    cnt3++;
     if (s!='f' && s!='m')
     {
       do
       {
        clrscr();
        cout<<"\n Lo sentimos dato invalido"<<endl;
        cout<<"\n........INGRESAR SEXO"<<endl;
         cout<<"..f=Femenino.........m=Masculino.."<<endl;
          cin>>s;
        } while (s!='f' && s!='m');
          cout<<"\n........INGRESAR EDAD"<<endl;
          cin>>ed;
          if(ed>=17&&ed<=40)
          {
           cout<<".......INGRESAR ESTADO CIVIL"<<endl;
           cin>>st;
           clrscr();
            cout<<"\n\nINTRODUCCION DE DATOS ESCOLARES"<<endl;
             cout<<"\n\n.......INGRESAR ESCOLARIDAD"<<endl;
              cout<<"    P=Primaria\n   S=Secundaria\n   R=Preparatoria\n  "<<endl;
               cin>>e;
           if(e=='r' || e=='R')
             {
             cout<<"\n......INGRESE NOMBRE DE ESCUELA DE PROCEDENCIA"<<endl;
               cin>>i;
             cout<<"\n......INGRESE PROMEDIO DE LA ESCUELA DE PROCEDENCIA"<<endl;
               cin>>p;
               if(p>=7)
               {
               cout<<"ALUMNO INSCRITO"<<endl;
                        cnt1++;
               cout<<"NOMBRE:...."<<n<<endl
               cout<<"DIRECCION:...."<<d<<endl;
               cout<<"SEXO:...."<<s<<endl;
               cout<<"EDAD:...."<<ed<<endl;
               cout<<"ESTADO CIVIL:...."<<st<<endl;
               cout<<"ESCOLARIDAD:....Preparatoria"<<endl;
               cout<<"ESCUELA DE PROCEDENCIA:...."<<i<<endl;
               cout<<"PROMEDIO DE ESCUELA DE PROCEDENCIA:...."<<p<<endl;
               }
             else
              {
              cout<<"Solo admitimos alumnos con promedio mayor a 7"<<endl;
              }
             }
             else
             {
             cout<<"Solo admitimos alumnos con preparatoria terminada"<<endl;
             }
           }
           else
           {
           cout<<"Solo admitimos alumnos con edad mayor a 17 años y menor a 40 años"<<endl;
           }
          }
          else
          {
           cout<<"\n........INGRESAR EDAD"<<endl;
          cin>>ed;
          if(ed>=17&&ed<=40)
          {
           cout<<".......INGRESAR ESTADO CIVIL"<<endl;
           cin>>st;
           clrscr();
            cout<<"\n\nINTRODUCCION DE DATOS ESCOLARES"<<endl;
             cout<<"\n\n.......INGRESAR ESCOLARIDAD"<<endl;
              cout<<"    P=Primaria\n   S=Secundaria\n   R=Preparatoria\n  "<<endl;
               cin>>e;
           if(e=='r' || e=='R')
             {
             cout<<"\n......INGRESE NOMBRE DE ESCUELA DE PROCEDENCIA"<<endl;
               cin>>i;
             cout<<"\n......INGRESE PROMEDIO DE LA ESCUELA DE PROCEDENCIA"<<endl;
               cin>>p;
               if(p>=7)
               {
               clrscr();
               cout<<"ALUMNO INSCRITO"<<endl;
                  cnt1++;
               cout<<"NOMBRE:...."<<n<<endl;
               cout<<"DIRECCION:...."<<d<<endl;
               cout<<"SEXO:...."<<s<<endl;
               cout<<"EDAD:...."<<ed<<endl;
               cout<<"ESTADO CIVIL:...."<<st<<endl;
               cout<<"ESCOLARIDAD:....Preparatoria"<<endl;
               cout<<"ESCUELA DE PROCEDENCIA:...."<<i<<endl;
               cout<<"PROMEDIO DE ESCUELA DE PROCEDENCIA:...."<<p<<endl;
               }
             else
              {
              cout<<"Solo admitimos alumnos con promedio mayor a 7"<<endl;
              cnt2++;
              }
             }
             else
             {
             cout<<"Solo admitimos alumnos con preparatoria terminada"<<endl;
             cnt2++;
             }
           }
           else
           {
           cout<<"Solo admitimos alumnos con edad mayor a 17 años y menor a 40 años"<<endl;
           cnt2++;
           }
          }
          cout<<"\n DESEA VOLVER A INTRODUCIR DATOS DE OTRO ASPIRANTE"<<endl;
          cout<<".....s=si......n=no...."<<endl;
          cin>>res;
}while(res=='s'||res=='S');
  cout<<"INTENTOS:... "<<cnt3<<endl;
  cout<<"ACEPTADOS:... "<<cnt1<<endl;
  cout<<"RECHAZADOS:.. "<<cnt2<<endl;
getche();
}

Se muestran las imagenes del programa ejecutado.


portada principal


llenado de datos personales y se ejecuta la primer condicion con respecto a la eda debe de ser mayor a 17 años en este caso si cumplio la condicion asi q siguio ejecutandose el programa.

siguiente condicion( la seleccion de la escolaridad), si no hubiese sido la R, detendria el proceso de inscripción

al final se imprimen todos los datos para ser confirmados y se observa la funcion del DO-WHILE
como la respuesta no fue S se imprime lo final, lo cual es la aparicion de los contadores, como se manejo en codigo del programa



referencia.
http://aldeafraypedroagredaunoc.files.wordpress.com/2009/09/contadores-y-acumuladores.pdf