ALGORITMOS y PROGRAMAS LAB Nro 1

ISI 21 - 22 - 23 - 25

1.   Hacer un algoritmo que permita el ingreso de dos números reales por teclado y calcule la división, si el denominador es diferente de cero. El algoritmo debe mostrar los números ingresados y el resultado.  

ALGORITMO operaciones

INICIO

// Declarar las variables

            real  A, B, DR

      // Ingresar los dos números por teclado

LEER A, B

Si  ( B ¹ 0 )   

{   DR = A / B           // Dividir solo si el denominador es diferente de 0

    MOSTRAR  A, B                      // Muestra las entradas

    MOSTRAR   DR           // Muestra las salidas  

}

FIN                                                 

  Haga el programa en C++

#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
#include<stdio.h>
void main()
{
    // Declarar las variables 
    double A, B, Q ;
   
// Ingresar los dos números por teclado 
    cout<<"Ingrese dos numeros reales ";
    cin>>A>>B;
    if ( B != 0 ) 
    { Q = A / B;     
// Q = cociente real 
    cout<<"Dividendo A = "<<A<<endl;
    cout<<"Divisor B = "<<B<<endl;        
// Muestra las entradas 
    cout<<"cociente Q = "<<Q<<endl;     // Muestra el cociente

    }
    getch();
}

2. Haga el algoritmo, que divida dos numeros de tipo entero y calcule el resto, es decir debe    usar los operadores DIV y MOD de algoritmos. Haga el programa en C++

ALGORITMO operaciones

INICIO

    // Declarar las variables

    entero  A, B, Q , R

    // Ingresar los dos números por teclado 

    LEER A, B

    Si  ( B ¹ 0 )   

     {   Q = A  DIV  B        // Q = cociente entero ----- DIVISION ENTERA 

         R = A  MOD  B           // R = resto de dividir A y B

         MOSTRAR  A, B            // Muestra las entradas

         MOSTRAR  Q, R           // Muestra las salidas  

    }

FIN

Haga el programa en C++

#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
#include<stdio.h>
void main()
{
    // Declarar las variables 
    int A, B, Q , R ;
    // Ingresar los dos números por teclado 
    cout<<"Ingrese dos numeros separados por enter ";
    cin>>A>>B;
    if ( B != 0 ) 
    {     Q = A / B; // Q = cociente entero ----- DIVISION ENTERA 
           R = A % B; // R = resto de dividir A y B
           cout<<"Dividendo A = "<<A<<endl;
           cout<<"Divisor B = "<<B<<endl; // Muestra las entradas 
           cout<<"cociente Q = "<<Q<<endl;
           cout<<"resto R = "<<R<<endl;

    }
    getch();
}

3.  Hacer un algoritmo que permita calcular el pago por examen de admision en una institución universitaria, teniendo en cuenta que el valor de dicho pago depende de el colegio de procedencia.
Colegio de Procedencia Pago por Examen ADmision
Nacional        'N' 100+ 1% de Sueldo Minimo  
Parroquial     'P' 200  +  3% de Sueldo Minimo  
Particular      'T' 300  + 7% de Sueldo Minimo  

ALGORITMO  Admisión  

INICIO

// Declarar las variables

            caracter  ColProc

real  PagoAdm

// Declarar las constantes

      const real   tN = 0.01, tP= 0.03 , tR = 0.07

      const  real SueldoMin = 500

LEER  ColProc

SeleccionE (  ColProc  )

      caso  ‘N’  :    PagoAdm = 100 + tN*SueldoMin

                      salto 

caso  ‘P’  :    PagoAdm = 200 + tP*SueldoMin  

                      salto

caso  ‘T’  :    PagoAdm = 300 + tR*SueldoMin  

                      salto

}

MOSTRAR  PagoAdm

FIN

En lenguaje C++

# include <iostream.h> 

# include <conio.h>           

# include <stdlib.h>           

// nota tolower()  convierte a minuscula

// nota toupper()  convierte a mayuscula

void main()

            {

            // Declarar las variables

            char ColProc;

            double  PagoAdm;

            // Declarar las constantes

            const double  tN = 0.01, tP= 0.03 , tR = 0.07;

            const double SueldoMin = 500;

            cout <<"Ingrese el colegio de procedencia : ";  cin >> ColProc;

            switch ( ColProc  )

            {      case  'N'  :      

                                    PagoAdm = 100 + tN*SueldoMin;

                                    break; 

                    case  'P'  :

                                    PagoAdm = 200 + tP*SueldoMin;

                                    break; 

                    case  'T'  :

                                    PagoAdm = 300 + tR*SueldoMin;

                                    break; 

            }

            cout <<"Pago por admision : "<< PagoAdm<<endl;

            getch();

           }

Nota : Para que no diferencie entre valores de ColProc mayusculas y minusculas puede usarse la función toupper(), teniendo los case en mayusculas , es decir 'N', 'P', y 'T', de manera que todo caracter ingresado se convertira en mayuscula. Así  seria toupper ( ColProc )

4.      Hacer un algoritmo para calcular la tabla de multiplicar de un numero ingresado por         teclado.

ALGORITMO  Tabla

INICIO

    // Declarar variables

    real     valor, Resultado  

    entero  i  

 Para  ( i = 1  Hasta  12 , i=i+1)

 {    Resultado = valor * i 

        MOSTRAR  valor , “ * ” ,  i  , “= “ , Resultado

    }

