1 / 11

Sõneülesanne

L13. Sõneülesanne. Aabits(2002), vihikust 12 klass Sõned. Ü lesan ne 3 (Sõnetöötlus) A. Koostada klass, mis sisaldab järgmiste sõnetöötlusülesannete lahendamise meetodeid: … 3.2. Antud on 1) kirje : sõne, milles esineb paare kujul

elu
Download Presentation

Sõneülesanne

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. L13 Sõneülesanne Aabits(2002), vihikust 12 klass Sõned

  2. Ülesanne 3 (Sõnetöötlus) • A. Koostada klass, mis sisaldab järgmiste • sõnetöötlusülesannete lahendamise meetodeid: • … • 3.2. Antud on • 1) kirje: sõne, milles esineb paare kujul • … võtmesõna=võtmeväärtus … • 2) mingi võtmesõna. • Nii võtmesõna kui ka võtmeväärtus on sõned, • mis ei sisalda tühikut ja “=“; võtmesõna ei ole tühi. • Leida antud võtmesõnale vastav võtmeväärtus . • Kuiantud võtmesõna kirjes ei esine, siis on • tulemuseks tühiviit null. • … • B. Koostada järgmise struktuuriga testimisotstarbeline • peaklass:

  3. class … {// Ül3 sõnetöötlusmeetodite testimine static void õpetus(){ SV.vr(“Kasutamine:”); SV.vr(“java … nr s1 [s2 …]”); SV.vr(“ kus nr on ülesande number (1, 2 …”); SV.vr(“ s1, s2, … on antu(d) sõne(d)”); }

  4. public static void main(String[] args){ // rakendada klassi Test_1 meetodit päis() // kui käsurea argumente on vähem kui 1, siis // väljastada õpetus ja naasta (return) // muutujale nr omistada käsurealt saadud number switch(nr){ … case 2: …. // testida ülesannet 2, eelnevalt // kontrollides, kas argumente jätkub; … // kui ei jätku, siis väljastada õpetus ja naasta }//switch } }

  5. Näide Antud on kirje eesnimi=Jaan perekonnanimi=Satikas sünniaasta=1943 Kui võtmesõnana on antud sünniaasta, siis on tulemuseks 1943 Kui võtmesõnana on antud eesnimi, siis on tulemuseks Jaan Kui võtmesõnana on antud sünnipäev, siis on tulemuseksnull

  6. Lahendus • Kirjalik osa paberil • Ülesandele 3A vastavalt koostan klassi nimega • Sonemeetodid. • Sellesse klassi kirjutan järgmiste nimedega meetodid: • ülesandele 3.1 vastavalt meetodi nimega ….. , • ülesandele 3.2 vastavalt meetodi nimega võtmeväärtus, • … • Ülesandele 3B vastavalt koostan klassi nimega • Test_Sonemeetodidantud peaklassi näite järgi.

  7. Klassi Sonemeetodid meetodite kirjeldused … static String võtmeväärtus(String k, String v){ // Antud: kirje sõnena k ja võtmesõna sõnena v // Tulemus: tagastatakse võtmesõnale v vastav // võtmeväärtus kirjest k; // kui k ei sisalda võtmesõna v, // siis tagastatakse tühiviit null // Eeldus: antud kirjes on paarid võtmesõna=võtmeväärtus // eraldatud üksteisest vähemalt ühe tühikuga; // tühikut ei esine paaris võtmesõna=võtmeväärtus; // kirje alguses ega lõpus ei pruugi tühikuid olla; // võtmesõna esineb kirjes ülimalt üks kord } … …

  8. Klassi Sonemeetodid salvestan faili nimega Sonemeetodid.java Klassi Test_Sonemeetodid salvestan faili nimega Test_Sonemeetodid.java II. Arvutil

  9. class Test_Sonemeetodid {// Ül3 sõnetöötlusmeetodite testimine static void õpetus(){ SV.vr("Kasutamine:"); SV.vr("java … nr s1 [s2 …]"); SV.vr(" kus nr on ülesande number (1, 2 …"); SV.vr(" s1, s2, … on antu(d) sõne(d)"); } public static void main(String[] args){ Test_1.päis(); if(args.length < 1){õpetus(); return;} int nr = Integer.parseInt(args[0]); switch(nr){ … case 2: if(args.length != 3){ SV.vr ("Ülesande 2 korral peab andma 3 argumenti: \n 2 kirje võti "); õpetus(); return; }

  10. String v = args[2]; String vv = Sonemeetodid.võtmeväärtus(args[1], v); if(vv != null) SV.vr("Võtme " + v + "väärtus on " + vv + "."); else SV.vr("Võtit" + v + "ei ole."); break; … default: SV.vr(nr + ": ülesande number vale!"); õpetus(); }//switch } }

  11. class Sonemeetodid{ . . . static String võtmeväärtus(String k, String v){ // Täiendav eeldus: // võtmesõna ei esine ühegi teise võtmesõna lõpus int i = k.indexOf(v + "="); if(i == -1) return null; // võtmesõna v ei esine String s = k.substring(i); // s algab võtmesõnaga v int j = s.indexOf(" "); if(j == -1) j = s.length(); // kui väärtus on päris lõpus return s.substring(v.length()+1, j); } . . . }

More Related