This is an old revision of the document!


Tema 1 - Calculator

Responsabili:

  • Răzvan Nițu

Termen de predare:

  • Deadline soft: 16.11.2022 23:55
  • Deadline hard: 22.11.2022 23:55

Cerință

Pentru aceasta tema va trebui sa implementati un calculator care sa faca operatii aritmetice. Programul citeste de la tastatura o expresie aritmentica si afiseaza rezultatul acestei expresii. Formatul de citire a expresiei de la tastatura este urmatorul: se citeste un numar N, apoi N numere reale, iar in final se citesc N-1 operatii. O operatie este reprezentata de un caracter si poate avea valorile: '+', '-', '*', '/'. Astfel, urmatorul input:

4    // N = 4
3    // operand 1
3    // operand 2
4    // operand 3
5    // operand 4
+*/  // N-1 = 3 operatii

Va fi interpretat ca: “3+3*4/5”.

Task 1

Pentru prima cerinta va trebui sa implementati citirea unei expresii si evaluarea acesteia, neglijand precedenta operatorilor. Astfel, pentru expresia “3+3*4/5”, veti evalua operatiile in ordinea in care apar: 3+3*4/5 6*4/5 = 24/5 = 4.8 . Afisarea rezultatului va avea si o linie noua (adica “printf(”%f\n”, result)”, *NU* “printf(”%f”, result)”).

Task 2

Pentru a doua cerinta va trebui sa implementati citirea unei expresii si evaluarea acesteia tinand cont si de precendenta operatorilor. Astfel, pentru expresia “3+3*4/5”, veti evalua operatiile tinand cont de faptul ca operatiile '*' si '/' au precedenta mai mare fata de '+' si '-'. In consecinta, pentru acesta sarcina, rezultatul va fi: 3+3*4/5 = 3+12/5 = 3+2.4 = 5.4 .

programare/teme_2022/tema1_2022_cbd.1667381334.txt.gz · Last modified: 2022/11/02 11:28 by razvan.nitu1305
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0