Koraci u procesu programiranja

Sjedište: CARNET - Arhiva 2021 Loomen
E-kolegij: III. Gimnazija Osijek - Informatika 2
Knjiga: Koraci u procesu programiranja
Otisnuo/la: Gost (anonimni korisnik)
Datum: ponedjeljak, 28. listopada 2024., 14:12

Koraci u procesu programiranja

Danas postoji mnoštvo različitih programa za različite namjene računala. Svaki od tih programa (danas su to skupovi programa – aplikacije) najprije je morao biti razvijen. Bilo da program radi jedna osoba ili cijeli tim, u pravilu se taj proces sastoji od istih koraka:

1.  određivanje problema

2.  analiza problema

3.  sastavljanje algoritma

4.  pisanje programa u odabranom programskom jeziku

5.  prevođenje programa

6.  testiranje

7.  izrada dokumentacije

8.  održavanje programa.

Objasnimo na primjeru.


1. Određivanje problema

Prva faza je zadavanje zadatka. U školi taj posao obično napravim ja. Zadam zadatak osmijeh. U firmama zadatak obično programer dobije od nadređenih.

Neka je nama zadan zadatak u kojemu treba napisati program koji će za zadanu duljinu stranice kvadrata izračunati duljinu njezine dijagonale.


2. Analiza problema

Nakon što dobije zadatak program prvo mora razmisliti o samom problemu, kako to riješiti?!

Pri analizi problema treba odrediti:

  • ulazne podatke - podatci koje korisnik unosi u program i
  • izlazne podatke - rezultati obrade koji se ispisuju na zaslon ili neku drugu izlaznu napravu.
Također, treba odrediti način rješavanja problema.

Konkretno u našem primjeru imamo:

Ulazni podatak je duljina stranice kvadrata (a).

Izlazni podatak je duljina dijagonale danog kvadrata (d).

Oba podatka su iz skupa pozitivnih realnih brojeva. Ovaj podatak je programeru jako bitan, jer računalo drukčije zapisuje cijeli, a drukčije realan broj.

Skicirajmo rješenje:

Sad kad smo naš problem dobro analizirali možemo krenuti na iduću fazu.

3. Sastavljanje algoritma

Nakon što smo analizirali problem možemo početi izradu algoritma. Već smo rekli da je algoritam konačan skup koraka koji računalu detaljno opisuju što treba napraviti. Algoritam možemo zapisati pseudojezikom ili dijagramom tijeka.

Algoritam zapisan pseudojezikom glasio bi:

Idemo objasniti što radi koja naredba:

  • omogućuje unošenje podatka s tipkovnice, označava ga imenom a i unesenu vrijednost sprema u memoriju.
  • dohvaća vrijednosti pohranjene u varijabli a, množi ju sa korijenom od 2 i rezultat pohranjuje kao vrijednost u varijablu d.
  • na zaslon ispisuje vrijednost varijable d.

U tako napisanom algoritmu nismo uzeli u obzir činjenicu da korisnik može učitati i nulu ili negativan broj za duljinu stranice a. Jedno od mogućih rješenja pseudojezikom i dijagramom tijeka u kojem imamo provjeru valjanosti duljine stranice a je:

     

U ovom primjeru duljina d izračunat će se i ispisati na zaslon samo ako je varijabla a > 0!

Uvijek imajte na umu da svaka izostavljena naredba ili naredba postavljena na pogrešno mjesto u programu, mijenja rezultat programa.

4. Pisanje programa – kodiranje

Pri izradi programa možemo se koristiti različitim programskim jezicima. Programski jezik čine skup naredbi i pravila njihova pisanja. Svaki programski jezik određuju:

leksik – dopušten skup znakova

sintaksa – pravila pisanja pojedinih naredbi

semantika – značenje ispravno napisanih naredbi.

Pogledajmo sada kodiranje našeg primjera u programskim jezicima Python i C.

Neka vas ne obeshrabri što je program u C-u nešto dulji. Naučit će te vi to brzo!

5. Prevođenje programa

Nakon pisanja programa u izabranom programskom jeziku (kodiranja) potrebno je s pomoću kompajlera prevesti program u jezik razumljiv računalu. U tom se koraku otkrivaju sintaktičke (pogrešno napisane naredbe)  i leksičke (pogreške u tipkanju) pogreške.

6. Testiranje

Ako je prevođenje bilo uspješno, ne znači da je naš program ispravan. Provjeru ispravnosti programa i otkrivanje logičkih pogrešaka daje pomno testiranje programa. Za testiranje se uzimaju dobro odabrani ulazni podatci za koje znamo izlazne vrijednosti.

Također, može se pojaviti i semantička pogreška, primjerice ako pogrešno definiramo prostor u memoriji računala.

Ako testiramo naš primjer, znamo da za upisanu duljinu stranice a = 1 izlazna vrijednost treba biti 1.41, a za a = 2, d = 2.82.

Ako nismo dobili točne izlazne podatke, na pojedine ćemo se korake morati vratiti.


7. Izrada dokumentacije

Kada program prođe testiranje, potrebno je izraditi opširnu dokumentaciju. Dokumentacija se sastoji od dvaju dijelova: korisničke dokumentacije (uputa za uporabu namijenjena korisniku) i razvojne dokumentacije (sadržava opis rješavanja problema za izmjene i održavanje programa koje ćemo poslije provesti).

8. Održavanje programa

Održavanje programa je redovito obnavljanje i prilagođavanje programa stvarnim potrebama korisnika u razumnom vremenu (update i upgrade programa).


Zadatak

Želimo ograditi voćnjak pravokutnog oblika​ širine m i dužine n metara.

  • Ako znamo širinu i dužinu voćnjaka koliko žice nam treba?
  • Želimo li postaviti stup na svakih x metara, koliko stupova trebamo?
  • Ako znamo cijenu metra žice i jednog stupa koliko će koštati ograđivanje voćnjaka​?
Problem smo već raščlanili na tri jednostavnija problema.

1. Koliko metara žice nam treba?

2. Koliko stupova nam treba?

3. Koliko nam novca za to sve treba?

Napravite analizu i algoritam u pseudojeziku za navedeni zadatak.