Sissejuhatus Programmi ja algoritmi miste Java programmi struktuur

  • Slides: 24
Download presentation
Sissejuhatus. Programmi ja algoritmi mõiste. Java programmi struktuur Programmeerimine MTAT. 03. 100 1. loeng

Sissejuhatus. Programmi ja algoritmi mõiste. Java programmi struktuur Programmeerimine MTAT. 03. 100 1. loeng

 • Loengud – Helle Hein • Helle. Hein@ut. ee – Eno Tõnisson •

• Loengud – Helle Hein • Helle. Hein@ut. ee – Eno Tõnisson • Eno. Tonisson@ut. ee

Kursuse põhieesmärgid • Üliõpilane oskab kasutada programmeerimise baaskonstruktsioone (nt. hargnemine, tsükkel, alamprogramm). • Üliõpilane

Kursuse põhieesmärgid • Üliõpilane oskab kasutada programmeerimise baaskonstruktsioone (nt. hargnemine, tsükkel, alamprogramm). • Üliõpilane oskab kasutada põhilisi andmestruktuure (nt. massiivid). • Üliõpilane saab hakkama lihtsamate praktikas vajalike ülesannete lahendamisega (nt. oskab failist andmeid lugeda, neid andmeid töödelda, tulemusi faili salvestada ja ekraanil esitada). • Üliõpilasel on piisav ettevalmistus teiste programmeerimiskeelte õppimiseks.

Korraldus • MTAT. 03. 100. 4 ainepunkti. Eksam. – – Loeng (16 tundi) Tahvlipraktikum

Korraldus • MTAT. 03. 100. 4 ainepunkti. Eksam. – – Loeng (16 tundi) Tahvlipraktikum (32 tundi) Arvutipraktikum (32 tundi) Iseseisev töö (80 tundi) – Eksamitööle pääsemiseks tuleb • arvutipraktikumis saada arvestatud nõutud kodutööd ja 2 kontrolltööd • sooritada tahvlipraktikumi kontrolltöö (üle 50%) – Kursus põhineb programmeerimiskeelel Java

Materjalid • Praktikumimaterjalid Web. CT-s • Loenguslaidid • Raamatud, veebimaterjalid – – J. Kiho.

Materjalid • Praktikumimaterjalid Web. CT-s • Loenguslaidid • Raamatud, veebimaterjalid – – J. Kiho. Java programmeerimise aabits. TÜ, 2002 J. Kiho. Väike Java leksikon. TÜ, 2002 I. Meho jt. Programmeerimise praktikumid. TÜ, 2003 Ilmumas Programmeerimise eksamiülesannete kogu

Täna loengus • • • Algoritm ja programm Lähtetekstist lahendamiseni Programmeerimiskeel Java-programmi üldine struktuur

Täna loengus • • • Algoritm ja programm Lähtetekstist lahendamiseni Programmeerimiskeel Java-programmi üldine struktuur Näiteprogramm

