programovací jazyk

39
Programovací jazyk programovací jazyk prostredie a programovací jazyk Java prepis algoritmov do jazyka Java riešené úlohy

Upload: nissim-mercer

Post on 03-Jan-2016

80 views

Category:

Documents


0 download

DESCRIPTION

Programovací jazyk. programovací jazyk prostredie a programovací jazyk Java prepis algoritmov do jazyka Java riešené úlohy. Programovací jazyk. algoritmický jazyk – umožňuje zápis postupnosti vykonávania príkazov - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Programovací jazyk

Programovací jazyk programovací jazyk prostredie a programovací jazyk Java prepis algoritmov do jazyka Java riešené úlohy

Page 2: Programovací jazyk

Programovací jazyk algoritmický jazyk – umožňuje zápis postupnosti

vykonávania príkazov programovací jazyk – formalizuje algoritmický

jazyk do zápisu, ktorý dokáže spracovať prekladač a na základe neho realizovať príkazy prostredníctvom nemysliaceho zariadenia (obvykle počítača)

programovanie – analógia algoritmizácie, no navyše so zápisom v príslušnom programovacom jazyku

Page 3: Programovací jazyk

Typy programovacích jazykov

programovacie jazyky nižšej úrovne– bližie k jazyku stroja – jednoduchšie/rýchlejšie vykonavanie inštrukcií– často viazané na inštrukčnú sadu procesora– strojový kód, assembler, možno C

programovacie jazyky vyššej úrovne– používateľsky príjemnejšie– bližšie ľudskému jazyku – abstraktnejšia komunikácia– preklad do inštrukcií procesora– často multiplatformné– Java, C, Pascal, Basic, Fortran

Page 4: Programovací jazyk

História programovacích jazykov 40-te roky 20. storočia – programovanie v strojovom jazyku počítača 50-te roky 20. storočia – programovanie v jazyku symbolických adries 1956 – programovací jazyk fortran (FORmula TRANslation) 1958 – programovací jazyk algol (ALGOrithmic Language) 1961 - programovací jazyk basic (Beginners All-Purpose Symbolic Instruction

Code) okolo 1970 – programovací jazyk pascal (systematické, štruktúrované

programovanie) okolo 1980 - programovací jazyk C (+ prechod k objektovo orientovanému

programovaniu) 90-te roky 20. storočia - vývoj komplexnejších verzií jazykov s cieľom

využitia nových možností predovšetkým osobných počítačov (grafika, zvuk, multimédiá) – programovanie riadené udalosťami (Visual Basic, Delphi)

súčasnosť – programovacie jazyky nezávislé na platforme (Java, skriptovacie jazyky – PHP, ASP programovacie jazyky pre tvorbu aplikácií), .NET platforma

Page 5: Programovací jazyk

Životný cyklus programu definícia problému

– jasná definícia problému je polovicou riešenia analýza problému

– delenie problému na menšie a jednoduchšie podproblémy– kompletná definícia vstupov a výstupov

návrh riešenia– popis postupnosti krokov ľudským/algoritmickým jazykom

kódovanie– programovanie – prepis návrhu do zdrojového kódu

testovanie– odstraňovanie chýb programu (syntaktických i logických)

Page 6: Programovací jazyk

Kompilátor a interpreter systém môže pristupovať k vykonávaniu kódu

dvoma spôsobmi:– zdrojový kód preloží do strojových inštrukcií (exe

súbor) – prekladaču hovoríme kompilátor, procesu prekladania kompilácia, chyby v kóde musia byť odstránené pred spustením C, Pascal

– zdrojový kód sa vykonáva „za behu“ programu, procesoru ho prekladá interpreter príkaz po príkaze skupina základných syntaktických chýb je odhalená na

začiatku, časť až počas behu programu Basic, Java

Page 7: Programovací jazyk

Programovací jazyk Java

vytvorený:– v roku 1991– tvorca: James Gosling zo SUN Microsystems– dôvody: potreba vytvorenia platformne

nezávislého jazyka schopného pracovať na rôznych elektronických zariadeniach

– možnosť využívania v prostredí WWW

Page 8: Programovací jazyk

Technológia Java

programovací jazyk– umožňuje vytvárať všetky druhy aplikácií, ktoré sú schopné

vytvárať ostatné programovacie jazyky

