martes, 15 de mayo de 2012

Resolviendo Guías (Algoritmos y Estructuras de Datos I): Guia 2, Ejercicio 8

Problema: Escribir un algoritmo que lea un valor entero, si el valor entero es mayor que 100 entonces se deberá doblar, multiplicar por 25 y visualizar el resultado; si es menor o igual a 100 entonces se deberá multiplicar por 3, restarle 25, elevarlo a la potencia de 2 y visualizar el resultado.

Este problema lo podemos resolver de varias maneras. Todo dependerá del enfoque que le demos a la solución

Aquí les dejo 2 maneras distintas de resolver el mismo ejercicio:



Esta es a mi parecer la mejor manera de resolverlo:

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h> //Libreria matematica que contiene funciones de potencia, raiz cuadrada, etc.

int main()
{
    //Declaramos la variable
    
    int numero;
    
    cout<<"Indique un numero: ";
    cin>>numero;
    
    //Empezamos las comparaciones
    
    if(numero>100)
    {
     /* Podemos resolver esto cambiando el valor 
     de la variable "NUMERO" las veces que sea necesaria*/
     
     numero=numero*2; 
     /* Aqui estamos diciendo, que la variable "numero" 
     tendra el resultado de la multiplicacion: (numero*2)*/
     numero=numero*25;
     //Ahora numero tendra el resultado de la operancion anterior multiplicado por 25.
     
     cout<<numero;
    }
    else
    {
     numero=numero*3;
     /* Aqui estamos diciendo, que la variable "numero" 
     tendra el resultado de la multiplicacion: (numero*3)*/
     numero=numero-25;
     //Ahora numero tendra el resultado de la operacion anterior restandole 25.
     numero=numero*numero;
     //Ahora numero tendra el valor del resultado anterior elevado al cuadrado.

    /* La potencia tambien se puede calcular usando la funcion pow(numero base, potencia)
       en este caso seria: numero=pow(numero,2)*/
     
    }
getch();

}



Aqui esta la otra forma de hacerlo:

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h> //Libreria matematica que contiene funciones de potencia, raiz cuadrada, etc.

int main()
{
    //Declaramos la variable
    
    int numero, numero2, numero3, numero4;
    
    cout<<"Indique un numero: ";
    cin>>numero;
    
    //Empezamos las comparaciones
    
    if(numero<=100)
    {
     numero2=numero*3;
     /* Aqui estamos diciendo, que la variable "numero2" 
     tendra el resultado de la multiplicacion: (numero*3)*/
     numero3=numero2-25;
      //Ahora numero3 tendra el resultado de la operacion (numero2-25)
     numero4=numero3*numero3;
     //Ahora numero tendra el valor del resultado anterior elevado al cuadrado.
    /* La potencia tambien se puede calcular usando la funcion pow(numero base, potencia)
       en este caso seria: numero4=pow(numero3,2)*/
      
     cout<<numero3;  
    }
    else
    {
     
     numero2=numero*2; 
     /* Aqui estamos diciendo, que la variable "numero2" 
     tendra el resultado de la multiplicacion: (numero*2)*/
     numero3=numero2*25;
     ////Ahora numero3 tendra el resultado de la operacion (numero2*25)

     
     cout<<numero3;
        
    }    

getch();

}

2 comentarios:

  1. Buen trabajo hermano ! solo por curiosidad subiras pronto un algoritmo de listas en c ??

    ResponderEliminar
  2. Buenas eder, pronto estaremos publicando algo de listas.

    ResponderEliminar