programovací jazyk

Post on 03-Jan-2016

75 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

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

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 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

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

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

Ž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)

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

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

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

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

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ý

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

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...

Š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”);

}

}

Š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”);

}

}

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

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)

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 */

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

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

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

Š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

*/

Prepis – sekvencia

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

prikaz1;

prikaz2;

...

prikazn;

};

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 */

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

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);

}

Prepis – vetvenievetvenie: if (podmienka)

p1;

else

p2;

if (podmienka) {

p11;

...

p1m

} else {

p21;

...

p2n;

}

Prepis – vetvenie II. neúplné vetvenie:

if (podmienka)

p;

alebo

if (podmienka)

{

p11;

p12;

...

p1m

}

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);

}

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;

}

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

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);

}

Prepis – cykly s podmienkou na začiatku

while (podmienka)

{ prikaz;

}

napr.

... while (i<10)

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

}...

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)

Objemy a obsahy

Vypočítajte povrch a objem hranola.

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.

Delenie nulou

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

Absolútna hodnota čísla

Zistite absolútnu hodnotu čísla pomocou podmienky.

Faktoriál

Zistite faktoriál pre zadané číslo.

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

pomocou euklidovho algoritmu.

top related