Si el símbolo es -, al valor se le resta 1.
Si el símbolo es +, al valor se le agrega 1.
Si el símbolo es /, al valor se divide entre 2.
Si el símbolo es *, al valor se multiplica por 2.
Código:
(10)-(9)*(18)/(9)+(10)+(11) y así...
Tengo el siguiente código:
Código
#include <stdio.h> int main() { int N1[50], d2=0, d=1, i=0, d3=0; char S1[50]; for (int i3=0; i3<50; i3++) { N1[i3]=0; S1[i3]=' '; } printf("Inserta un numero entero: "); scanf("%d", &N1[0]); while (S1[d2] = '0') { printf("Inserta el simbolo + para que aumente su valor en 1.\n"); printf("Inserta el simbolo - para que reduzca su valor en 1. \n"); printf("Inserta el simbolo * para que multiplique su valor por 2.\n"); printf("Inserta el simbolo / para que divida su valor en 2.\n"); printf("Inserta la opcion (simbolo) deseada (0 para terminar): "); scanf("%c", &S1[d2]); if (S1[d2]=='0') break; switch (S1[d2]) { case '+' : N1[d]=N1[i]+1; /*CH[d2]='+'*/; break; case '-' : N1[d]=N1[i]-1; /*CH[d2]='-'*/; break; case '*' : N1[d]=N1[i]*2; /*CH[d2]='*'*/; break; case '/' : N1[d]=N1[i]/2; /*CH[d2]='/'*/; break; default : break; } d++; i++; d2++; } for (int i2=0; i2<d2; i2++) { if (N1[i2]==0) break; else printf("(%d)%c\n", N1[i2], S1[i2]); } }
Sin embargo, no logro descubir el error, además de que el primer bucle while se repite antes de que me deje escribir algo.
Muchas gracias de antemano.