Programozó versenyek

Magas szintű programozási nyelvek 2, 2014. november 10., H14 ZH

2014. november 10. 14:05 – 2014. november 10. 15:45

Gyümölcsszezon

  1. Hozzon létre egy forrásállományt Teszt.java néven, és definiálja benne az alábbi UML ábrán látható három osztályt! A három osztályból a Teszt osztály legyen publikus, a másik kettő pedig csomag-láthatóságú!

  2. Írja meg a Növény osztály konstruktorát úgy, hogy az a paramétereként megkapott két értéket az osztály két mezőjéhez rendelje hozzá!
  3. Írja meg a Növény osztály toString() metódusát úgy, hogy az a következő formában adja vissza az objektumok sztring reprezentációját: „<név> (<tömeg> kg)”, például: „zeller (0.518 kg)” vagy „petrezselyem (0.112 kg)”.
  4. Implementálja a Növény osztályban a Comparable<Növény> generikus interfészt oly módon, hogy az aktuális példány tömegét a paraméterként megkapott növény példány tömegével hasonlítsa össze nagyság szerint növekvő rendezettséget feltételezve! Ha a növények tömege megegyezne, a hasonlítást a növénynevek alapján folytassa, ábécérendbe állítva a vizsgált objektumokat!
  5. Írja meg a Gyümölcs osztály konstruktorát úgy, hogy az a paraméterként megkapott értékeket az osztály saját és örökölt mezőihez rendelje hozzá!
  6. Írja meg a Gyümölcs osztály toString() metódusát úgy, hogy az a következő formában adja vissza az objektumok sztring reprezentációját: „<név> (<tömeg> kg): [nem ]csonthéjas”, például: „alma (0.335 kg): nem csonthéjas” vagy „őszibarack (0.42 kg): csonthéjas”.
  7. Írja meg a Teszt osztály main() metódusát úgy, hogy az képes legyen a standard bemenetről a példa bemenetben megadott formában adatokat beolvasni, azokat rendezni, majd a rendezett adatokat megjeleníteni a standard kimeneten! A bemenet első sora a feldolgozandó elemek darabszámát tartalmazza. A további sorok alakja a következő:

    {N|G};név;tömeg[;{+|–}]

    Ha a sor első karaktere „N” betű, akkor egy növény, ha „G”, akkor egy gyümölcs leírása szerepel a sorban. A név és a tömeg a növény neve és tömege. Gyümölcsök esetén a sor utolsó karaktere árulja el, hogy a gyümölcs csonthéjas-e: „+” karakter esetén az, „–” karakter esetén nem.

Példa bemenet

  1. 5
  2. N;zeller;0.518
  3. G;görögdinnye;4.5;-
  4. N;petrezselyem;0.112
  5. G;őszibarack;0.42;+
  6. G;alma;0.335;-
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. petrezselyem (0.112 kg)
  2. alma (0.335 kg): nem csonthéjas
  3. őszibarack (0.42 kg): csonthéjas
  4. zeller (0.518 kg)
  5. görögdinnye (4.5 kg): nem csonthéjas
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.