Informatică, întrebare adresată de dariacristiana22, 9 ani în urmă

#2641 AF
Cerința
Gigel are ca temă la matematică să precizeze valoarea de adevăr a unor expresii de forma nr1 semn nr2 = nr3, unde nr1, nr2 și nr3 sunt numere naturale, iar semn poate fi +, -, x sau : reprezintând adunarea, scăderea, înmulțirea și împărțirea. Ajutați-l pe Gigel să rezolve tema la matematică.

Date de intrare
Fișierul de intrare af.in conține pe prima linie numărul de expresii n, iar pe următoarele n linii cele n expresii. Cele trei numere, semnul operației și egal sunt separate câte un spațiu.

Date de ieșire
Fișierul de ieșire af.out va conține pe fiecare linie valoarea de adevăr (Adevarat sau Fals) a expresiei corespunzătoare din fișierul de intrare.

Restricții și precizări
1 ≤ n ≤ 10
0 ≤ nr1, nr2, nr3 și rezultatul operației din membrul stâng ≤ 1017
nr1 ≥ nr2
rezultatul operația nr1 : nr2 este câtul împărțirii lui nr1 la nr2
dacă expresia este de forma nr1 : 0 = nr3 atunci este considerată falsă.
Exemplu
af.in

4
1 + 1 = 2
3 x 3 = 6
5 - 1 = 4
8 : 2 = 3
af.out

Adevarat
Fals
Adevarat
Fals
Explicație
1 + 1 = 2;
3 × 3 ≠ 6;
5 – 1 = 4;
8 : 2 ≠ 3
Va rog!! Ma chinui de de 2 zile la prob asta!


boiustef: era bine să vedem codul tău...

Răspunsuri la întrebare

Răspuns de boiustef
2

Răspuns:

#include <iostream>

#include <fstream>

using namespace std;

int main()

{

   ifstream f("af.in");

   ofstream g("af.out");

   char semn, egal;

   long long int a, b, c, i, n, ok;

   f >> n;

   for (i=1; i<=n; ++i)

   {

      ok=0;

      f >> a >> semn >> b >> egal >> c;

      if (ok==0 && semn=='+' && a+b==c) ok=1;

      if (ok==0 && semn=='-' && a-b==c) ok=1;

      if (ok==0 && semn=='x' && a*b==c) ok=1;

      if (ok==0 && semn==':') {

           if (b==0) ok=0;

           else if (a/b==c) ok=1;}

       if (ok) g << "Adevarat" << "\n";

       else g << "Fals" << "\n";

   }

   return 0;

}

Explicație:


dariacristiana22: ai copiat rasp de la o intrebare al carui raspuns nu e bun
boiustef: ???? Să ştii că nu am postat nicicând cod neverificat... codul e de 100.
boiustef: De fapt, programul merge foarte bine. Ca sa stii, in momentul cand copiezi un cod de pe brainly si acesta are "spatii" la inceput, cand copiezi programu' o sa-ti arate ceva genu' ( https://prnt.sc/n6n3kr ) Eroarea ta sunt liniile alea rosii.. Copiaza codu' in word sau in ceva si dupa pune l in codeblocks sau in ce ai testat tu programu'. Sau pur si simplu sterge fiecare spatiu de la inceput..
boiustef: poftim şi codul sursă de pe pastebin:
https://pastebin.com/fXhDvdfk
boiustef: ai rezolvat?
boiustef: _____????????????
boiustef: ai evaluat codul meu ca greşit, sau pe al tău?
dariacristiana22: sorry pana la urma era ciudat cv la cum se copia de pe brainly si il facea sa nu dea bine
dariacristiana22: scuze pt raspuns tarziu
boiustef: :))), mai bine mai târziu decât deloc...
Alte întrebări interesante