PPT

pr1j_04_programovaci_jazyk.ppt

Formát
PPT
Veľkosť
397 kB
Pridané
Stiahnutí
1 819
Hodnotenie
3,0/5
Stiahnuť PPT · 397 kB

Preber si túto poznámku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto poznámky.

Otvoriť AI: ChatGPT · Claude · Gemini

Náhľad poznámky

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 programu

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

}
}

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

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

}
}

 zložené zátvorky určujú začiatok a koniec bloku, v našom

prípade celého programu (classu)

Popis programu

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

}
}

 komentáre používateľa text medzi začiatkom a

koncom kompilátor ignoruje

začiatok komentára /*

koniec komentára */

Popis programu

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

}
}

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

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

}
}

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

Popis programu

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

}
}

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

{

prikaz

1;

prikaz

2;

...
prikaz

n;

};

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

vetvenie:

if (podmienka)

p1;
else

p2;

if (podmienka) {

p

11;

...
p

1m

} else {

p

21;

...

p

2n;

}

Prepis – vetvenie II.

 neúplné vetvenie:

if (podmienka)
p;

alebo

if (podmienka)

{

p

11;

p

12;

...
p

1m

}

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.

NSD

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

pomocou euklidovho algoritmu.

Document Outline


Automaticky vygenerovaný textový náhľad. Pre plné formátovanie si stiahnite súbor.