Algoritm • algoritm mat, info lahenduseeskiri. ◊ Ruutjuure leidmise algoritm. (www. keelevara. ee ÕS

Algoritm • algoritm mat, info lahenduseeskiri. ◊ Ruutjuure leidmise algoritm. (www. keelevara. ee ÕS 1999) • algoritm Üksikasjalik eeskiri mingi ülesande lahendamiseks. Sõna tuleb Iraani matemaatiku Al-Khawarizmi nimest. (www. vallaste. ee)

Ülesanne Algoritm ------- Arvuti Programm ------- Programmeerimiskeel Java Pascal … Kompileerimine Arvutiprogramm Täitmine Veateated

Ülesanne Algoritm ------- Arvuti Programm ------- Programmeerimiskeel Java Pascal … Kompileerimine Arvutiprogramm Täitmine Veateated --------------- Tulemused

Arvuti ja programm Välismälu ja -seadmed Sisemälu Kõvaketas Diskett Programmi masinkood Andmed Failid Kuvar

Arvuti ja programm Välismälu ja -seadmed Sisemälu Kõvaketas Diskett Programmi masinkood Andmed Failid Kuvar Printer Käsk Protsessor Klaviatuur Hiir

Lähtetekstist lahendamiseni Vajalikud vahendid (valmisprogrammid): tekstitoimeti kompilaator Programmi lähtetekst mingis programmeerimiskeeles tipitakse tekstitoimeti abil

Lähtetekstist lahendamiseni Vajalikud vahendid (valmisprogrammid): tekstitoimeti kompilaator Programmi lähtetekst mingis programmeerimiskeeles tipitakse tekstitoimeti abil ja salvestatakse faili, näiteks nimega X. Rakendatakse (käivitatakse) kompilaator, andes ette faili X. Kui kompilaator leidis vigu, siis parandatakse fail X tekstitoimeti abil ja kompileeritakse uuesti. Kui kompilaator ei leidnud vigu, siis on kompileerimise tulemuseks täidetav arvutiprogramm, näiteks failis Y. Rakendatakse (käivitatakse) programm Y.

Programmi teksti sisestamine/muutmine Tekstitoimeti teeb X Programmi lähtetekst (lähtekood) loeb Kompilaator teeb [ Veateated

Programmi teksti sisestamine/muutmine Tekstitoimeti teeb X Programmi lähtetekst (lähtekood) loeb Kompilaator teeb [ Veateated (konsoolil) ] Y Täidetav arvutiprogramm

Programmeerimiskeel Grammatika: reeglistik - mida ja kuidas võib kirjutada. Kompilaator: programm, mis iga sellele

Programmeerimiskeel Grammatika: reeglistik - mida ja kuidas võib kirjutada. Kompilaator: programm, mis iga sellele grammatikale vastava teksti teisendab täidetavaks arvutiprogrammiks. Programmeerimiskeelset teksti (programmi lähteteksti) loevad nii inimene kui ka kompilaator. Täidetav arvutiprogramm võib olla nii masinkoodis kui ka interpreteeritav. Esimesel juhul täidab programmi vahetult arvuti protsessor. Interpreteeritav programm on sisendiks interpretaatorile - masinkoodis programmile, mis ise korraldab sisendilt saadud programmis olevate käskluste täitmise.

Programmeerimiskeel Java Üks populaarsemaid. failinimi. java Kompilaatori nimi: javac Interpretaatori nimi: java Kompilaatori käivitamine:

Programmeerimiskeel Java Üks populaarsemaid. failinimi. java Kompilaatori nimi: javac Interpretaatori nimi: java Kompilaatori käivitamine: javac failinimi. java [veateated] Java lähtetekst loeb class klassinimi{. . . } teeb klassinimi. class Interpretaatori käivitamine: loeb java klassinimi teeb Tulemused ekraanil (konsoolil) [baitkood]

Java-programmi üldine struktuur Põhiüksus: klass (enamasti omaette fail) Java-programm: klasside kogum Klass: väljade ja

Java-programmi üldine struktuur Põhiüksus: klass (enamasti omaette fail) Java-programm: klasside kogum Klass: väljade ja meetodite kogum (ka tühi) Väli: võimalike (meetodiväliste) andmete koht Meetod: mingi (alam)ülesande lahendamise eeskiri Klassi. Nimi väli 1 väli 2. . . meetod 1( ) meetod 2( ). . . class Klassi. Nimi{ int väli 1; double väli 2; . . . double meetod 1(int x){. . . }//meetod 1. . . 14 }//Klassi. Nimi

Lihtne Java-programm class Proov 1{ // peameetod: public static void main(String[] args){ System. out.

Lihtne Java-programm class Proov 1{ // peameetod: public static void main(String[] args){ System. out. println("Proov 1: algus ====="); System. out. println("Proov 1: valmis. ====="); } } Looksulud paaris!!!

Lihtne Java-programm class Proov 1{ // peameetod: public static void main(String[] args){ System. out.

Lihtne Java-programm class Proov 1{ // peameetod: public static void main(String[] args){ System. out. println("Proov 1: algus ====="); System. out. println("Proov 1: valmis. ====="); } } peameetodi sisu e. keha peameetod klass (tekst failist nimega Proov 1. java)

Lihtne Java-programm Kompileerida fail Proov 1. javac Proov 1. java Käivitada Proov 1. class

Lihtne Java-programm Kompileerida fail Proov 1. javac Proov 1. java Käivitada Proov 1. class java Proov 1 Tulemused Proov 1: algus ===== Proov 1: valmis. ===== Täpsemalt: käivitada peameetod (main) failist Proov 1. class

Peaklass - klass, mis sisaldab peameetodit. Peameetod -meetod nimega main. public static void main(String[

Peaklass - klass, mis sisaldab peameetodit. Peameetod -meetod nimega main. public static void main(String[ ] arg) {. . . } Sellest algab Java-programmi täitmine: nt. käsurealt antava käskluse java Proov korral käivitatakse meetod main( ) klassist Proov. Kui klassis Proov pole peameetodit, siis on tegemist veaga (Exception in thread “main” java. lang. No. Such. Method. Error: main).

Muutuja • Muutuja – teatavat tüüpi väärtuste jaoks ettenähtud mäluväli • muutujale saab omistada

Muutuja • Muutuja – teatavat tüüpi väärtuste jaoks ettenähtud mäluväli • muutujale saab omistada väärtust ning seda väärtust kasutada avaldise arvutamisel • muutujale viidatakse tema nime abil

Täisarvuline muutuja. Kirjeldamine • teatavat tüüpi väärtused – nt. täisarvud • • byte short

Täisarvuline muutuja. Kirjeldamine • teatavat tüüpi väärtused – nt. täisarvud • • byte short int long 8 bitti -128 127 16 bitti -32768 32767 32 bitti -2147483648 2147483647 64 bitti • muutujakirjeldus reserveerib koha antud tüüpi ja antud nimega muutujale (ja salvestab antud kohale antud tüübi vaike-algväärtuse) int a; int a, b, autode. Arv;

Omistamine • a = 12; • b = a + 10; • Kirjeldamine ja

Omistamine • a = 12; • b = a + 10; • Kirjeldamine ja omistamine koos int koht = 8;

Täisarvuline avaldis • • • liitmine + lahutamine korrutamine * jagamine / jäägi leidmine

Täisarvuline avaldis • • • liitmine + lahutamine korrutamine * jagamine / jäägi leidmine %

Tehete järjekord 1. unaarne + unaarne – 2. * (korrutamine), / (jagamine), % (jääk)

Tehete järjekord 1. unaarne + unaarne – 2. * (korrutamine), / (jagamine), % (jääk) 3. + (liitmine), - (lahutamine), + (sõnede sidurdamine) 4. = omistamine • saab sulgudega muuta

Erinevaid viise programmidele juurdepääsuks • • cmd Notepad H:  Putty SSH pico eno@math:

Erinevaid viise programmidele juurdepääsuks • • cmd Notepad H: Putty SSH pico eno@math: ~> JCreator …