Eliminar espacios en blanco
Publicado por Angel (4 intervenciones) el 24/05/2011 16:50:59
Buenos dias, lo que pasa es que en el siguiente compilador de infijo a postfijo solo me elimina los espacios en blanco que esta asi
3 +6
pero no los que estan asi
3+ 6
el codigo es el siguiente
#include(stdio.h)
#include(stdio.h)
#include(ctype.h)
#include(process.h)
#include(string.h)
#include (stdlib.h)
int preanalisis;
void expr();
void termino();
int coincidir(int t);
void error();
main()
{
preanalisis = getchar();
expr();
printf("\nfinalizar?");
getch();
}
void expr()
{
termino();
while (1)
if (preanalisis=='+')
{
coincidir('+');
termino();
putchar('+');
}
else
if (preanalisis=='-'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis=='*'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis=='/'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis==' '){
coincidir(' ');
}
else
break;
}
void termino(){
if (isdigit(preanalisis)){
putchar(preanalisis);
coincidir(preanalisis);
}else error();
}
int coincidir(int t)
{
if (preanalisis==t)
preanalisis=getchar();
else error();
}
void error(){
printf ("Error de Sintaxis");
}
Alguna sugerencia???
De antemano les agradezco su atencion
3 +6
pero no los que estan asi
3+ 6
el codigo es el siguiente
#include(stdio.h)
#include(stdio.h)
#include(ctype.h)
#include(process.h)
#include(string.h)
#include (stdlib.h)
int preanalisis;
void expr();
void termino();
int coincidir(int t);
void error();
main()
{
preanalisis = getchar();
expr();
printf("\nfinalizar?");
getch();
}
void expr()
{
termino();
while (1)
if (preanalisis=='+')
{
coincidir('+');
termino();
putchar('+');
}
else
if (preanalisis=='-'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis=='*'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis=='/'){
coincidir('-');
termino();
putchar('-');
}
if (preanalisis==' '){
coincidir(' ');
}
else
break;
}
void termino(){
if (isdigit(preanalisis)){
putchar(preanalisis);
coincidir(preanalisis);
}else error();
}
int coincidir(int t)
{
if (preanalisis==t)
preanalisis=getchar();
else error();
}
void error(){
printf ("Error de Sintaxis");
}
Alguna sugerencia???
De antemano les agradezco su atencion
Valora esta pregunta


0