Problemas con definicion de variables
Publicado por juan alberto (1 intervención) el 25/05/2011 22:17:14
Hola compas, tengo un desafio para quien me quiera ayudar.
la cosa es asi
me mandaron a hacer una calculadora / * + - %
pero no es la tipica de ejercicios de practica con 2 o 3 numeros, sino que es con 9 y tengo que respetar ordenes de signos y el + y el - separan terminos y todas esas cosas.
el problema que se me esta presentado ahora es al darle valor a las variables.
el codigo qe pondre abajo, tendria que servir para guardar en cada variable el numero que ingresen, y cuando se ingrese un simbolo, guarde el numero y el simbolo en una variable predefinida, hasta que el operador de enter, o llegue a los 9 numeros.
lo hice con getchar para que el operador pueda ingresar todo en una linea. el problema es qe aun no funciona, lo se por el printf del final que no muestra nada, y el operador puede seguir ingresando cosas, nunca para...
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf("Calculadora beta 1.3 \n\n");
int n1=0;
int n2=0;
int n3=0;
int n4=0;
int n5=0;
int n6=0;
int n7=0;
int n8=0;
int n9=0;
int m1;
int m2;
int m3;
int m4;
int m5;
int m6;
int m7;
int m8;
int c=0;
int cont=0;
int num=0;
char c1;
char c2;
char c3;
char c4;
char c5;
char c6;
char c7;
char c8;
do
{
do
{
c=getchar();
num=num*10+c-48;
}while(c >= 48 || c <= 57 || c!= 10 || c!= EOF );
cont++;
switch(cont)
{
case 1:
n1=num;
num=0;
c1==c;
break;
case 2:
n2=num;
num=0;
c2==c;
break;
case 3:
n3=num;
num=0;
c3==c;
break;
case 4:
n4=num;
num=0;
c4==c;
break;
case 5:
n5=num;
num=0;
c5=c;
break;
case 6:
n6=num;
num=0;
c6==c;
break;
case 7:
n7=num;
num=0;
c7==c;
break;
case 8:
n8=num;
num=0;
c8==c;
break;
case 9:
n9=num;
num=0;
break;
}
}
while(cont<= 9);
printf("%d%c%d%c%d%c%d%c%d%c%d%c%d%c%d%c%d",n1,c1,n2,c2,n3,c3,n4,c4,n5,c5,n6,c6,n7,c7,n8,c8,n9);
system("PAUSE");
return 0;
}
la cosa es asi
me mandaron a hacer una calculadora / * + - %
pero no es la tipica de ejercicios de practica con 2 o 3 numeros, sino que es con 9 y tengo que respetar ordenes de signos y el + y el - separan terminos y todas esas cosas.
el problema que se me esta presentado ahora es al darle valor a las variables.
el codigo qe pondre abajo, tendria que servir para guardar en cada variable el numero que ingresen, y cuando se ingrese un simbolo, guarde el numero y el simbolo en una variable predefinida, hasta que el operador de enter, o llegue a los 9 numeros.
lo hice con getchar para que el operador pueda ingresar todo en una linea. el problema es qe aun no funciona, lo se por el printf del final que no muestra nada, y el operador puede seguir ingresando cosas, nunca para...
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf("Calculadora beta 1.3 \n\n");
int n1=0;
int n2=0;
int n3=0;
int n4=0;
int n5=0;
int n6=0;
int n7=0;
int n8=0;
int n9=0;
int m1;
int m2;
int m3;
int m4;
int m5;
int m6;
int m7;
int m8;
int c=0;
int cont=0;
int num=0;
char c1;
char c2;
char c3;
char c4;
char c5;
char c6;
char c7;
char c8;
do
{
do
{
c=getchar();
num=num*10+c-48;
}while(c >= 48 || c <= 57 || c!= 10 || c!= EOF );
cont++;
switch(cont)
{
case 1:
n1=num;
num=0;
c1==c;
break;
case 2:
n2=num;
num=0;
c2==c;
break;
case 3:
n3=num;
num=0;
c3==c;
break;
case 4:
n4=num;
num=0;
c4==c;
break;
case 5:
n5=num;
num=0;
c5=c;
break;
case 6:
n6=num;
num=0;
c6==c;
break;
case 7:
n7=num;
num=0;
c7==c;
break;
case 8:
n8=num;
num=0;
c8==c;
break;
case 9:
n9=num;
num=0;
break;
}
}
while(cont<= 9);
printf("%d%c%d%c%d%c%d%c%d%c%d%c%d%c%d%c%d",n1,c1,n2,c2,n3,c3,n4,c4,n5,c5,n6,c6,n7,c7,n8,c8,n9);
system("PAUSE");
return 0;
}
Valora esta pregunta
0