Cod sursa(job #1184313)

Utilizator andi12Draghici Andrei andi12 Data 12 mai 2014 08:34:27
Problema Bool Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.1 kb
#include <cstdio>

using namespace std;
bool v[50];
char s[1005];
int p=0;
bool expresie();
bool termen();
bool expresie()
{
    bool sum=termen();
    if(p=' ')
        p++;
    if(p=='O' && p+1=='R')
    {
        p=p+2;
        sum=sum | termen();
    }
    if(p=='A' && p+1=='N' && p+2=='D')
    {
        p=p+3;
        sum=sum & termen();
    }
    return sum;
}
bool termen()
{
    bool val=0,semn=0;
    if(p==' ')
        p++;
    if(p=='(')
    {
        p++;
        expresie();
        p++;
        return val;
    }
    if(p=='N' && p+1=='O' && p+2=='T')
    {
        p+3;
        semn++;
    }
    if(p>='A' && p<='Z')
    {
        if(p+1<'A' || p+1>'Z')
        {
            val=v[p-'A']+semn;
            p++;
        }
    }
    return val;
}
int main()
{
    FILE *in,*out;
    in=fopen("bool.in","r");
    out=fopen("bool.out","w");
    int n=0,i=0;
    char c;
    fscanf(in,"%s",&s);
    fscanf(in,"%d",&n);
    fscanf(in,"%c",&c);
    for(i=1;i<=n;i++)
    {
        fscanf(in,"%c",&c);
        v[c-'A']++;
    }
    return 0;
}