Osnove programiranja 31.10.2015. predavač: Zadaci Svakodnevni životni zadaci Računalo je stvoreno da nam pomogne u rješavanju svakodnevnih zadataka. U rješavanju koristimo logiku, iskustva, znanja, intuiciju i osjećaje Kako ono to radi? • • prema.
Download
Report
Transcript Osnove programiranja 31.10.2015. predavač: Zadaci Svakodnevni životni zadaci Računalo je stvoreno da nam pomogne u rješavanju svakodnevnih zadataka. U rješavanju koristimo logiku, iskustva, znanja, intuiciju i osjećaje Kako ono to radi? • • prema.
Osnove programiranja
31.10.2015.
predavač:
Zadaci
Svakodnevni životni zadaci
Računalo je stvoreno da nam
pomogne u rješavanju
svakodnevnih zadataka.
U rješavanju koristimo logiku,
iskustva, znanja, intuiciju i
osjećaje
Kako ono to radi?
•
•
prema unaprijed zadanim
pravilima
određene stvari pamti, ali i
odlučuje prema određenim
smjernicama
Računalo trebamo pripremiti za određenu vrstu zadataka, a
zadatke koje pred njega postavljamo moramo pretvoriti u njemu
razumljiv oblik.
Kako čovjek pretvara zadatke iz svijeta koji
ga okružuje u oblik prihvatljiv računalu?
Opisom i analizom konkretnog problema
(Što imam? - Što želim?)
promatranje, istraživanje,
razmišljanje, razgovor
Određivanjem postupka rješavanja problema
(Što raditi i kako?)
crtanje dijagrama tijeka,
zapis u pseudokodu
Zapisom puta do rješenja na način kako ga
razumije računalo – "računalnim jezikom"
programiranje u
programskom jeziku
RAČUNALNI PROGRAM
? Korisnik računala
ne piše programe već pokreće već gotove programe
instalirane ili spremljene na računalu
Program se izvršava, zahtjeva od korisnika unos pojedinih
parametara i vraća rezultat kao rješenje problema.
include <stdio.h>
void main () {
int a,b,c;
scanf ("%d,%d",&a, &b);
z=a+b;
printf ("%d", z);
}
include <stdio.h>
void main () {
int a,b,c;
scanf ("%d,%d",&a, &b);
z=a+b;
printf ("%d", z);
}
Program je niz naredbi koje se
izvode točno određenim redom i s
točno određenim ciljem.
Temeljni element programa je
naredba.
Naredbama se točno opisuje što i kako
računalo treba raditi.
Naredba predstavlja nalog računalu za
izvršenje određene radnje.
Programe pišu stručnjaci – programeri i pri tome
koriste neki od programskih jezika razumljivih
računalu.
Postupak nastajanja programa naziva se
programiranje.
Pravilnom upotrebom programa korisnik upravlja računalom.
PROGRAMSKI JEZICI
Programski jezik je skup ključnih riječi i pravila za njihovo korištenje
koje “razumije” računalo.
Razvoj programskih jezika pratio je razvoj računala.
Prva generacija: strojni jezici
Strojni jezik je binarni prikaz programa za
računalo.
programski jezik prvih računala
programe su uglavnom pisali konstruktori računala i
oni se nisu mogli prenositi s računala na računalo
vezan je uz građu računala (od programera se
zahtijeva dobro poznavanje građe)
otežano je pisanje programa
velika je vjerojatnost pogreške pri pisanju programa
PROGRAMSKI JEZICI
Druga generacija: simbolički jezici, asembler
Programer pri pisanju operacija koristi riječi izvedene iz
svakodnevnog govora (uglavnom engleskog), a za
podatke koristi varijable.
“Olakšano” pisanje programa
Za vrijeme izvođenja programa memorija može primiti samo niz
nula i jedinica.
Stoga se
svaka naredba asemblerskog jezika prije izvođenja prevodi
u strojnu naredbu.
PROGRAMSKI JEZICI
Treća generacija: viši programski jezici
U višim programskim jezicima više naredbi strojnog ili asemblerskog
jezika zamjenjuje se jednom naredbom višeg programskog jezika.
Programer ne treba poznavati građu računala, a isti se program može
pokrenuti na različitim modelima računala.
FORTRAN, ALGOL, COBOL, PL/1, Ada, LISP, PROLOG
BASIC (QBASIC), LOGO, Pascal, C (C++)
TO ZBROJI
MAKE “A READ
MAKE “B READ
MAKE “Z :A+:B
PR :Z
END
INPUT A
INPUT B
Z=A+B
PRINT Z
END
program zbroji;
var a, b: integer;
begin
readln (a);
readln (b);
z:=a+b;
writeln (z);
end.
#include <stdio.h>
void main () {
int a,b,c;
scanf ("%d,%d",&a, &b);
z=a+b;
printf ("%d", z);
}
Proceduralni jezici
Program zapisan u višem programskom
jeziku naziva se
izvorni program (source code).
QBASIC - datoteke tipa .BAS
Pascal - datoteke tipa .PAS
C++ - .CPP datoteke
interpreteri
JEZIČNI PREVODITELJI
prevode program u strojni jezik
kompajleri
Tijekom svakog izvođenja interpreteri prevode
svaku naredbu izvornog programa u strojni (binarni)
oblik.
(primjer BASIC-a)
Kompajleri izvorni program prevode u strojni oblik u
posebnom postupku prevođenja (kompajliranja).
Prevođenjem izvornog programa dobit ćemo datoteku
objektnog koda (object code). Povezivanjem objektnog
koda s već postojećim bibliotekama nastaje izvršni
program (EXEcutable program).
Za pokretanje programa na bilo kojem računalu dovoljna
je njegova izvršna verzija. (primjer Pascala, C-a)
PROGRAMSKI JEZICI
Četvrta generacija: jezici prilagođeni krajnjim korisnicima
upitni jezici za bazu podataka (SQL)
Objektno programiranje
Programeri programe sastavljaju od već gotovih dijelova - objekata.
Visual BASIC, Visual C
Već je i programski jezik C++ objektno orijentiran, ali omogućava i
pisanje proceduralnog koda.
Programski jezici neovisni o sklopovlju i operacijskom sustavu
INTERNET
Java
Što smo naučili?
•
•
•
•
Što je programiranje? Što je program?
Tko piše program?
Što je naredba?
Kako zovemo jezike u kojima zapisujemo
program?
• Nabroji vrste programskih jezika i njihove
osnovne karakteristike.
12
Zadaci
Jesi li tijekom osnovne škole programirao?
Napiši (potraži) nekoliko programa u
QBASICU?
Nabroji osnovne naredbe QBASICA.
Potraži neki program u Pascalu
Potraži neki program u C-u
13