Pre nego što napišemo algoritam za ovaj proces (kompjuterski program) , neophodno je da napravimo pseudo kod.

Razumevanje procesa :

Sam proces sabiranja dva broja je prosta matematička operacija X + Y = Z , gde su X i Y promenljive u koje se smeštju vrednosti koje se sabiraju (sabirci), a Z je promenljiva u koju se smešta rezultat sabiranja (zbir).

Ograničenja procesa:

Vrednost promenljivih X i Y mora pripadati skupu realnih brojeva. Proces (kompjuterski program) se može izvršiti više puta na zahtev korisnika sa unosom novih vrednosti promenljivih X i Y. Za to nam je neophodna promenljiva ODGOVOR u koju će se uneti vrednost odgovora korisnika u tekstualnoj formi :

"da" ukoliko korisnik želi da startuje program ponovo.

"ne" ukoliko korisnik ne želi da startuje program ponovo.

Koraci u pseudo kodu:

1. Početak

2. Unesi (dodeli) vrednost promenljive (sabirka) X

3. Unesi (dodeli) vrednost promenljive (sabirka) Y

4. Izračunaj Z (Z = X + Y)

5. Prikaži rezultat sabiranja Z na monitoru uz poruku "Zbir X i Y je :"

6. Postavi pitanje "Da li želite ponovo da startujete program <da/ne> ?" i dodeli vrednost odgovora promenljivoj ODGOVOR

7. Ukoliko je ODGOVOR "da" idi na 1. korak

8. Ukoliko je ODGOVOR "ne" idi na 9. korak

9. Kraj

Sada kada smo napisali pseudo kod prelazimo na pisanje Algoritma :

Pogledajte Algoritam levo i uporedite ga sa pseudo kodom iznad.

Primetićete da se što se tiče redosleda koraka ne razlikuje , ali ima razlike u načinu opisa koraka.

1. korak je definisan isto sa početak

2. i 3. korak je u algoritmu predstavljen simbolom unos u okviru koga su nabrojana imena promenljivih u koje se smeštaju vrednosti unete sa tastature , u ovom slučaju X i Y. Nabrajanje se ostvaruje upotrebom zareza između imena promenljivih.

4. korak je predstavljen simbolom obrade podataka gde je navedena radnja sabiranja vrednosti promenljivih X i Y i smeštanje rezultata u promenljivu Z.

5. korak je predstavljen simbolom izlaz , što u ovom slučaju znači da će se na monitoru pojaviti poruka "Zbir X i Y je ", a neposredno iza toga vrednost promenljive Z.

6. korak je zahtev za unosom vrednosti promenljive ODGOVOR , iako pitanje nije upisano u grafički element , podrazumeva se da će na monitoru biti ispisano.

7. i 8. korak su predstavljeni grafičkim elementom uslov (pitalica) , gde je pitanje da li je vrednost promenljive ODGOVOR jednako "ne" , odnosno da li korisnik neće ponovo da pokrene program i ukoliko je uslov ispunjen , tok programa se nastavlja linijom toka označenom sa "da" odnosno program se završava. Ako je vrednost promenljive ODGOVOR jednako "da" , odnosno korisnik hoće ponovo da pokrene program , program se nastavlja linijom toka ozačenom sa "ne", odnosno vraća se na početak.


Sam pseudo kod , a samim time i algoritam su nesavršeni u mnogim elementarnim stvarima pa je neophodno ponovo razmisliti i napisati pseudo kod ,a zatim i algoritam.Prva primedba -"Šta ako korisnik unese kao vrednost X ili Y promenljive nešto drugo osim dozvoljenog, ne unese broj koji pripada skupu realnih brojeva ili umesto mogućih odgovora na pitanje "Da li želite ponovo da startujete program <da/ne> ?" unese nepredviđen odgovor, takođe koliko velike brojeve korisnik sme da unese? Zatim u kom formatu će se ispisivati rezultat na ekranu (1234568,789 ili 1 234 568,789 ili 1,234,568.789 itd).

Ono što je još bitno , a očigledno je , to je da broj koraka u pseudo kodu može ali i ne mora da odgovara broju grafičkih elemenata u samom algoritmu !

Pokušajte sami da unapredite algoritam.Ukoliko vam ne ide pogledajte jednu od mogućnosti u prilogu 1.

U poglavlju besplatni programi možete pogledati programski kod za program

"Basic arithmetic operations"

Napisan u programskom jeziku C# u IDE SharpDevelop , koji pored sabiranja ima dodate i preostale tri proste matematičke operacije.U okviru priloga imate kompletno rešenje ( solution ) za IDE SharpDevelop.

Ukoliko koristite SharpDevelop možete da ga preuzmete , otvorite i pogledate kompletan program.Ukoliko ne u okviru istog imate Release verziju programa koju startujete prostim klikom.Neophodan je netframework 4.0 ili noviji.