vývojové prostredie– súprava nástrojov (kompilátor, interpreter, generátor

dokumentácie atď.)

aplikačné prostredie (JRE – Java Runtime Environment)– prostredie zabezpečujúce beh programu v jazyku Java

SDK – Software Development Kit webbrowser

Page 9: Programovací jazyk

Súčasti jazyka/prostredia

Java Virtual Machine – fiktívne zariadenie emulujúce reálne zariadenie– poskytuje špecifikácie skutočného hardvéru– umožňuje beh programu napísaného pre iné

zariadenie– bytecode – špeciálny skompilovaný kód (.class)

prekladaný JVM do inštrukcií procesora– JIT (just-in-time) kompilátor mení bytecode do

inštrukcií príslušného procesora

Page 10: Programovací jazyk

Súčasti jazyka/prostredia II.

Garbage collection– uvoľňuje pamäť od nepoužívaných objektov

Code security– kontroluje kód na nekorektný obsah (výnimky

umožňujúce prístup k neoprávnených prvkom) a vykoná ho len v prípade, ak je bezpečný

Page 11: Programovací jazyk

Od kódu k aplikácii

úloha nástroj výsledok

napísanie programu ľubovoľný editor súbor s koncovkou .java

kompilovanie programu

java kompilátor súbor s koncovkou .class

= bytecode

spustenie programu java interpreter výstup programu

Page 12: Programovací jazyk

Koniec teórie... poďme programovať

výber vývojového prostredia– Java NetBeans– prostredie poskytujúce nástoje na:

vytvorenie projektu (File – New Project) písanie (editor) a ladenie kompilovanie (Build – Build Main Project) spúšťanie (Run – Run Main Project)

detaily na seminároch...

Page 13: Programovací jazyk

Štruktúra programu typický prvý príklad

public class Hello

{

/**

* My first Java program

*/

public static void main( String[] args ){

// prints the string Hello world on screen

System.out.println(“Hello world”);

}

}

Page 14: Programovací jazyk

Štruktúra programu typický prvý príklad

public class Hello

{

/**

* My first Java program

*/

public static void main( String[] args ){

//prints the string Hello world on screen

System.out.println(“Hello world”);

}

}

Page 15: Programovací jazyk

Popis programupublic class Hello { /** * My first Java program */ public static void main( String[] args ){

//prints the string Hello world on screen System.out.println(“Hello world”);

} }

program v Jave je organizovaný v triedach (class) hovorí, že názov nášho projektu je Hello zatiaľ je totožný s názvom súboru, do ktorího ukladáme

projekt

Page 16: Programovací jazyk

Popis programupublic class Hello

{

/**

* My first Java program

*/

public static void main( String[] args ){

//prints the string Hello world on screen

System.out.println(“Hello world”);

}

}

zložené zátvorky určujú začiatok a koniec bloku, v našom prípade celého programu (classu)

Page 17: Programovací jazyk

Popis programupublic class Hello { /** * My first Java program */ public static void main( String[] args ){

//prints the string Hello world on screen System.out.println(“Hello world”);

} }

komentáre používateľa text medzi začiatkom a koncom kompilátor ignoruje

– začiatok komentára /*– koniec komentára */

Page 18: Programovací jazyk

Popis programupublic class Hello { /** * My first Java program */ public static void main( String[] args ){

//prints the string Hello world on screen System.out.println(“Hello world”);

} }

metóda main je metóda, ktorá sa v rámci classu vykonáva po jeho „spustení“

obsahuje ju každý class zvyčajne má presne túto štruktúru – detaily neskôr

Page 19: Programovací jazyk

Popis programupublic class Hello

{

/**

* My first Java program

*/

public static void main( String[] args ){

//prints the string Hello world on screen

System.out.println(“Hello world”);

}

}

riadkový komentár text za znakmi // v rámci riadku sa ignoruje

Page 20: Programovací jazyk

Popis programupublic class Hello

{

/**

* My first Java program

*/

public static void main( String[] args ){

//prints the string Hello world on screen

System.out.println(“Hello world”);

}

}

zabezpečí výpis textu v úvodzovkách

Page 21: Programovací jazyk

Špeciálny Java-komentár /**

/** This is an example of special java doc

comments used for \n generating an html

documentation. It uses tags like:

@author Florence Balagtas

@version 1.2

*/

Page 22: Programovací jazyk

Prepis – sekvencia

