Citat:
Java Beograd: Ne znam koje si digitrone ti gledao.
"Pijačni digitron" je posle unosa broja 2 iz tvog primera napisao boj 7 na displeju, ispraznio steck, i ubacio sedmicu kao prvi operand. Bilo bi pogrešno da nije tako, jer digitron "ne zna" da li si 'teo još nešto da računaš, ili je 5+2 sve šta si 'teo.
I dakle, pošto je steck prazan, sledeća operacija koji je korisnik ukucao je množenje, drugi operand je 3 i na displeju piše 21. Naravno, rezultat je opet tačan, jer pisalo je 7, ukucano množenje, pa trojka. Kao što znamo, 7x3=21.
Sledeći unos se mogao desiti 10 minuta posle prvog, i seljanka na pijaci je već zaboravila šta je kucala ranije. Videla je 7 na displeju, ukucala množenje, pa 3. Zamisli njeno čuđenje ako bi kao rezultat videla 11?!?
I opet se steck prazni, i upisuje 21 kao prvi operand, pa ostaje da se sa njime obavi neka sledeća operacija.
Kakav stek! Ne prilagođava se definicija algoritmu, nego obrnuto.
Dakle
0. Na početku je na ekranu 0.
1. Kada je ukucano 5, na ekranu je bilo 5.
2. Kada je ukucano +, na ekranu je bilo 5.
3. Kada je ukucano 2, na ekranu je bilo 2.
4. Kada je ukucano x, na ekranu je bilo 2.
5. kada je ukucano 3, na ekranu je bilo 3.
6. Kada je pritisnuto =, na ekranu je bilo 11.
Svaki drugi rezultat nakon pritiskanja dugmeta = je pogrešan zato što je u suprotnosti sa onim što se uči u (obaveznim) osnovnim školama u celom svetu. To je kao kada bi oznaka 5 značila tri, oznaka 0 značila devet, a oznaka + značila množenje, pa da 5+5 bude 0.
Inače, konvencije se ne biraju nasumično. Prioritet računskih operacija je takav jer minimizuje broj neophodnih zagrada.
Kako izračunati ukupnu cenu robe, koja se sastoji od više vrsta artikala, pri čemu roba uključuje više komada neke vrste artikla ili se neki artikal prodaje na meru, a da se ne pišu zagrade?
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.