FIN  

En Lenguaje C++

# include <iostream.h>

# include <conio.h>

void main()

{    

  // Declarar las variables

    double  valor, Resultado;

    int  i;  

 // Ingresar el valor de la tabla de multiplicar

    cout<<"Ïngrese un numero : "; cin>> valor;

 // Muestra la tabla del valor ingresado

    cout<<"La Tabla del "<< valor <<":"<<endl;

    for ( i =1 ;  i<=12 ;  i=i+1 )

    {   Resultado = valor * i;

         cout<<valor <<" * " << i <<" = " <<Resultado <<endl;   

    }

    getch();

}          

 

5.  Hacer un algoritmo que permita calcular el volumen de 5 cilindros, teniendo en cuenta que deben ingresarse el radio y la altura de cada uno de los cilindros.

ALGORITMO  cilindro

INICIO

real  radio, altura, volumen

Pi = 3.1416

PARA ( i =1, hasta 5,  i=i+1)

{     LEER  radio, altura

      volumen = Pi*radio*radio*h

      MOSTRAR  volumen;

}

FIN

PROBLEMAS PROPUESTOS:

Hacer el algoritmo en seudocodigo y el programa en C++

1.  Hacer un algoritmo que permita ingresar un numero real y muestre el numero truncado (su parte entera) y su parte decimal (parte fraccionaria). Ejm si el numero es 3.45, su parte entera sera 3 y su parte fraccionaria seria 0.45.

Sugerencia :si el numero real es num  use: 

ParteEntera =  int(num)  y         ParteFracc = num - ParteEntera

2.  Hacer un algoritmo para calcular la nota final de un alumno, si se ingresa por teclado: nombre, nota de examen parcial, promedio de practicas, nota de examen final. Tenga en cuenta que examen parcial y final tienen peso 2 :

Nota final = ( ExParcial * 2 + Practicas + ExFinal * 2 ) / 5

El algoritmo debe mostrar el nombre, las notas parciales y la nota final.  

Hacer tambien el codigo en C++

3.  Hacer un algoritmo para calcular el area de la base el area lateral  y el volumen de un cilindro recto. Se requiere ingresar por teclado el radio y la altura.  

El area de un circulo es pi * radio2

El volumen del cilindro recto es = AreaBase*Altura.  

AreaLateral = 2*3.1416* radio*Altura + AreaBase*2   

4. Una comercializadora de electrodomesticos ofrece una promocion por aniversario, ofreciendo los siguientes descuentos de acuerdo al codigo.  
  1. Codigo  Nombre       Precio   $ TasaDescuento  
    <1>     Lavadoras 800     10%  
    <2> Licuadoras 90 5%  
    <3> Lustradoras  350   11%  
    <4> Aspiradoras  300 11%  
    <5>   Cocinas  550       8%
    <6> Congeladoras 700 12%  

Ingresado por teclado el codigo del producto. El algoritmo debe Mostrar el precio, descuento y el monto a pagar deducido los descuentos.  Hacer tambien el programa en C++. Sugerencia use Seleccione (pseudocodigo y switch en C++.

5. Hacer el algoritmo y el respectivo programa en C++ para calcular la suma de :

S = 11 + 22 + 33 + ..... + nn

para los n primeros numeros naturales ingresados por teclado.

SUGERENCIA : Use funcion estandar potencia y estructura de control para

6. Hacer un algoritmo y su respectivo programa en C++ que permita generar y mostrar  los primeros n numeros de fibonnacci. Considere que los 2 primeros numeros son 0 y 1.

Ejm    0     1     1     2     3     5     8     13     21     34 .............

7. Hacer un algoritmo y su respectivo programa en C++ que permita generar y mostrar los numeros de fibonnacci menores a 20. 

Sugerencia: Ver pseudocodigo en problemas resueltos de la pagina web. 

Considerando los tipos de datos usados en clase para los enteros considere los 20 primeros numeros de fibonacci y los numeros de fibonacci menores a 20 

8.  Resolver una ecuación de segundo grado de la forma : ax2 + bx + c = 0.  

Sugerencia:  Use discriminante: Disc =  b2 - 4*a*c

Nota Si Disc >=0            x1 = ( - b +  sqrt (Disc) ) / 2        Solución real

                                           x2 = ( - b - sqrt (Disc) ) / 2        Solución real

        Si Disc < 0                la solución es imaginaria. 

9.  Se ha efectuado un examen medico a los alumnos de la universidad Alas Peruanas y se han tomado tres medidas: el peso (kg), la talla (m) y presion (mm). Se pide calcular el promedio de cada medida.  Considere que se trata de una cantidad n de alumnos ingresado por teclado. Haga el pseudocódigo y su respectivo programa C++.

10.  Hacer un algoritmo que permita ingresar por teclado una cantidad de dinero (valor real) en soles y calcule la cantidad de billetes de 200, 100, 50, 20,10, monedas de 5,2,1,0.5, 0.2 y 0.10.

Sugerencia  :  Trabaje con parte entera y parte fracionaria de la cantidad de soles :

Si Cantidad de dinero es  Soles :    pEntSoles = int ( Soles)

                                                              pFracSoles = int ( ( Soles - pEntSoles )*100)

 

Silabo
Horario
Curso :
Teoría
Practica
Trabajos :
Laboratorios
Trabajos
Solucionario Evaluaciones
e-mail
enlaces
Codificación LP Artículos Diversos