príkazy oddeľujeme znakom “;” sekvencia: {

prikaz1;

prikaz2;

...

prikazn;

};

Page 23: Programovací jazyk

Premenné pri programovaní je zjavná potreba používania

premenných– každá premenná musí byť deklarovaná – uvedené jej

meno a typ– navyše jej môže byť priradená východzia hodnota– zatiaľ budeme používať premenné celočíselného

typu, ktoré definuje kľúčové slovo int

{... int a; // deklaruje celočíselnú premennú a

int b = 3; /* deklaruje celočíselnú premennú a

nastaví jej východziu hodnotu 3 */

Page 24: Programovací jazyk

POZOR!!!! Java je Case-sensitive = na veľkosti záleží

– meno nie je Meno pre názvy premenných platia štandardné

pravidlá

príkaz i++ zvýši hodnotu premennej o 1 príkaz i-- zníži hodnotu premennej o 1

neskôr si o tomto zápise povieme podrobnejšie

Page 25: Programovací jazyk

Prepis – sekvencia – príklad Napíšte program, ktorý vypočíta obsah a obvod

obdĺžnika.

{ int a = 3; // zabezpecit vstup zatial

int b = 4; // nevieme hodnoty vlozime

// do premennych

int s,o;

s = a*b;

o = 2*(a+b);

System.out.println(s,o);

}

Page 26: Programovací jazyk

Prepis – vetvenievetvenie: if (podmienka)

p1;

else

p2;

if (podmienka) {

p11;

...

p1m

} else {

p21;

...

p2n;

}

Page 27: Programovací jazyk

Prepis – vetvenie II. neúplné vetvenie:

if (podmienka)

p;

alebo

if (podmienka)

{

p11;

p12;

...

p1m

}

Page 28: Programovací jazyk

Prepis – vetvenie – príklad Nájdite a vypíšte maximum z dvoch celých čísel.

{ int a = 8;

int b = 15;

if (a > b)

System.out.println(a);

else

System.out.println(b);

}

Page 29: Programovací jazyk

Prepis – cyklus s pevným počtom opakovaní od menšieho k väčšiemu

for(i=1;i<=n;i++) {

prikaz;

}

s pevným počtom opakovaní od väčšieho k menšiemu

for(i=n;i>=1;i--) {

prikaz;

}

Page 30: Programovací jazyk

Prepis – cyklus II. vo všeobecnosti

for (InicializacnyVyraz; podmUkoncenia; krok){

prikaz1;

prikaz2;

. . .

}

InicializacnyVyraz – nastaví východziu hodnotu pre riadiacu premennú cyklu

podmUkoncenia – porovnáva hodnotu riadiacej premennej s danou hodnotou, ak je podmienka splnená vykoná príkazy v cykle

krok – aktualizuje hodnotu riadiacej premennej

Page 31: Programovací jazyk

Prepis – cyklus – príklad Vypočítajte súčet prvých 100 celočíselných hodnôt.

{ int i; int sucet = 0;

for(i=1;i<=100;i++) {

sucet = sucet + i; }

System.out.println(sucet);

}

Page 32: Programovací jazyk

Prepis – cykly s podmienkou na začiatku

while (podmienka)

{ prikaz;

}

napr.

... while (i<10)

{ System.out.println(i); i++;

}...

Page 33: Programovací jazyk

Prepis – cykly s podmienkou na konci

do{

prikaz1; ...

prikaz1;}while (podmienka); // kým je splnená podmienka

napr. do {

System.out.println(i); i++;

} while (i<10)

Page 34: Programovací jazyk

Objemy a obsahy

Vypočítajte povrch a objem hranola.

Page 35: Programovací jazyk

Jednoduchá kalkulačka

Vytvorte aplikáciu, ktorá dokáže realizovať základné matematické operácie (súčet, súčin, rozdiel) s dvoma celými číslami.

Page 36: Programovací jazyk

Delenie nulou

Pridajte do aplikácie delenie – ošetrite výpočet pre delenie nulou

Page 37: Programovací jazyk

Absolútna hodnota čísla

Zistite absolútnu hodnotu čísla pomocou podmienky.

Page 38: Programovací jazyk

Faktoriál

Zistite faktoriál pre zadané číslo.

Page 39: Programovací jazyk

NSDNájdite najväčší spoločný deliteľ dvoch čísel

pomocou euklidovho algoritmu.