.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » formule

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
.campion
formule


Timp maxim de executie/test:
0.3 secunde
Memorie totala disponibila/stiva:
16 MB/1 MB

O formula logica este constituita dintr-o succesiune de variabile logice si operatori logici. Variabilele logice sunt litere mici ale alfabetului englez si pot avea valoarea 1 (adevarat) sau 0 (fals). Operatorii logici sunt:

Negatie (!) Conjunctie (&) Disjunctie (|) Implicatie (->) Echivalenta (<->)
!0=1
0&0=0 0|0=0 0->0=1 0<->0=1
!1=0 0&1=0 0|1=1 0->1=1 0<->1=0
1&0=0 1|0=1 1->0=0 1<->0=0
1&1=1 1|1=1 1->1=1 1<->1=1

Mai exact, putem defini o formula logica astfel:
1. Orice variabila logica este o formula.
2. Daca P este o formula, atunci (!P) este de asemenea o formula.
3. Daca P si Q sunt formule, atunci (P&Q), (P|Q), (P->Q) si (P<->Q) sunt formule.
4. Orice formula se obtine numai prin regulile 1., 2., 3.
Se numeste tautologie o formula care are valoarea adevarat (1) pentru orice valori ale variabilelor care intervin în formula.
Se numeste contradictie o formula care are valoarea fals (0) pentru orice valori ale variabilelor care intervin în formula.

Cerinta

Scrieti un program care sa identifice tautologiile si contradictiile într-un sir de formule dat.

Date de intrare

Fisierul de intrare formule.in va contine pe prima linie un numar natural n, care reprezinta numarul de formule din fisier. Pe fiecare dintre urmatoarele n linii va fi scrisa o formula.

Date de iesire

În fisierul de iesire formule.out vor fi scrise n linii, câte una pentru fiecare formula din fisierul de intrare. Pe linia i va fi scrisa litera T (daca formula de pe linia i+1 din fisierul de intrare este o tautologie), litera C (daca formula de pe linia i+1 din fisierul de intrare este o contradictie) sau litera N (daca formula de pe linia i+1 din fisierul de intrare nu este nici tautologie, nici contradictie).

Restrictii si precizari

  • n <= 10
  • Lungimea unei formule este <= 200
  • Numarul de variabile distincte care pot interveni într-o formula este <= 15.

Exemplu
formule.in formule.out

5
((b->a)<->((!a)->(!b)))
((!(a|b))<->((!a)&(!b)))
a
(a<->(!a))
((a&b)&c)

T
T
N
C
N

prof. Emanuela Cerchez
Liceul de Informatica "Grigore Moisil" Iasi
Contact:emanuela.cerchez@gmail.com

propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la .campion 2006: scara, programs, nr, iepuras2, numere3, robot2, fry, suma, sah, perm, cifra, repeat, ture, xor, policefm, unu, criptare, ed, bilete, vector, scor, ratb, infinit, race, dragon, kreg, placi, hanoig, red, 2sec, flood, sume3, balls, festival, croco, johnie, matrice3, pavaj, sume, arthur, kimberley, kafka, vocale, pento, prop, ro, sol, bacan, erdos, poligon, reduceri, druid, novel, gramezi, nrbinar, laser, spair, caravane, cuburi, grup, invest, cd, friends2, mese, toys
De acelaşi autor: celule, scp, vedete, film, ab, supertri, inginer, camp, sl, detinut, simetric, egal, gropi, ruleta, carti, tgv, uscat, afise, dezbateri, bunici, rv, onu, nspecial, secvop, cadou, chimie, reteta, piticot, petrol, checkin, teanc, index, teren, pizza, ecran, drum, text, lbd, aven, spam, pluricex, tren2, gray, pasi, mgo, joc, anagrame, vecini, criptmat, maxim, cutie, party, friends, net, sablon, hd, pc, sir2, aztec, scara, nr, robot2, sah, ed, bilete, hanoig, flood, matrice3, erdos, grup, cd, kfactor, np, cuc, radio, honest, ref, nr01, scor2, convert, auto2, compress, politics, pm, playlist, barbie, firma1, submatrix, ham, pizza1, exam, ants, teatru1, cifre1, bile1, caini, secvreg, pasune, remi, m01, sir23, tren1, joc5, pachete, aedaro, windows, renju, latime, mere1, piloti, peste, pitici, sirag1, stive, turn1, carti1, program1, spioni, kgb, lift, apel, lex, oras, homeless, subsir, dist, harta1, adevar, joc10, bare, zapezi, masina2, perechi1, raft, joc11, joc12, ferma, fni, tunel, lover, pepsi, transport, avion, monkey, premii1, garaj, carti2, tv, pact, fat, cafea, echipe1, secvente, petrom, peg, scara1, lant, ecuatii, stiva, bile4, jungla, rj, poli, text1, compus1, rez, politie, anag, codul, coment, muzeu, seti, basm, timer, secvsir, dp, placa, prod3, bursa, submdisj, sotron1, fazan, secvpar, joker, lego, medalii, cfr, antipatie, figura, links, segm, colorare, brazi, mobil, distsir, guess, greiere, pestera, conferinta, chei, ny, nx, ghinion, sumb, drenaj, telecomanda, grupuri, mahjong, rotund, viena, sport2, cos, monoton, micro, valet, nr0, maxviz, anagramabil, nrpal, lista, dame, consiliu, adprod, arme, deal, prodnr, compar, latin, interviu, vintage, prize, nrdiv, arrows, tdrept, agenda, reziston, vot2, tema, smiley, relatii, ech, scadere, nebuni, castig, expand, wb, prime2, virgule, b210
Despre şiruri de caractere: scp, ab, sl, nrcuv, rv, kpal, chimie, reteta, replace, grad, index, cod, text, decript, spam, complex, cifre, anagrame, balbe, criptmat, mesaj, maxim, astre, sablon, ed, balls, vocale, prop, bacan, novel, bitslang, text2, ref, scor2, convert, cod2, compress, pstring, sub, rima, program1, sms, circular, randuri, cezar, bifo, joc9, pal, bare, joc12, fractie, cod3, tunel, csir, top, ratina, cifru1, limbaj, adun, ecuatii, dir, paritate, virus, sir6, mesaj2, text1, sirul, ogorul, rez, sablon1, anag, sir8, seti, secvsir, dp, cuvant, strings, antipatie, fractie1, links, ordonare, text3, concat, codif, cheie, alfabetar, cuvinte2, comp, litere, mxl, mesaj3, expresie2, grad2, antic, zuma, expeval, combcuv, lgdrum, subtitrare, compresie, zigzag, azeval, fraze, subsecvente, showroom, rebus1, agenda, opmult, betisoare, reziston, clase, vot2, ecp, smiley, charlie, cript, scadere, spioni1, sablon3, expand, culori3, virgule
Despre recursivitate: tren, mere, chimie, sarpe, soldati, infinit, compress, ploaia, cartoane, sub, metro, windows, lacuri, apel, maxq, pav, joc11, paianjen, suma2, monkey, csir, lsort, imagine, dir, desert, echitabil, rez, logic, gradina, links, dreptunghiuri, expresie1, cumpanit, reziston, antitero, sablon3
Despre generare: taste, pluricex, balbe, magic3, grup, zmeu, nr01, reteta2, playlist, pizza1, caramele, caini, tvshow, adevar, prime1, hexa, premii1, carti2, bile4, hof, matrx, cubinvers, arctir, guess, minmax, stele, tablou1, adunscad, sumprod, prisme, operatii1, expeval, triburi1, optim, patru, genab, dineu, cumpanit, nkd, relatii, wb
Software recomandat
Chestionare recomandate
surse trimise | ajutor