120 likes | 344 Views
Loenguplaan. L6. Peamiselt kordamine lihtsate eksamiülesannete näiteid eksamitööde kontrollimise programm (uus mõiste – lülitidirektiiv). EKSAMIÜLESANDED. P R O O V. Ülesanne 1 K irjutage programm ( pea klass ) Test _1 ümber selliselt, et
E N D
Loenguplaan L6 • Peamiselt kordamine • lihtsate eksamiülesannete näiteid • eksamitööde kontrollimise programm • (uus mõiste – lülitidirektiiv)
EKSAMIÜLESANDED P R O O V Ülesanne 1 Kirjutage programm (peaklass) Test_1ümber selliselt, et väljastatavas infos oleksid autori andmete kohal Teie ees- ja perekonnanimi ning Teie matriklinumber, ja eksami kuupäevaks tänane kuupäev. Väljastatava info vormingut muus osas mitte muuta! Eesnimes ja perekonnanimes asendage täpitähed vastavate täppideta tähtedega (nt Õie Känd Oie Kand).
class Test_1{ public static void main(String[] args){ päis(); }//main static void päis(){ String joon = "========================"; System.out.println(joon + joon); System.out.print( "\t \t Programmeerimine."); System.out.println(" MTAT.03.100"); System.out.println("\t\t\t\tEksam 11.10.2003"); System.out.print("Autor: Ulli Opilane ("); System.out.println("A999999)"); System.out.println(joon + joon); System.out.println(); }//päis }//Test_1
Järgnevates programmides (Test_2, Test_3, ...) peab peameetodis esimeseks tegevuseks olema Teie poolt muudetud klassi Test_1 meetodi päis() rakendamine. Kui programm saab algandmed käsurealt, siis peab peaklass sisaldama ka kasutusjuhendit väljastavat meetodit ja selle tingimuslikku rakendamist (vales formaadis algandmete korral).
Ülesanne 2 Koostada programm (peaklassinaTest_2), mille korralkäsureal antud andmeteks on ühe inimese konkreetne mass ja pikkus ning mis väljastab tulemuse kujul: Mass = ... Pikkus = ... ---------------------- Kehamassi indeks = ... Kehamassi indeksi arvutamine esitada eraldi täisarvulise mee- todina. Seda meetodit rakendab peameetod parajasti üks kord.
Ülesanne 3 • Koostada klass (vabalt valitud nimega), mis sisaldab järgmiste ülesannete lahendamise meetodid: • 3.1. Antud: täisarvud min,max(min <max). • Tulemus: täisarvujärjend min, min+1, ..., max. • 3.2. Antud: täisarvujärjend. • Tulemus: antud järjendi elementide väärtused väljastatud • konsoolile ühte ritta, komaga eraldatult. • 3.3. Antud: täisarvujärjend. • Tulemus: tagastatakse antud järjendi negatiivsete • elementide summa. • B.Koostada peaklass (Test_3) ülalloetletud meetodite • testimiseks, kusjuures andmed antakse käsurealt.
Eksamitöö ärasaatmine Pakkige üheks zip-failiks kõik käesoleva eksami käigus Teie poolt koostatud java- ning class-failid ja saatke see zip-fail kontrollijale . . .
Eksamitöö Kontrollimine Test_1 main( ) . . . EksamiKontroll main( ) õpetus( ) esimeseta( ) Test_2 main( ) . . . . . .
class EksamiKontroll{ public static void main(String[] args){ // args[0] on ülesande number, //args[1], args[2], . . . on selle ülesande algandmed if(args.length == 0{ õpetus(); return; }//if int nr = Integer.parseInt(args[0]); String[] andmed = esimeseta(args); Näiteks args:“2“ “3.5“ “-17.9“ Meetodi esimeseta( ) rakendamise tulemus andmed: “3.5“ “-17.9“
switch(nr){ case1: Test_1.main(andmed); break; case 2: Test_2.main(andmed); break; case 3: Test_3.main(andmed); break; }//switch }//main [Aabits, vihik 4, lk 16]
static void õpetus(){ System.out.println("Kasutamine: "); System.out.println ("java EksamKontroll nr [a] "); System.out.println (" nr: eksamiylesande number"); System.out.println (" a: algandmed selle yl. jaoks"); }//õpetus
static String[] esimeseta(String[] a){ // Antud: sõnejärjend a[0], a[1], ... // Tulemus: sõnejärjend, mis on saadud // järjendist a, selle esimese // elemendi ärajätmise teel // NB! a elemente ei kopeerita! String[] b = new String[a.length-1]; for(int i = 1; i < a.length; i++){ b[i-1] = a[i]; } return b; }//esimeseta }//EksamiKontroll