Я хочу сделать программу, которая записывает символьную строку (например, 2 a * sin), сохраняет каждый символ в стеке, если это число, буква. Я пытался:
#include<stdio.h>
#include <stdlib.h>
#include<math.h>
#include<ctype.h>
int main () {
char cadena[20];
printf ("Write line of characters:n");
while(scanf ("%c", &cadena ) != EOF)
{
if (isalpha(cadena)){
pop (cadena);
}
}
for (int i=0; i<5; i++){
int data = pop();
printf("%dn",data);
}
return(0);
}```
The function pop is my stack. It isn't working because stack is always empty. I will like to do for example:
2 * 3 cos
if (cadena is number){pop(2)}
if(cadena is *){pop (*)} inside a while or for.
What am I doing wrong? Thanks u!