Sunteți pe pagina 1din 4

#include <stdio.

h>
#include <stdlib.h>
#include <conio.h>

/* !!!ATENTIE!!!!
*
*
* TREBUIE SA SCRIETI SEMNELE VOASTRE
* VA DECIDETI SI DUPA PUNETILE IN FUNCTIA CONECTOR()
* TREBUIE IMPLEMENTATE SI() SAU() IMPLICA() ECHIVALENT()
* TREBUIE SA VA SCRIETI FORMULA IN FUNCTIE()
* MAI MODIFICATI SI VOI CATE CEVA SA NU FIE LA FEL
*/

/*
* - sau
* - si
* - implica
* - echivalent
* - negare
*/

char *mesaj=(char *)malloc(sizeof(char)); //Input mesaj


char *mesaj2=(char *)malloc(sizeof(char)); //mesaj plin cu variabile

int functie(int,int,int);
int conector(char);
int este(char,int);
int length(char *);
int auxiliare(char);
int frecventa(char);

int si(int,int);
int sau(int,int);
int negare(int);
int echivalent(int,int);
int implica(int,int);

int main()
{
int contor=0,len=0,conectori=0;
printf("Introduceti:");
gets(mesaj);

for(int i=0;i<length(mesaj);i++)
{
if(auxiliare(mesaj[i])==0)
{
contor++;
}
}
printf("Are %d subformule!\n",contor);

for(int i=0;i<length(mesaj);i++)
{
if(conector(mesaj[i])==0 && auxiliare(mesaj[i])==0)
{
mesaj2[len]=mesaj[i];
len++;
break;
}
}

for(int i=0;i<length(mesaj);i++)
{
if(conector(mesaj[i])==0 && auxiliare(mesaj[i])==0)
{
if(este(mesaj[i],length(mesaj2))==1)
{
mesaj2[len]=mesaj[i];
len++;
}
}
}
printf("%d variabile\n",len);

for(int i=0;i<length(mesaj);i++)
{
if(conector(mesaj[i])==1)
{
conectori++;
}
}
printf("%d conectori\n",conectori);

printf("Aparitia unei variabile!\n");

for(int i=0;i<len;i++)
{
printf("%c apare de %d ori\n ",mesaj2[i],frecventa(mesaj2[i]));
}
printf("Tabel de adevar\n");
for(int A=0;A<=1;A++)
{
for(int C=0;C<=1;C++)
{
for(int B=0;B<=1;B++)
{
printf("Pentru A=%d B=%d C=%d valoare de adevar este %d\n",A,B,C,functie(A,B,C));
}
}
}
getch();
return 0;
}

int conector(char c)
{
//TREBUIE COMPLETATA CU SEMNELE VOASTRE
if(c==' ' || c==' ' || c==' ' || c==' ' || c==' ')
{
return 1;
}
return 0;
}

int functie(int a,int b,int c)


{
//TREBUIE PUSA FORMULA VOASTRA!

int si(int a,int b)


{

int sau(int a,int b)


{

}
int negare(int a)
{

}
int echivalent(int a,int b)
{

}
int implica(int a,int b)
{

}
int frecventa(char c)
{
int i=0,contor=0;
for(i=0;i<length(mesaj);i++)
{
if(mesaj[i]==c)
{
contor++;
}
}
return contor;
}

int auxiliare(char c)
{
if(c==41 || c==40)
{
return 1;
}
return 0;
}

int length(char *s)


{
int i=0;
while(s[i]!='\0')
{
i++;
}
return i;
}

int este(char c,int dim)


{
for(int i=0;i<dim;i++)
{
if(mesaj2[i]==c)
{
return 0;
}
}
return 1;
}

S-ar putea să vă placă și