+12
FuriousLight
manchester
okainio
Ridley
Soul Reaver
DanontheMoon
VindicatedDot
Includer
argus
MoonCalf
DustWing
Antimony
16 posters
have you got photos of siren?
DanontheMoon- Unicorn
- Posts : 2570
Join date : 2009-06-02
Age : 42
Location : Some other game
- Post n°26
Re: have you got photos of siren?
Yup, that's her.
argus- Pteradactyl
- Posts : 663
Join date : 2009-11-18
Location : Bipin Whispering
- Post n°27
Re: have you got photos of siren?
lmbdg wrote:btw talking about dogs - weeks ago i saw a dog taking a shit in front of my house.. i approached from behind then i kicked it right in its ugly head lmao that was hilarious
get psychiatric help asap
lmbfgh- Guest
- Post n°28
Re: have you got photos of siren?
argus you were taught as a child not to harm animals. but that's just a convention, a taboo. hurting animals can be much more fun than just trolling. when you kick a dog or cat you get to feel the pressure of its body against your foot, you get satisfaction instantly. you hear the dog barking like crazy, that's funny how can you deny it. once i thrown a brick on the back of a dog from my window. i never seen a dog running so fast in my entire life lmao maybe only in videos. when i used to go to highschool at 16 there was a dog with little puppies on my way on a street where people rarely passed. so i used to run at full speed and kick the little puppies with all my strength what could i do.. i was stressed and no girlfriend either..
Ridley- Purple People Eater
- Posts : 391
Join date : 2010-07-22
Age : 31
Location : Barrenland
- Post n°29
Re: have you got photos of siren?
lmbfgh wrote:argus you were taught as a child not to harm animals. but that's just a convention, a taboo. hurting animals can be much more fun than just trolling. when you kick a dog or cat you get to feel the pressure of its body against your foot, you get satisfaction instantly. you hear the dog barking like crazy, that's funny how can you deny it. once i thrown a brick on the back of a dog from my window. i never seen a dog running so fast in my entire life lmao maybe only in videos. when i used to go to highschool at 16 there was a dog with little puppies on my way on a street where people rarely passed. so i used to run at full speed and kick the little puppies with all my strength what could i do.. i was stressed and no girlfriend either..
Cause you can only fight things that can't likewise defend themselves
Antimony- Unicorn
- Posts : 1488
Join date : 2010-05-04
Age : 30
Location : Under Korne's bed.Dreaming...
- Post n°30
Re: have you got photos of siren?
I would have done the same thing in his place.I don't live in a country where it's against the law for a dog to take a shit an the owned doesen't pick it up and dispose of it.Dogs just shit anywhere...And i hate how some individuals take their dogs inside our yard to take a deuce,that just makes me go insane ><.argus wrote:lmbdg wrote:btw talking about dogs - weeks ago i saw a dog taking a shit in front of my house.. i approached from behind then i kicked it right in its ugly head lmao that was hilarious
get psychiatric help asap
okainio- Unicorn
- Posts : 1247
Join date : 2009-12-27
Age : 32
Location : Tenterden. like u know where that is.
- Post n°31
Re: have you got photos of siren?
anti get psychiatric help asap
lmb 1) trepan yourself
2) take chilli powder and fill the hole with it
3) pour in paint stripper until the chilli has dissolved
4) spark a lighter above the trepanning
5) satisfaction for the rest of your life
lmb 1) trepan yourself
2) take chilli powder and fill the hole with it
3) pour in paint stripper until the chilli has dissolved
4) spark a lighter above the trepanning
5) satisfaction for the rest of your life
argus- Pteradactyl
- Posts : 663
Join date : 2009-11-18
Location : Bipin Whispering
- Post n°32
Re: have you got photos of siren?
lmbfgh wrote:argus you were taught as a child not to harm animals. but that's just a convention, a taboo. hurting animals can be much more fun than just trolling. when you kick a dog or cat you get to feel the pressure of its body against your foot, you get satisfaction instantly. you hear the dog barking like crazy, that's funny how can you deny it. once i thrown a brick on the back of a dog from my window. i never seen a dog running so fast in my entire life lmao maybe only in videos. when i used to go to highschool at 16 there was a dog with little puppies on my way on a street where people rarely passed. so i used to run at full speed and kick the little puppies with all my strength what could i do.. i was stressed and no girlfriend either..
Whoops sorry. I thought you were mentally ill, but clearly i was wrong and you are fine.
manchester- Purple People Eater
- Posts : 473
Join date : 2010-01-16
Age : 29
Location : In the corner
- Post n°33
Re: have you got photos of siren?
you're a freak. Go get some help.
VindicatedDot- Sandmall
- Posts : 98
Join date : 2011-02-09
- Post n°34
Re: have you got photos of siren?
LMB, you need to find better enemies because we are always owning you here on the Aero forums.
Antimony- Unicorn
- Posts : 1488
Join date : 2010-05-04
Age : 30
Location : Under Korne's bed.Dreaming...
- Post n°35
Re: have you got photos of siren?
NO gtfo.I have my reason to hate everything on 4 legs that barks but killing it's young isn't the answer.okainio wrote:anti get psychiatric help asap
B>Dog's face to wear as a mask.
FuriousLight- Unicorn
- Posts : 2632
Join date : 2009-05-06
Age : 29
- Post n°36
Re: have you got photos of siren?
Eastern european countries, whatcha gonna do T.T
manchester- Purple People Eater
- Posts : 473
Join date : 2010-01-16
Age : 29
Location : In the corner
- Post n°37
Re: have you got photos of siren?
FuriousLight wrote:Eastern european countries, whatcha gonna do T.T
Antimony- Unicorn
- Posts : 1488
Join date : 2010-05-04
Age : 30
Location : Under Korne's bed.Dreaming...
- Post n°38
Re: have you got photos of siren?
whatcha gonna do when they come for you...
Soul Reaver- Pteradactyl
- Posts : 579
Join date : 2009-06-03
Age : 32
Location : Mass
- Post n°39
Re: have you got photos of siren?
Swat_Kats wrote:lmbfgh wrote:argus you were taught as a child not to harm animals. but that's just a convention, a taboo. hurting animals can be much more fun than just trolling. when you kick a dog or cat you get to feel the pressure of its body against your foot, you get satisfaction instantly. you hear the dog barking like crazy, that's funny how can you deny it. once i thrown a brick on the back of a dog from my window. i never seen a dog running so fast in my entire life lmao maybe only in videos. when i used to go to highschool at 16 there was a dog with little puppies on my way on a street where people rarely passed. so i used to run at full speed and kick the little puppies with all my strength what could i do.. i was stressed and no girlfriend either..
Cause you can only fight things that can't likewise defend themselves
i hope one day that when you kick a "dog" it turns out to be a wolf, then the mother comes and rips out your throat you piece of shit.
lmbfgh- Guest
- Post n°40
Re: have you got photos of siren?
you can keep hoping. and i'll keep kicking. yesterday i kicked another dog on my way home but it's quite stressful because each time i have to make sure no one is watching. i kicked it with my left foot in its jaw while it was sleeping but to my surprise, even if i kicked it with all my strength and its head moved like 30 cm away, it made no sound at all. the dog just got up and moved away lol. another time when i went to the beach for jogging first there was only one dog barking at me. then other dogs heard him and 3 more came to attack me! all they did was to bark but they got very close only 1 meter away. those pieces of shit could have killed me if they were smarter to surround me. finally they got bored of barking and they moved away but it could've ended much worse. i told my parents i should get a switchblade or a butterfly knife to protect myself but they never listen. i'll buy one anyway. and here's my homework for logics. i was the only one who made it so far and the teacher was impressed
/*
Stefanian Stefan Liviu
Numarul 44
Formula data:
(A implica (B implica C)) si (A implica B) si A echivalent C
*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
int implicaf(int x, int y) {
if ((x==1)&&(y==0)) return 0; //valorea 1 pentru adevar, 0 pentru fals
return 1; //functia returneaza 0 doar daca b este fals si a este adevarat
}
int sif(int a, int b) {
if ((a==1)&&(b==1)) return 1;
return 0;
}
int sauf(int a, int b) {
if (a+b>=1) return 1;
return 0;
}
int nonf(int a) {
if (a==1) return 0;
return 1;
}
int echivalentf(int a, int b) {
if (a==b) return 1;
return 0;
}
int proc=1; //numarul procesarii
int formulag=0,terminat=0;
FILE *g;
void proceseaza(int m[][4], int x, int y) {
int i,j,k,l,mm,gasit,ales=-1,posgasit=-1,toate2,lsp=0,lsnp=0,lssec=0,lsprimp=0,lsprimnonp=0;
int ls1=0,ls2=0,sprimpnul=0,sprimnonpnul=0,spnul=0,snpnul=0,s1inc=0,s2inc=0,a,b,c,d;
int sp[10]; //Sp
int snp[10]; //S-p
int ssec[10]; //S"
int sprimp[10][4]; //S'p
int sprimnonp[10][4]; //S'-p
int s1[10][4]; //S'p U S"
int s2[10][4]; //S'-p U S"
if (terminat==1) return;
printf("\nProcesarea numarul %d ",proc);
fprintf(g,"\nProcesarea numarul %d ",proc);
if (y==1) { printf("paralela"); fprintf(g,"paralela"); }
printf("\n\n");
fprintf(g,"\n\n");
printf("S = {");
fprintf(g,"S = {");
for (i=0;i<x;i++) {
mm=0;
for (j=0;j<4;j++) {
l=0;
if (m[i][j]==0) {
printf("-%c",int(j+65));
fprintf(g,"-%c",int(j+65));
mm++;
} else if (m[i][j]==1) {
printf("%c",int(j+65));
fprintf(g,"%c",int(j+65));
mm++;
}
if (((j+1<4)&&(m[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<x-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n");
fprintf(g,"}\n\n");
mm=0;
for (i=0;i<x;i++) {
for (j=i+1;j<x;j++) {
for (k=0;k<4;k++) {
if (m[i][k]+m[j][k]==1) mm=1;
}
}
}
if (mm==0) {
printf("Formula este consistenta.\n\n");
fprintf(g,"Formula este consistenta.\n\n");
if (formulag==1) {
printf("Deci formula G nu este consecinta logica a formulei F.\n\n");
fprintf(g,"Deci formula G nu este consecinta logica a formulei F.\n\n");
}
terminat=1;
return;
}
gasit=0; //determina daca am gasit o inconsistenta simpla sau trecem la executii paralele
for (i=0;i<4;i++) { //cautam o variabila astfel incat sa obtinem inconsistenta
posgasit=-1;lsp=0;lsnp=0;lssec=0;lsprimp=0;lsprimnonp=0;
ls1=0;ls2=0;sprimpnul=0;sprimnonpnul=0;spnul=0;snpnul=0;s1inc=0;s2inc=0;
//reinitializez variabilele pentru fiecare parcurgere
toate2=1;
for (j=0;j<x;j++) if (m[j][i]!=2) toate2=0; //am gasit ceva
if (toate2==1) {
printf("Variabila %c nu mai exista in setul de clauze.\n",int(65+i));
fprintf(g,"Variabila %c nu mai exista in setul de clauze.\n",int(65+i));
if (i<3) {
printf("Trecem la variabila urmatoare, adica %c\n",int(66+i));
fprintf(g,"Trecem la variabila urmatoare, adica %c\n",int(66+i));
}
continue;
} //daca n-am gasit nimic trecem la urmatoarea variabila
ales=i; //ultima variabila valida era i
for (j=0;j<x;j++)
if (m[j][i]==1) {
sp[lsp]=j;
lsp++;
for (k=0;k<4;k++)
sprimp[lsprimp][k]=m[j][k];
sprimp[lsprimp][i]=2;
lsprimp++;
} else if (m[j][i]==0) {
snp[lsnp]=j;
lsnp++;
for (k=0;k<4;k++)
sprimnonp[lsprimnonp][k]=m[j][k];
sprimnonp[lsprimnonp][i]=2;
lsprimnonp++;
} else //if (m[j][i]==2)
{ ssec[lssec]=j; lssec++; }
//am construit Sp, S-p, S", S'p si S'-p
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=m[ssec[j]][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (sprimp[j][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=sprimp[j][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S'p care nu sunt nule
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=m[ssec[j]][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimnonp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (sprimnonp[j][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=sprimnonp[j][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S'-p care nu sunt nule
//trebuie sa determinam daca S1 sau/si S2 sunt inconsistente
for (j=0;j<ls1;j++) {
for (l=j+1;l<ls1;l++) {
mm=0;
for (k=0;k<4;k++) if (s1[j][k]+s1[l][k]==1) mm++; else mm+=s1[j][k]+s1[l][k];
if (mm==13) { gasit=1; s1inc=1; posgasit=i; goto aici; }
}
}
aici:
for (j=0;j<ls2;j++) {
for (l=j+1;l<ls2;l++) {
mm=0;
for (k=0;k<4;k++) if (s2[j][k]+s2[l][k]==1) mm++; else mm+=s2[j][k]+s2[l][k];
if (mm==13) { gasit=1; s2inc=1; posgasit=i; goto acolo; }
}
}
acolo:
if (lsp==0) { gasit=1; posgasit=i; spnul=1; s1inc=1; sprimpnul=1; }
if (lsnp==0) { gasit=1; posgasit=i; snpnul=1; s2inc=1; sprimnonpnul=1; }
//daca Sp sau S-p sunt nuli nu are rost sa mai verificam si S'p sau S'-p
toate2=1;
for (j=0;j<lsprimnonp;j++)
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0;
if (toate2==1) { gasit=1; posgasit=i; sprimnonpnul=1; }
toate2=1;
for (j=0;j<lsprimp;j++)
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0;
if (toate2==1) { gasit=1; posgasit=i; sprimpnul=1; }
//am verificat si S'p, S'-p. am verificat tot
if (gasit==1) break;
//in acest punct programul nu a gasit nici-o inconsistenta si va trece la variabila urmatoare
printf("Nu am gasit nici-o inconsistenta pentru variabila %c. ",int(65+i));
fprintf(g,"Nu am gasit nici-o inconsistenta pentru variabila %c. ",int(65+i));
if (i<3) { printf("Trecem la %c.\n",int(66+i)); fprintf(g,"Trecem la %c.\n",int(66+i)); } else
{ printf("\nProcesam ultima variabila valida adica %c\n",int(ales+65));
fprintf(g,"\nProcesam ultima variabila valida adica %c\n",int(ales+65));
}
} //for i=0;i<4;i++
if (gasit==1) {
printf("Avem inconsistenta la variabila %c\n",int(65+posgasit));
fprintf(g,"Avem inconsistenta la variabila %c\n",int(65+posgasit));
printf("Inconsistenta s-a datorat faptului ca\n");
fprintf(g,"Inconsistenta s-a datorat faptului ca\n");
if (spnul==1) { printf("Sp a fost gasit ca nul.\n"); fprintf(g,"Sp a fost gasit ca nul.\n"); }
if (snpnul==1) { printf("S-p a fost gasit ca nul.\n"); fprintf(g,"S-p a fost gasit ca nul.\n"); }
if (sprimpnul==1) { printf("S'p a fost gasit ca nul.\n"); fprintf(g,"S'p a fost gasit ca nul.\n"); }
if (sprimnonpnul==1) { printf("S'-p a fost gasit ca nul.\n"); fprintf(g,"S'-p a fost gasit ca nul.\n"); }
if (s1inc==1) { printf("S1 este inconsistent.\n"); fprintf(g,"S1 este inconsistent.\n"); }
if (s2inc==1) { printf("S2 este inconsistent.\n"); fprintf(g,"S2 este inconsistent.\n"); }
printf("Sp = {"); fprintf(g,"Sp = {");
for (i=0;i<lsp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[sp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[sp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[sp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat Sp
printf("S-p = {"); fprintf(g,"S-p = {");
for (i=0;i<lsnp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[snp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[snp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[snp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsnp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S-p
printf("S\" = {"); fprintf(g,"S\" = (");
for (i=0;i<lssec;i++) {
mm=0;
for (k=0;k<4;k++) {
if (m[ssec[i]][k]==0) { printf("-"); fprintf(g,"-"); }
if (m[ssec[i]][k]!=2) { printf("%c",int(65+k)); fprintf(g,"%c",int(65+k)); mm++; }
if (((k+1<4)&&(m[ssec[i]][k+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lssec-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S"
printf("S'p = {"); fprintf(g,"S'p = {");
for (i=0;i<lsprimp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'p
printf("S'-p = {"); fprintf(g,"S'-p = {");
for (i=0;i<lsprimnonp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimnonp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimnonp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimnonp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimnonp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'-p
printf("S1 = (S'p U S\") = {"); fprintf(g,"S1 = (S'p U S\") = {");
for (i=0;i<ls1;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s1[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s1[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s1[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls1-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S1
printf("S2 = (S'-p U S\") = {"); fprintf(g,"S2 = (S'-p U S\") = {");
for (i=0;i<ls2;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s2[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s2[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s2[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls2-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S2
proc++;
if (s1inc==0) proceseaza(s1,ls1,0);
if ((s1inc==0)&&(s2inc==0)) proceseaza(s2,ls2,1); else if (s2inc==0) proceseaza(s2,ls2,0);
if ((s1inc==1)&&(s2inc==1)) {
printf("S1 si S2 sunt ambele inconsistente deci formula este inconsistenta.\n\n");
fprintf(g,"S1 si S2 sunt ambele inconsistente deci formula este inconsistenta.\n\n");
terminat=1;
if (formulag==1) {
printf("Rezulta ca formula G este consecinta logica a formulei F.\n");
fprintf(g,"Rezulta ca formula G este consecinta logica a formulei F.\n");
}
}
} else { //gasit == 0
printf("Nu am gasit nici-o inconsistenta in setul de clauze ramas deci\n");
printf("trecem la executie paralela pe S1 si S2\n");
fprintf(g,"Nu am gasit nici-o inconsistenta in setul de clauze ramas deci\n");
fprintf(g,"trecem la executie paralela pe S1 si S2\n");
posgasit=-1;lsp=0;lsnp=0;lssec=0;lsprimp=0;lsprimnonp=0;
ls1=0;ls2=0;sprimpnul=0;sprimnonpnul=0;spnul=0;snpnul=0;s1inc=0;s2inc=0;
//reinitializez datele
for (j=0;j<x;j++)
if (m[j][ales]==1) {
sp[lsp]=j;
lsp++;
for (k=0;k<4;k++)
sprimp[lsprimp][k]=m[j][k];
sprimp[lsprimp][ales]=2;
lsprimp++;
} else if (m[j][ales]==0) {
snp[lsnp]=j;
lsnp++;
for (k=0;k<4;k++)
sprimnonp[lsprimnonp][k]=m[j][k];
sprimnonp[lsprimnonp][ales]=2;
lsprimnonp++;
} else //if (m[j][ales]==2)
{ ssec[lssec]=j; lssec++; }
//am construit Sp, S-p, S", S'p si S'-p
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=m[ssec[j]][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (sprimp[j][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=sprimp[j][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S'p care nu sunt nule
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=m[ssec[j]][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimnonp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (sprimnonp[j][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=sprimnonp[j][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S'-p care nu sunt nule
printf("Sp = {"); fprintf(g,"Sp = {");
for (i=0;i<lsp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[sp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[sp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[sp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat Sp
printf("S-p = {"); fprintf(g,"S-p = {");
for (i=0;i<lsnp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[snp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[snp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[snp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsnp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S-p
printf("S\" = {"); fprintf(g,"S\" = (");
for (i=0;i<lssec;i++) {
mm=0;
for (k=0;k<4;k++) {
if (m[ssec[i]][k]==0) { printf("-"); fprintf(g,"-"); }
if (m[ssec[i]][k]!=2) { printf("%c",int(65+k)); fprintf(g,"%c",int(65+k)); mm++; }
if (((k+1<4)&&(m[ssec[i]][k+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lssec-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S"
printf("S'p = {"); fprintf(g,"S'p = {");
for (i=0;i<lsprimp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'p
printf("S'-p = {"); fprintf(g,"S'-p = {");
for (i=0;i<lsprimnonp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimnonp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimnonp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimnonp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimnonp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'-p
printf("S1 = (S'p U S\") = {"); fprintf(g,"S1 = (S'p U S\") = {");
for (i=0;i<ls1;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s1[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s1[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s1[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls1-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S1
printf("S2 = (S'-p U S\") = {"); fprintf(g,"S2 = (S'-p U S\") = {");
for (i=0;i<ls2;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s2[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s2[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s2[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls2-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S2
if (ls1==ls2) {
mm=0;
for (i=0;i<ls1;i++) {
for (j=0;j<4;j++) {
if (s1[i][j]!=s2[i][j]) mm=1;
}
}
if (mm==0) {
printf("S1 este la fel cu S2 deci procesam numai S1.\n");
fprintf(g,"S1 este la fel cu S2 deci procesam numai S1.\n");
proc++;
proceseaza(s1,ls1,0);
} else { //daca s1!=s2
goto dincolo;
}
} else { //if ls1!=ls2
dincolo:
proc++;
proceseaza(s1,ls1,0);
proc++;
proceseaza(s2,ls2,1);
}
} //gasit==0
} //end
int main() {
int matrice[15][4];
int matrice2[15][4]; //pentru functia G
int i,j,a,k,o,n=0,n2=0,b,d;
for (i=0;i<10;i++)
for (j=0;j<4;j++) matrice[i][j]=2; //numarul 2 reprezinta nonexistenta elementului
char *c = (char*)malloc(100*sizeof(char));
char fnc[100]; //forma conjunctiv normala
fnc[0]=0;
FILE *f = fopen("date.txt","r");
if (f!=NULL) {
fgets(c,100,f);
fclose(f);
printf("Formula data este %s\n\n",c);
i=0;
g = fopen("date2.txt","w");
fprintf(g,"Formula este\n\n%s\n\n",c);
printf("Tabelul de adevar\n\n");
printf("F1 = A\nF2 = B\nF3 = C\nF4 = D\nF5 = B implica C\nF6 = (A implica (B implica C))\nF7 = A implica B\nF8 = (A implica (B implica C)) si (A implica B)\nF9 = (A implica (B implica C)) si (A implica B) si A\nF10 = (A implica (B implica C)) si (A implica B) si A echivalent C\nF11 = ((A implica (B implica C)) si (A implica B) si A echivalent C) si ((A implica B) sau (B echivalent C) sau (C implica D))\nF12 = A implica (B sau C)\nF13 = non(A implica (B sau C))\n\n");
fprintf(g,"F1 = A\nF2 = B\nF3 = C\nF4 = D\nF5 = B implica C\nF6 = (A implica (B implica C))\nF7 = A implica B\nF8 = (A implica (B implica C)) si (A implica B)\nF9 = (A implica (B implica C)) si (A implica B) si A\nF10 = (A implica (B implica C)) si (A implica B) si A echivalent C\nF11 = ((A implica (B implica C)) si (A implica B) si A echivalent C) si ((A implica B) sau (B echivalent C) sau (C implica D))\nF12 = A implica (B sau C)\nF13 = non(A implica (B sau C))\n\n");
printf("F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13\n\n");
fprintf(g,"F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13\n\n");
for (i=1;i>-1;i--)
for (j=1;j>-1;j--)
for (a=1;a>-1;a--)
for (o=1;o>-1;o--) {
printf("%d ",i);
fprintf(g,"%d ",i);
printf("%d ",j);
fprintf(g,"%d ",j);
printf("%d ",a);
fprintf(g,"%d ",a);
printf("%d ",o);
fprintf(g,"%d ",o);
printf("%d ", implicaf(j,a));
fprintf(g,"%d ",implicaf(j,a));
printf("%d ",implicaf(i,implicaf(j,a)));
fprintf(g,"%d ",implicaf(i,implicaf(j,a)));
printf("%d ",implicaf(i,j));
fprintf(g,"%d ",implicaf(i,j));
printf("%d ",sif(implicaf(i,implicaf(j,a)),implicaf(i,j)));
fprintf(g,"%d ",sif(implicaf(i,implicaf(j,a)),implicaf(i,j)));
printf("%d ",sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
fprintf(g,"%d ",sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
k=echivalentf(a,sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
printf("%d ",k);
fprintf(g,"%d ",k);
k=sif(k,sauf(sauf(implicaf(i,j),echivalentf(j,a)),implicaf(a,o)));
if (k==0) {
strcat(fnc,"(");
if (i==0) { strcat(fnc,"A"); matrice[n][0]=1; } else { strcat(fnc,"!A"); matrice[n][0]=0; }
strcat(fnc,"v");
if (j==0) { strcat(fnc,"B"); matrice[n][1]=1; } else { strcat(fnc,"!B"); matrice[n][1]=0; }
strcat(fnc,"v");
if (a==0) { strcat(fnc,"C"); matrice[n][2]=1; } else { strcat(fnc,"!C"); matrice[n][2]=0; }
strcat(fnc,"v");
if (o==0) { strcat(fnc,"D"); matrice[n][3]=1; } else { strcat(fnc,"!D"); matrice[n][3]=0; }
strcat(fnc,")^");
matrice2[n2][0]=1-i;
matrice2[n2][1]=1-j;
matrice2[n2][2]=1-a;
matrice2[n2][3]=1-o;
n2++;
n++;
}
printf(" %d ",k);
fprintf(g," %d ",k);
k=implicaf(i,sauf(j,a));
printf(" %d ",k);
fprintf(g," %d ",k);
k=nonf(k);
printf(" %d ",k);
fprintf(g," %d ",k);
if (k==0) {
d=1;
for (b=0;b<n2;b++) { if ((matrice2[b][0]==1-i)&&(matrice2[b][1]==1-j)&&(matrice2[b][2]==1-a)&&(matrice2[b][3]==2)) d=0; }
if (d==1) {
matrice2[n2][0]=1-i;
matrice2[n2][1]=1-j;
matrice2[n2][2]=1-a;
matrice2[n2][3]=2;
n2++;
}
}
fprintf(g,"\n");
printf("\n");
}
printf("\n");
fprintf(g,"\n");
printf("Forma conjunctiv normala este\n\n");
fprintf(g,"Forma conjunctiv normala este\n\n");
for (i=0;i<strlen(fnc)-1;i++) { printf("%c",fnc[i]); fprintf(g,"%c",fnc[i]); }
printf("\n\n");
fprintf(g,"\n\n");
proceseaza(matrice,n,0);
proc=1;terminat=0;
formulag=1;
printf("Determinam daca G este o consecinta logica a formulei F.\n");
fprintf(g,"Determinam daca G este o consecinta logica a formulei F.\n");
proceseaza(matrice2,n2,0);
fclose(g);
} else printf("fishierul date.txt nu a putut fi deschis\n");
system("PAUSE");
return 0;
}
/*
Stefanian Stefan Liviu
Numarul 44
Formula data:
(A implica (B implica C)) si (A implica B) si A echivalent C
*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
int implicaf(int x, int y) {
if ((x==1)&&(y==0)) return 0; //valorea 1 pentru adevar, 0 pentru fals
return 1; //functia returneaza 0 doar daca b este fals si a este adevarat
}
int sif(int a, int b) {
if ((a==1)&&(b==1)) return 1;
return 0;
}
int sauf(int a, int b) {
if (a+b>=1) return 1;
return 0;
}
int nonf(int a) {
if (a==1) return 0;
return 1;
}
int echivalentf(int a, int b) {
if (a==b) return 1;
return 0;
}
int proc=1; //numarul procesarii
int formulag=0,terminat=0;
FILE *g;
void proceseaza(int m[][4], int x, int y) {
int i,j,k,l,mm,gasit,ales=-1,posgasit=-1,toate2,lsp=0,lsnp=0,lssec=0,lsprimp=0,lsprimnonp=0;
int ls1=0,ls2=0,sprimpnul=0,sprimnonpnul=0,spnul=0,snpnul=0,s1inc=0,s2inc=0,a,b,c,d;
int sp[10]; //Sp
int snp[10]; //S-p
int ssec[10]; //S"
int sprimp[10][4]; //S'p
int sprimnonp[10][4]; //S'-p
int s1[10][4]; //S'p U S"
int s2[10][4]; //S'-p U S"
if (terminat==1) return;
printf("\nProcesarea numarul %d ",proc);
fprintf(g,"\nProcesarea numarul %d ",proc);
if (y==1) { printf("paralela"); fprintf(g,"paralela"); }
printf("\n\n");
fprintf(g,"\n\n");
printf("S = {");
fprintf(g,"S = {");
for (i=0;i<x;i++) {
mm=0;
for (j=0;j<4;j++) {
l=0;
if (m[i][j]==0) {
printf("-%c",int(j+65));
fprintf(g,"-%c",int(j+65));
mm++;
} else if (m[i][j]==1) {
printf("%c",int(j+65));
fprintf(g,"%c",int(j+65));
mm++;
}
if (((j+1<4)&&(m[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<x-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n");
fprintf(g,"}\n\n");
mm=0;
for (i=0;i<x;i++) {
for (j=i+1;j<x;j++) {
for (k=0;k<4;k++) {
if (m[i][k]+m[j][k]==1) mm=1;
}
}
}
if (mm==0) {
printf("Formula este consistenta.\n\n");
fprintf(g,"Formula este consistenta.\n\n");
if (formulag==1) {
printf("Deci formula G nu este consecinta logica a formulei F.\n\n");
fprintf(g,"Deci formula G nu este consecinta logica a formulei F.\n\n");
}
terminat=1;
return;
}
gasit=0; //determina daca am gasit o inconsistenta simpla sau trecem la executii paralele
for (i=0;i<4;i++) { //cautam o variabila astfel incat sa obtinem inconsistenta
posgasit=-1;lsp=0;lsnp=0;lssec=0;lsprimp=0;lsprimnonp=0;
ls1=0;ls2=0;sprimpnul=0;sprimnonpnul=0;spnul=0;snpnul=0;s1inc=0;s2inc=0;
//reinitializez variabilele pentru fiecare parcurgere
toate2=1;
for (j=0;j<x;j++) if (m[j][i]!=2) toate2=0; //am gasit ceva
if (toate2==1) {
printf("Variabila %c nu mai exista in setul de clauze.\n",int(65+i));
fprintf(g,"Variabila %c nu mai exista in setul de clauze.\n",int(65+i));
if (i<3) {
printf("Trecem la variabila urmatoare, adica %c\n",int(66+i));
fprintf(g,"Trecem la variabila urmatoare, adica %c\n",int(66+i));
}
continue;
} //daca n-am gasit nimic trecem la urmatoarea variabila
ales=i; //ultima variabila valida era i
for (j=0;j<x;j++)
if (m[j][i]==1) {
sp[lsp]=j;
lsp++;
for (k=0;k<4;k++)
sprimp[lsprimp][k]=m[j][k];
sprimp[lsprimp][i]=2;
lsprimp++;
} else if (m[j][i]==0) {
snp[lsnp]=j;
lsnp++;
for (k=0;k<4;k++)
sprimnonp[lsprimnonp][k]=m[j][k];
sprimnonp[lsprimnonp][i]=2;
lsprimnonp++;
} else //if (m[j][i]==2)
{ ssec[lssec]=j; lssec++; }
//am construit Sp, S-p, S", S'p si S'-p
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=m[ssec[j]][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (sprimp[j][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=sprimp[j][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S'p care nu sunt nule
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=m[ssec[j]][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimnonp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (sprimnonp[j][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=sprimnonp[j][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S'-p care nu sunt nule
//trebuie sa determinam daca S1 sau/si S2 sunt inconsistente
for (j=0;j<ls1;j++) {
for (l=j+1;l<ls1;l++) {
mm=0;
for (k=0;k<4;k++) if (s1[j][k]+s1[l][k]==1) mm++; else mm+=s1[j][k]+s1[l][k];
if (mm==13) { gasit=1; s1inc=1; posgasit=i; goto aici; }
}
}
aici:
for (j=0;j<ls2;j++) {
for (l=j+1;l<ls2;l++) {
mm=0;
for (k=0;k<4;k++) if (s2[j][k]+s2[l][k]==1) mm++; else mm+=s2[j][k]+s2[l][k];
if (mm==13) { gasit=1; s2inc=1; posgasit=i; goto acolo; }
}
}
acolo:
if (lsp==0) { gasit=1; posgasit=i; spnul=1; s1inc=1; sprimpnul=1; }
if (lsnp==0) { gasit=1; posgasit=i; snpnul=1; s2inc=1; sprimnonpnul=1; }
//daca Sp sau S-p sunt nuli nu are rost sa mai verificam si S'p sau S'-p
toate2=1;
for (j=0;j<lsprimnonp;j++)
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0;
if (toate2==1) { gasit=1; posgasit=i; sprimnonpnul=1; }
toate2=1;
for (j=0;j<lsprimp;j++)
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0;
if (toate2==1) { gasit=1; posgasit=i; sprimpnul=1; }
//am verificat si S'p, S'-p. am verificat tot
if (gasit==1) break;
//in acest punct programul nu a gasit nici-o inconsistenta si va trece la variabila urmatoare
printf("Nu am gasit nici-o inconsistenta pentru variabila %c. ",int(65+i));
fprintf(g,"Nu am gasit nici-o inconsistenta pentru variabila %c. ",int(65+i));
if (i<3) { printf("Trecem la %c.\n",int(66+i)); fprintf(g,"Trecem la %c.\n",int(66+i)); } else
{ printf("\nProcesam ultima variabila valida adica %c\n",int(ales+65));
fprintf(g,"\nProcesam ultima variabila valida adica %c\n",int(ales+65));
}
} //for i=0;i<4;i++
if (gasit==1) {
printf("Avem inconsistenta la variabila %c\n",int(65+posgasit));
fprintf(g,"Avem inconsistenta la variabila %c\n",int(65+posgasit));
printf("Inconsistenta s-a datorat faptului ca\n");
fprintf(g,"Inconsistenta s-a datorat faptului ca\n");
if (spnul==1) { printf("Sp a fost gasit ca nul.\n"); fprintf(g,"Sp a fost gasit ca nul.\n"); }
if (snpnul==1) { printf("S-p a fost gasit ca nul.\n"); fprintf(g,"S-p a fost gasit ca nul.\n"); }
if (sprimpnul==1) { printf("S'p a fost gasit ca nul.\n"); fprintf(g,"S'p a fost gasit ca nul.\n"); }
if (sprimnonpnul==1) { printf("S'-p a fost gasit ca nul.\n"); fprintf(g,"S'-p a fost gasit ca nul.\n"); }
if (s1inc==1) { printf("S1 este inconsistent.\n"); fprintf(g,"S1 este inconsistent.\n"); }
if (s2inc==1) { printf("S2 este inconsistent.\n"); fprintf(g,"S2 este inconsistent.\n"); }
printf("Sp = {"); fprintf(g,"Sp = {");
for (i=0;i<lsp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[sp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[sp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[sp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat Sp
printf("S-p = {"); fprintf(g,"S-p = {");
for (i=0;i<lsnp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[snp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[snp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[snp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsnp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S-p
printf("S\" = {"); fprintf(g,"S\" = (");
for (i=0;i<lssec;i++) {
mm=0;
for (k=0;k<4;k++) {
if (m[ssec[i]][k]==0) { printf("-"); fprintf(g,"-"); }
if (m[ssec[i]][k]!=2) { printf("%c",int(65+k)); fprintf(g,"%c",int(65+k)); mm++; }
if (((k+1<4)&&(m[ssec[i]][k+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lssec-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S"
printf("S'p = {"); fprintf(g,"S'p = {");
for (i=0;i<lsprimp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'p
printf("S'-p = {"); fprintf(g,"S'-p = {");
for (i=0;i<lsprimnonp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimnonp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimnonp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimnonp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimnonp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'-p
printf("S1 = (S'p U S\") = {"); fprintf(g,"S1 = (S'p U S\") = {");
for (i=0;i<ls1;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s1[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s1[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s1[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls1-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S1
printf("S2 = (S'-p U S\") = {"); fprintf(g,"S2 = (S'-p U S\") = {");
for (i=0;i<ls2;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s2[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s2[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s2[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls2-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S2
proc++;
if (s1inc==0) proceseaza(s1,ls1,0);
if ((s1inc==0)&&(s2inc==0)) proceseaza(s2,ls2,1); else if (s2inc==0) proceseaza(s2,ls2,0);
if ((s1inc==1)&&(s2inc==1)) {
printf("S1 si S2 sunt ambele inconsistente deci formula este inconsistenta.\n\n");
fprintf(g,"S1 si S2 sunt ambele inconsistente deci formula este inconsistenta.\n\n");
terminat=1;
if (formulag==1) {
printf("Rezulta ca formula G este consecinta logica a formulei F.\n");
fprintf(g,"Rezulta ca formula G este consecinta logica a formulei F.\n");
}
}
} else { //gasit == 0
printf("Nu am gasit nici-o inconsistenta in setul de clauze ramas deci\n");
printf("trecem la executie paralela pe S1 si S2\n");
fprintf(g,"Nu am gasit nici-o inconsistenta in setul de clauze ramas deci\n");
fprintf(g,"trecem la executie paralela pe S1 si S2\n");
posgasit=-1;lsp=0;lsnp=0;lssec=0;lsprimp=0;lsprimnonp=0;
ls1=0;ls2=0;sprimpnul=0;sprimnonpnul=0;spnul=0;snpnul=0;s1inc=0;s2inc=0;
//reinitializez datele
for (j=0;j<x;j++)
if (m[j][ales]==1) {
sp[lsp]=j;
lsp++;
for (k=0;k<4;k++)
sprimp[lsprimp][k]=m[j][k];
sprimp[lsprimp][ales]=2;
lsprimp++;
} else if (m[j][ales]==0) {
snp[lsnp]=j;
lsnp++;
for (k=0;k<4;k++)
sprimnonp[lsprimnonp][k]=m[j][k];
sprimnonp[lsprimnonp][ales]=2;
lsprimnonp++;
} else //if (m[j][ales]==2)
{ ssec[lssec]=j; lssec++; }
//am construit Sp, S-p, S", S'p si S'-p
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=m[ssec[j]][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls1>0) {
for (b=0;b<ls1;b++) {
a=1;
for (c=0;c<4;c++) if (sprimp[j][c]!=s1[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s1[ls1][k]=sprimp[j][k]; ls1++; }
} //toate2==0
} //am copiat in S1 doar liniile din S'p care nu sunt nule
for (j=0;j<lssec;j++) {
toate2=1;
for (k=0;k<4;k++) if (m[ssec[j]][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (m[ssec[j]][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=m[ssec[j]][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S" care nu sunt nule
for (j=0;j<lsprimnonp;j++) {
toate2=1;
for (k=0;k<4;k++) if (sprimnonp[j][k]!=2) toate2=0; //linia contine cel putin un element
if (toate2==0) {
if (ls2>0) {
for (b=0;b<ls2;b++) {
a=1;
for (c=0;c<4;c++) if (sprimnonp[j][c]!=s2[b][c]) a=0;
if (a==1) break;
}
} else a=0;
if (a==0) { for (k=0;k<4;k++) s2[ls2][k]=sprimnonp[j][k]; ls2++; }
} //toate2==0
} //am copiat in S2 doar liniile din S'-p care nu sunt nule
printf("Sp = {"); fprintf(g,"Sp = {");
for (i=0;i<lsp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[sp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[sp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[sp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat Sp
printf("S-p = {"); fprintf(g,"S-p = {");
for (i=0;i<lsnp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (m[snp[i]][j]==0) { printf("-"); fprintf(g,"-"); }
if (m[snp[i]][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(m[snp[i]][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
} //for j=0;j<4
if (i<lsnp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S-p
printf("S\" = {"); fprintf(g,"S\" = (");
for (i=0;i<lssec;i++) {
mm=0;
for (k=0;k<4;k++) {
if (m[ssec[i]][k]==0) { printf("-"); fprintf(g,"-"); }
if (m[ssec[i]][k]!=2) { printf("%c",int(65+k)); fprintf(g,"%c",int(65+k)); mm++; }
if (((k+1<4)&&(m[ssec[i]][k+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lssec-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S"
printf("S'p = {"); fprintf(g,"S'p = {");
for (i=0;i<lsprimp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'p
printf("S'-p = {"); fprintf(g,"S'-p = {");
for (i=0;i<lsprimnonp;i++) {
mm=0;
for (j=0;j<4;j++) {
if (sprimnonp[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (sprimnonp[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(sprimnonp[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<lsprimnonp-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S'-p
printf("S1 = (S'p U S\") = {"); fprintf(g,"S1 = (S'p U S\") = {");
for (i=0;i<ls1;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s1[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s1[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s1[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls1-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S1
printf("S2 = (S'-p U S\") = {"); fprintf(g,"S2 = (S'-p U S\") = {");
for (i=0;i<ls2;i++) {
mm=0;
for (j=0;j<4;j++) {
if (s2[i][j]==0) { printf("-"); fprintf(g,"-"); }
if (s2[i][j]!=2) { printf("%c",int(65+j)); fprintf(g,"%c",int(65+j)); mm++; }
if (((j+1<4)&&(s2[i][j+1]!=2))&&(mm==1)) { printf("v"); fprintf(g,"v"); mm--; }
}
if (i<ls2-1) { printf(","); fprintf(g,","); }
}
printf("}\n\n"); fprintf(g,"}\n\n");
//am printat S2
if (ls1==ls2) {
mm=0;
for (i=0;i<ls1;i++) {
for (j=0;j<4;j++) {
if (s1[i][j]!=s2[i][j]) mm=1;
}
}
if (mm==0) {
printf("S1 este la fel cu S2 deci procesam numai S1.\n");
fprintf(g,"S1 este la fel cu S2 deci procesam numai S1.\n");
proc++;
proceseaza(s1,ls1,0);
} else { //daca s1!=s2
goto dincolo;
}
} else { //if ls1!=ls2
dincolo:
proc++;
proceseaza(s1,ls1,0);
proc++;
proceseaza(s2,ls2,1);
}
} //gasit==0
} //end
int main() {
int matrice[15][4];
int matrice2[15][4]; //pentru functia G
int i,j,a,k,o,n=0,n2=0,b,d;
for (i=0;i<10;i++)
for (j=0;j<4;j++) matrice[i][j]=2; //numarul 2 reprezinta nonexistenta elementului
char *c = (char*)malloc(100*sizeof(char));
char fnc[100]; //forma conjunctiv normala
fnc[0]=0;
FILE *f = fopen("date.txt","r");
if (f!=NULL) {
fgets(c,100,f);
fclose(f);
printf("Formula data este %s\n\n",c);
i=0;
g = fopen("date2.txt","w");
fprintf(g,"Formula este\n\n%s\n\n",c);
printf("Tabelul de adevar\n\n");
printf("F1 = A\nF2 = B\nF3 = C\nF4 = D\nF5 = B implica C\nF6 = (A implica (B implica C))\nF7 = A implica B\nF8 = (A implica (B implica C)) si (A implica B)\nF9 = (A implica (B implica C)) si (A implica B) si A\nF10 = (A implica (B implica C)) si (A implica B) si A echivalent C\nF11 = ((A implica (B implica C)) si (A implica B) si A echivalent C) si ((A implica B) sau (B echivalent C) sau (C implica D))\nF12 = A implica (B sau C)\nF13 = non(A implica (B sau C))\n\n");
fprintf(g,"F1 = A\nF2 = B\nF3 = C\nF4 = D\nF5 = B implica C\nF6 = (A implica (B implica C))\nF7 = A implica B\nF8 = (A implica (B implica C)) si (A implica B)\nF9 = (A implica (B implica C)) si (A implica B) si A\nF10 = (A implica (B implica C)) si (A implica B) si A echivalent C\nF11 = ((A implica (B implica C)) si (A implica B) si A echivalent C) si ((A implica B) sau (B echivalent C) sau (C implica D))\nF12 = A implica (B sau C)\nF13 = non(A implica (B sau C))\n\n");
printf("F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13\n\n");
fprintf(g,"F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13\n\n");
for (i=1;i>-1;i--)
for (j=1;j>-1;j--)
for (a=1;a>-1;a--)
for (o=1;o>-1;o--) {
printf("%d ",i);
fprintf(g,"%d ",i);
printf("%d ",j);
fprintf(g,"%d ",j);
printf("%d ",a);
fprintf(g,"%d ",a);
printf("%d ",o);
fprintf(g,"%d ",o);
printf("%d ", implicaf(j,a));
fprintf(g,"%d ",implicaf(j,a));
printf("%d ",implicaf(i,implicaf(j,a)));
fprintf(g,"%d ",implicaf(i,implicaf(j,a)));
printf("%d ",implicaf(i,j));
fprintf(g,"%d ",implicaf(i,j));
printf("%d ",sif(implicaf(i,implicaf(j,a)),implicaf(i,j)));
fprintf(g,"%d ",sif(implicaf(i,implicaf(j,a)),implicaf(i,j)));
printf("%d ",sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
fprintf(g,"%d ",sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
k=echivalentf(a,sif(sif(implicaf(i,implicaf(j,a)),implicaf(i,j)),i));
printf("%d ",k);
fprintf(g,"%d ",k);
k=sif(k,sauf(sauf(implicaf(i,j),echivalentf(j,a)),implicaf(a,o)));
if (k==0) {
strcat(fnc,"(");
if (i==0) { strcat(fnc,"A"); matrice[n][0]=1; } else { strcat(fnc,"!A"); matrice[n][0]=0; }
strcat(fnc,"v");
if (j==0) { strcat(fnc,"B"); matrice[n][1]=1; } else { strcat(fnc,"!B"); matrice[n][1]=0; }
strcat(fnc,"v");
if (a==0) { strcat(fnc,"C"); matrice[n][2]=1; } else { strcat(fnc,"!C"); matrice[n][2]=0; }
strcat(fnc,"v");
if (o==0) { strcat(fnc,"D"); matrice[n][3]=1; } else { strcat(fnc,"!D"); matrice[n][3]=0; }
strcat(fnc,")^");
matrice2[n2][0]=1-i;
matrice2[n2][1]=1-j;
matrice2[n2][2]=1-a;
matrice2[n2][3]=1-o;
n2++;
n++;
}
printf(" %d ",k);
fprintf(g," %d ",k);
k=implicaf(i,sauf(j,a));
printf(" %d ",k);
fprintf(g," %d ",k);
k=nonf(k);
printf(" %d ",k);
fprintf(g," %d ",k);
if (k==0) {
d=1;
for (b=0;b<n2;b++) { if ((matrice2[b][0]==1-i)&&(matrice2[b][1]==1-j)&&(matrice2[b][2]==1-a)&&(matrice2[b][3]==2)) d=0; }
if (d==1) {
matrice2[n2][0]=1-i;
matrice2[n2][1]=1-j;
matrice2[n2][2]=1-a;
matrice2[n2][3]=2;
n2++;
}
}
fprintf(g,"\n");
printf("\n");
}
printf("\n");
fprintf(g,"\n");
printf("Forma conjunctiv normala este\n\n");
fprintf(g,"Forma conjunctiv normala este\n\n");
for (i=0;i<strlen(fnc)-1;i++) { printf("%c",fnc[i]); fprintf(g,"%c",fnc[i]); }
printf("\n\n");
fprintf(g,"\n\n");
proceseaza(matrice,n,0);
proc=1;terminat=0;
formulag=1;
printf("Determinam daca G este o consecinta logica a formulei F.\n");
fprintf(g,"Determinam daca G este o consecinta logica a formulei F.\n");
proceseaza(matrice2,n2,0);
fclose(g);
} else printf("fishierul date.txt nu a putut fi deschis\n");
system("PAUSE");
return 0;
}
FuriousLight- Unicorn
- Posts : 2632
Join date : 2009-05-06
Age : 29
- Post n°41
Re: have you got photos of siren?
Wait...why do you post your homework here?
AWP_Sniper- Admin
- Posts : 1717
Join date : 2009-04-18
Age : 30
Location : Over there, watching you.
- Post n°42
Re: have you got photos of siren?
LMBdffg wrote:argus GO FUCK YOURSELF IN HELL YOU FUCKING PIECE OF SHIT YOU'RE EVEN WORSE THAN DUSTWING. AND THIS IS NOT YOUR FORUM SO I CAN WRITE WHATEVER I WANT UNTIL DUST REMOVES ME
Not his forum?
Now.... lets see.....
Argus is an Aerostigma member... And these are the Aerostigma forums... Yeah I think its his forum br0. His and every other Aerostigma member.
You can write whatever you want until Dust kicks you?
Its more like you can write whatever you want here until we've had enough from laughing at you.
Enjoy your stay here while it lasts.
Antimony- Unicorn
- Posts : 1488
Join date : 2010-05-04
Age : 30
Location : Under Korne's bed.Dreaming...
- Post n°43
Re: have you got photos of siren?
LMB is a leftie D: THE SHAME!!!!!YOU HAVE BROUGHT SHAME TO THE LEGION OF LEFTIES AND YOU SHAL BURN IN AN ETERNAL FIRE OF USED RETAINERS AND SEMEN!!!!
DragonEmperor- Pteradactyl
- Posts : 620
Join date : 2010-08-23
Age : 30
Location : In this land we have defended from all things dark and cruel, Now we are defenseless in a land where dragons rule.
- Post n°44
Re: have you got photos of siren?
This was the first thread that I clicked on after my looong absence off of here.
I'm so glad that LMB has problems. <3
I'm so glad that LMB has problems. <3
kilew- Gaybaby
- Posts : 176
Join date : 2010-06-17
Age : 30
- Post n°45
Re: have you got photos of siren?
This thread motivated me to put on a dog suit and shit on LMB's lawn.
address please?
address please?
DanontheMoon- Unicorn
- Posts : 2570
Join date : 2009-06-02
Age : 42
Location : Some other game
- Post n°46
Re: have you got photos of siren?
I'll shit on his lawn my damn self. Hell, I'll shit in his newspaper, so when they bring it in and unroll it shit just falls everywhere. AND I'll jack off in the mailbox.
Kicking dogs is the national passtime of Transylvania, huh? Who knew?
Kicking dogs is the national passtime of Transylvania, huh? Who knew?
RADOC- Buttmunch
- Posts : 5
Join date : 2011-07-28
Age : 35
Location : Near Spratly Islands
- Post n°47
Re: have you got photos of siren?
LOL...there is a worse than a buttmunch... ---> "LMB"argus wrote:LMB what the fuck is wrong with you just go away
|
|