Tp Predavanja 01
-
Upload
dayna-brown -
Category
Documents
-
view
224 -
download
6
description
Transcript of Tp Predavanja 01
-
Tehnike programiranja Programski jezici. Uvod u
programski jezik PASCAL. Osnovni tipovi podataka u PASCAL-u.
-
Programski jezici
Formalni jezik za opis postupaka reavanja problema pomou raunara
Sintaksa (pravopis) i semantika (znaenje) su osnovne dimanzije svakog programskog jezika
Izmeu oveka i raunara se nalazi interterfejs
Prevodilac (compiler), interpreter ili translator omoguavaju da programski jezik postane interfejs izmeu oveka i raunara.
-
Prevodilac, interpreter i translator
Prevodilac prevodi konstrukcije programskog jezika na mainski jezik razumljiv raunaru. Kompajlirane konstrukcije se mogu kasnije izvravati bez prisustva programskog jezika (Fortran, Cobol, Pascal, C).
Interpreter prevodi jednu po jednu konstrukciju na mainski jezik, pri emu se prevedena konstrukcija odmah i izvrava (Basic, Java). Potrebno je na raunaru postoji interpreter tog jezika.
Translator prevodi konstrukcije jednog programskog jezika na konstrukcije drugog programskog jezika (n.p.r. Basic na Pascal)
-
Generacije programskih jezika
1GL Mainski kod, alfabet sainjavaju 0 i 1, instrukcije su direktno izvrive od strane raunara.
2GL Simboliki asembleri, unapreenje 1GL, akronimski nazivi umesto 0 i 1.
3GL Nezavisni od hardvera, komande na engleskom, ukljuuju prevodioce i/ili interpretere. Jezici Fortran, Cobol, Angol, Pascal, C
4GL Problemski orijentisani, apstraktni. Primer je SQL (Structured Query Language), generatori aplikacija...
-
1GL, 2GL i 3GL [primeri sa sajta http://www.dspguide.com/ch4/5.htm]
Primer se odnosi na sabiranje brojeva 1234 i 4321
-
4GL [primer sa sajta http://www.w3schools.com/sql/sql_where.asp]
-
PASCAL
Pascal je imperativni (program=algoritam+ podaci) programski jezik koga je napravio 1974 Niklaus Virt.
Ovaj jezik koji je dobio naziv po Blezu Paskalu je pogodan za uenje struktuiranog programiranja.
Standardizovan je 1983 godine.
-
Primer Pitagorina teorema
Pascal Java
program pitagorina_teorema; var a,b:integer; var c:real; begin a:=3; b:=4; c:=sqrt(sqr(a)+sqr(b)); write(c); readln; end.
package pitagorina_teorema; import java.lang.System; public class pitagorina_teorema { public static void main(String[] args) { int a,b; double c; a=3; b=4; c = Math.sqrt(a*a+b*b); System.out.println(c); } }
-
Struktura programa u paskalu Pascal Java
program ... ... ... } (deklaracije) ... begin
...
... } (postupak)
... end.
import ImePaketa; public class ImeKlase { public static void main(String[] args) { // Ovde ide kod } }
-
Tipovi podataka
Svaki objekat u Paskalovom programu mora biti nekog poznatog i unapred definisanog tipa.
Vezano za tipove podataka postoje tri pravila: Tipom podataka se odreuje domen vrednosti
podatka. Vrednost podatka sme da bude samo neka vrednost koja odgovara tipu podataka.
Svaki podatak je jednog i samo jednog tipa. Operacije koje se vre nad podacima zavise od tipa tih
podataka. Na primer ne mogu se mnoiti dva karaktera (slova).
Svrha ovih pravila je efikasno upravljanje memorijom i izbegavanje besmislenih operacija
-
Osnovni tipovi podataka u Paskalu
Paskal ima 4 osnovna tipa podataka: Celi brojevi (integer) Realni brojevi (real) Znakovi (char) Logike vrednosti (boolean)
Postoje i sloeniji tipovi koji se zasnivaju na osnovnim tipovima podataka
Java ima 8 tipova podataka svrstanih u 4 grupe: Celi brojevi (byte, short, int i long) Brojevi u pokretnom zarezu (float, double) namenjeni
realnim vrednostima Znakovi (char) Logike vrednosti (boolean)
-
Osnovni tipovi podataka u Paskalu
Naziv Opis Broj bajtova
integer celi brojevi od -32768 do 32767 2
real Brojevi sa pokretnim zarezom sa 11 12 cifara, od 2.9*10-39 do 1.7*1038
6
char Bilo koji karakter iz ASCII tabele 1
boolean Logiki tip sa dve vrednosti (true, false)
1
-
Osnovni tipovi podataka u Javi [Izvor: http://javaprogramiranje.wordpress.com/2009/11/07/tipovi-
podataka-promenjive-i-nizovi/]
-
Pascal - Integer (Celi brojevi)
Uzimaju vrednosti iz skupa celih brojeva. Tipovi koju su dodati kasnije a vezani sa ovaj tip su:
word neoznaeni celi brojevi od 0 do 65535 (2 bajta)
shortint celi brojvi od -128 do 127 (1 bajt)
byte neoznaeni celi brojavi od 0 do 255 (1 bajt)
longint celi brojevi od -2147483648 do 2147483647 (4 bajta)
comp od -9.2*1018 do 9.2*1018 (8 bajtova)
-
Pascal - Real (Brojevi u pokretnom zarezu)
Uzimaju vrednost iz skupa racionalnih brojeva, pri emu su vrednosti zapisane ili u razlomljenom ili eksponencionalnom obliku. Tipovi koju su dodati kasnije a vezani sa ovaj tip su:
single preciznost od samo 7-8 cifara, od 1,5*10-45 do 3,4*1038 (4 bajtova)
double od 5.0*10-324 do 1.7*10308 (8 bajtova)
extended od 3.4*10-4932 do 1.7*104932 (10 bajtova)
-
Pascal - Char (karakteri)
-
Pascal - Boolean (logike vrednosti)
Uzimaju vrednosti iz Bulove algebre (true, false)
Najee se koriste u logikim izrazima
-
Primer Osnovni tipovi podataka Pascal Java
program OsnovniTipoviPodataka; var ceo: integer; var realan: real; var slovo: char; var logicki: boolean; begin ceo:=5; realan:=5.5; slovo:='a'; logicki:=true; writeln('ISPIS VREDNOSTI OSNOVNIH TIPOVA'); writeln(ceo); writeln(realan); writeln(slovo); writeln(logicki); readln; end.
package osnovni_tipovi_podataka; public class osnovni_tipovi_podataka { public static void main(String[] args) { int ceo; double realan; char slovo; boolean logicki; ceo=5; realan=5.5; slovo='a'; logicki=true; System.out.println("ISPIS VREDNOSTI OSNOVNIH TIPOVA"); System.out.println(ceo); System.out.println(realan); System.out.println(slovo); System.out.println(logicki); } }
-
Operatori
U Pascal-u postoje razliti tipovi operatora: Aritmetiki operatori
Relacioni operatori
Logiki operatori
Bit operatori
Skupovni operatori
String operatori
-
Artimetiki operatori
Operator Pascal
Operator Java
Opis
+ + Sabiranje
- - Oduzimanje
* * Mnoenje
div / Deljenje
mod % Deljenje po modulu
-
Relacioni operatori
Operator Pascal
Operator Java
Opis
= == Jednako
!= Razliito
> > Vee
< < Manje
>= >= Vee ili jednako
=< =< Manje ili jednako
-
Logiki operatori
Operator Pascal
Operator Java
Opis
and & ili && konjukcija, logiko i
or | ili || diskjuncija, logiko ili
not ! negacija, logiko ne
-
Prioritet operatora u Pascal-u
Operator Prirotet
not Najvii
*, /, div, mod, and, &
|, !, +, -, or,
=, , = Najnii
-
Programsko testiranje operatora Pascal Java
program operatori; var a,b:integer; var c,d:boolean; begin a:=11; b:=4; c:=false; d:=true; writeln('a+b=',a+b); writeln('a-b=',a-b); writeln('a*b=',a*b); writeln('a div b=',a div b); writeln('a mod b=',a mod b); writeln('a = b ',a = b); writeln('a b ',a b); writeln('a > b ',a > b); writeln('a < b ',a < b); writeln('a >= b ',a >= b); writeln('a