Underc0de - La Casa de los Informáticos

Programación General => C / C++ => Mensaje iniciado por: Metadato en Julio 09, 2013, 04:07:33 PM

Título: Calculadora básica en C
Publicado por: Metadato en Julio 09, 2013, 04:07:33 PM
(http://s24.postimg.org/7u7ihxqn9/image.jpg)

Hola a todos, pues recien me he introducido en este mundillo del C / C++ y quisiera compartir mi primer trabajillo, y que ustedes me digan posibles fallos que tenga o cosas que pueda mejorar, gracias!!!


#include <stdio.h>

int main(){
   printf("####################################\n");
   printf("## Calculadora basica by Metadato ##\n");
   printf("####################################\n");

   char operaciones;
   printf("Suma (S), Resta (R), Multiplicacion (M), Division (D): ");
   scanf("%c",&operaciones);

   switch(operaciones){
    case 'S' :
    int sa,sb;
    printf("Define 2 numeros que quieras sumar:\n");
    scanf("%d %d",&sa,&sb);
    printf("%d + %d = %d",sa,sb,sa+sb);
    break;
    case 'R' :
    int ra,rb;
    printf("Define 2 numeros que quieras restar:\n");
    scanf("%d %d",&ra,&rb);
    printf("%d - %d = %d",ra,rb,ra-rb);
    break;
    case 'M' :
    int ma,mb;
    printf("Define 2 numeros que quieras multiplicar:\n");
    scanf("%d %d",&ma,&mb);
    printf("%d * %d = %d",ma,mb,ma*mb);
    break;
    case 'D' :
    int da,db;
    printf("Define 2 numeros que quieras dividir:\n");
    scanf("%d %d",&da,&db);
    printf("%d / %d = %d",da,db,da/db);
    break;

    default : puts("Error!! Quizas hayas escrito la letra en minuscula...");
   }
    return 0;
}


PD: Se podría cambiar las variables enteras por las de tipo flotante para los decimales.

Saludos!!  8)
Título: Re:Calculadora básica en C
Publicado por: Juan en Julio 09, 2013, 05:18:30 PM
Declara dos variables para todas las operaciones y no hagas esto:

int sa,sb;
int ra,rb;
int ma,mb;
int da,db;


Y tabula un poco el código para que se pueda leer mejor.

un saludo.
Título: Re:Calculadora básica en C
Publicado por: Metadato en Julio 09, 2013, 05:31:07 PM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
Declara dos variables para todas las operaciones y no hagas esto:

int sa,sb;
int ra,rb;
int ma,mb;
int da,db;


Y tabula un poco el código para que se pueda leer mejor.

un saludo.

Grácias. ¿Qué tal así?


#include <stdio.h>

int main(){
   printf("####################################\n");
   printf("## Calculadora basica by Metadato ##\n");
   printf("####################################\n");

   char operaciones;
   printf("Suma (S), Resta (R), Multiplicacion (M), Division (D): ");
   scanf("%c",&operaciones);

   switch(operaciones){
    float a,b;

    case 'S' :
    printf("Define 2 numeros que quieras sumar:\n");
    scanf("%f %f",&a,&b);
    printf("%.2f + %.2f = %.2f",a,b,a+b);
    break;

    case 'R' :
    printf("Define 2 numeros que quieras restar:\n");
    scanf("%f %f",&a,&b);
    printf("%.2f - %.2f = %.2f",a,b,a-b);
    break;

    case 'M' :
    printf("Define 2 numeros que quieras multiplicar:\n");
    scanf("%f %f",&a,&b);
    printf("%.2f * %.2f = %.2f",a,b,a*b);
    break;

    case 'D' :
    printf("Define 2 numeros que quieras dividir:\n");
    scanf("%f %f",&a,&b);
    printf("%.2f / %.2f = %.2f",a,b,a/b);
    break;

    default : puts("Error!! Quizas hayas escrito la letra en minuscula...");
   }

    return 0;
}


Saludos compañero!!
Título: Re:Calculadora básica en C
Publicado por: Juan en Julio 09, 2013, 05:36:12 PM
Sí  ;)
Título: Re:Calculadora básica en C
Publicado por: mr.blood en Julio 15, 2013, 07:42:06 AM
Te dejo el código un poco más corto:


#include <stdio.h>

int main(){
   printf("####################################\n");
   printf("## Calculadora basica by Metadato ##\n");
   printf("####################################\n");

   char operaciones;
   float a,b;
   printf("Suma (S), Resta (R), Multiplicacion (M), Division (D): ");
   scanf("%c",&operaciones);
   
   printf("Ingresa los operandos:\n");
   scanf("%f %f",&a,&b);

   switch(operaciones){

    case 'S' :
    printf("%.2f + %.2f = %.2f",a,b,a+b);
    break;

    case 'R' :
    printf("%.2f - %.2f = %.2f",a,b,a-b);
    break;

    case 'M' :
    printf("%.2f * %.2f = %.2f",a,b,a*b);
    break;

    case 'D' :
    printf("%.2f / %.2f = %.2f",a,b,a/b);
    break;

    default : puts("Error!! Quizas hayas escrito la letra en minuscula...");
   }

    return 0;
}


Sa1uDoS