Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Calculadora básica con Ans(6 decimales de precisión)
- **/
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- int main()
- {
- int iteration = 0; // Serveix per al menú: a la primera iteració no hi ha cap valor en aux (ans)
- float a,b,c,aux,aux_dos;
- char selec, selec_2 = 'x';
- do{
- // Es presenta el menú
- do{
- system("cls");
- printf("CALCULADORA:\n\nQue vols fer?\n[1] Suma\n[2] Resta\n[3] Multiplicacio\n[4] Divisio\n[5] Potencia\n[6] Arrel quadrada\n[7] Equacio de segon grau\n[+] Gastar ans\n [x] Eixir\n\n Elegeix: ");
- selec = getch();
- } while ( iteration==0 && selec == '+');
- // Si es desitja gastar 'ans' (la variable aux), es presenta de nou el menú per a elegir quina operació es va a fer.
- if( selec == '+' ){
- selec_2 = selec;
- do{
- system("cls");
- printf("CALCULADORA:\n\nQue vols fer?\n[1] Suma\n[2] Resta\n[3] Multiplicacio\n[4] Divisio\n[5] Potencia\n[6] Arrel quadrada\n[7] Equacio de segon grau\n\n [*] Eixir\n\n Elegeix: ");
- selec = getch();
- } while ( iteration==0 && selec == '+');
- }
- printf("\n\n");
- switch( selec ){
- case '1':
- printf("Suma:\n");
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- printf("b = ");
- scanf("%f",&b);
- aux = a + b;
- printf("\n\n%g + %g = %g",a,b,aux);
- break;
- case '2':
- printf("Resta:\n");
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- printf("b = ");
- scanf("%f",&b);
- aux = a - b;
- printf("\n\n%g - %g = %g",a,b,aux);
- break;
- case '3':
- printf("Multiplicacio:\n");
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- printf("b = ");
- scanf("%f",&b);
- aux = a * b;
- printf("\n\n%g * %g = %g",a,b,aux);
- break;
- case '4':
- printf("Divisio:\n");
- b=0.0;
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- printf("b = ");
- scanf("%f",&b);
- while(b==0.0){ printf("b no puede ser 0\nb="); scanf("%f",&b); } // 'b' ha de ser !=0
- aux = a / b;
- printf("\n\n%g / %g = %g",a,b,aux);
- break;
- case '5':
- printf("Potencia:\n");
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- printf("b = ");
- scanf("%f",&b);
- aux = pow(a,b);
- printf("\n\n%g ^ %g = %g",a,b,aux);
- break;
- case '6':
- printf("Arrel quadrada:\n");
- if(selec_2!='+'){ printf("\na = "); scanf("%f",&a);} else {printf("\na = %g\n",aux) ;a = aux;} // Si es gasta ans, a=aux. Si no, es demana un valor per a 'a'.
- aux = sqrt(a);
- printf("\n\narrel quadrada(%g) = %g",a,aux);
- break;
- case '7':
- printf("Equacio de segon grau:\n");
- printf("\na = ");
- scanf("%f",&a);
- printf("b = ");
- scanf("%f",&b);
- printf("c = ");
- scanf("%f",&c);
- aux = (-b + sqrt(4*a*c)) / 2*a;
- aux_dos = (-b - sqrt(4*a*c)) / 2*a;
- printf("\n\n%gx^2 + %gx + %g = 0\n\n x=%g\n x=%g",a,b,c,aux,aux_dos);
- break;
- case 'h': printf("Calculadora creada per @nRikee93.\nCodi font a http://pastebin.com/5pU4hjT1\n"); // Crédits.
- }
- if(selec != 'x' && selec != '*') { getch(); iteration++; }
- } while (selec != 'x' && selec != '*' );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement