Differences

This shows you the differences between two versions of the page.

Link to this comparison view

miniraeknare [2017-09-01 14:54] (current)
Line 1: Line 1:
 +===== Miniräknare =====
 +Skriv en miniräknare som jobbar med omvänd polsk notation. Detta sätt att evaluera uttryck tycker jag är överlägset det traditionella sättet (HP:s räknedosor använder ofta detta sätt).
 +Det räcker att er räknare klarar de fyra räknesätten och att nollställa räknaren, dvs tömma stacken (+,-,*,/,c)
 +
 +ex.
 +
 +  Uttrycket (4+5)*(6-7) ​
 +  slår man in på följande sätt 
 +  4 ¶ 5 ¶ + ¶ 6 ¶ 7 ¶ - ¶ * ¶ 
 +  Där ¶ betyder "​ENTER",​
 +
 +Stacken kommer att se ut som följande under inmatningen.
 +
 +Stackens utseende.
 +  7
 +  5 6 6 -1
 +  4 4 9 9 9 9 -9
 +  ​
 +
 +Ett körbart [[http://​student.oedu.se/​~jf/​ex/​rpn_calc.exe|program]] för att bättre förstå hur din räknare skall funka.
 +
 +En sida [[http://​www.calculator.org/​rpn.html|Reverse Polish Notation]] med lite mer info.
 +
 +<code cpp>
 +// Ni skall lagra era värden i en STL-stack av double
 +// Ni får läsa hur en stack funkar i boken och på www.cppreference.com
 +#include <​stack>​
 +
 +int main(){
 +  stack <​double>​ s;
 +}
 +</​code>​