1
0
oop-2-labs/report.toml

171 lines
7.6 KiB
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

title = "Objektinis programavimas 2 (P175B123)"
student = { name = "Studento Roko Puzono IF-1/1", gender = "male" }
lecturer = { name = "lekt. Simonavičius Kęstutis", gender = "male" }
[[sections]]
title = "Rekursija (L1)"
project = "L1/LD_24"
interface_scheme = "L1/LD_24/interface-scheme.png"
guide = """
* Atsidarius programą matysite vieną lygtuką
* Paspaudus mygtuką geriausia susitiko vieta bus surasta arba bus parašyta,
kad neįmanoma susitiki.
"""
problem = """
LD_24. Susitikimas.
Grupė draugų nusprendė susitikti mieste, o po to kartu eiti valgyti picos. Bet
tuomet jie susiginčijo, kur geriausia susitikti, ir kurioje picerijoje valgyti.
Galiausiai draugai nusprendė, jog patogiausia išsirinkti tokią susitikimo vietą
ir piceriją, kad jų nueitų kelių iki susitikimo vietos, po to iki picerijos ir
atgal į pradinius taškus suma būtų mažiausia. Parašykite programą, kuri rastų
patogiausią susitikimo vietą ir piceriją. Duomenys. Pirmoje „U3.txt“ eilutėje
duoti du skaičiai n ir m — miesto žemėlapio aukštis ir plotis (2 ≤ n, m ≤ 10).
Toliau pateiktas miesto žemėlapis — n eilučių, kiekvienoje jų m simbolių.
Galimi šie simboliai:
. — langelis pereinamas.
X — langelis nepereinamas (pastatas, tvora...)
P — picerija. Langelis nepereinamas, į piceriją galima įeiti iš gretimo
langelio ir išeiti į bet kurį gretimą langelį. Įeiti galima tik į tą piceriją,
kurioje bus valgoma pica.
S — susitikimo vieta. Langelis pereinamas.
D — vieno iš draugų pradinė buvimo vieta. Langelis pereinamas.
Judėti galima tik aukštyn, žemyn, į kairę arba į dešinę (ne įstrižai).
Rezultatai. Atskirose eilutėse atspausdinkite pradines draugų koordinates
(koordinačių pradžia apatinis kairysis langelis, numeruojama nuo 1,
pirmiausiai nurodoma x koordinatė, po to - y). Atskirose eilutėse
atspausdinkite: „Susitikimo vieta“ ir susitikimo vietos koordinates; „Picerija“
ir picerijos koordinates; „Nueita“ ir draugų nueitų kelių sumą. Jei susitikimo
vietos ar picerijos, kurias visi draugai galėtų pasiekti, nėra, atspausdinkite
žodį „Neįmanoma“.
"""
[[sections]]
title = "Dinaminis atminties valdymas (L2)"
project = "L2/LD_24"
interface_scheme = "L2/LD_24/interface-scheme.png"
guide = """
* Atsidaryti tinklalapį
* Įvesti n ir k (n - minimalus vienetų kiekis, k - maksimali vieneto kaina)
* Spausti "Atrinkti" mygtuką
"""
problem = """
LD_24. Detalės.
Internetinėje parduotuvėje pirkėjai užsisakinėja robotų gamybai reikalingus
įtaisus. Suraskite populiariausią įtaisą, kiek tokių įtaisų parduota ir už
kokią sumą. Sudarykite tik vienos rūšies įtaisus pirkusių pirkėjų sąrašą,
nupirktų įtaisų skaičių ir už juos sumokėtų pinigų sumą. Sąrašas turi būti
surikiuotas pagal nupirktų įtaisų skaičių didėjimo tvarka, pirkėjų pavardes bei
vardus abėcėlės tvarka.
Duomenys:
• tekstiniame faile U24a.txt yra informacija apie parduotuvėje parduodamus
įtaisus: įtaiso kodas, įtaiso pavadinimas, įtaiso kaina;
• tekstiniame faile U24b.txt yra informacija apie pirkėjus: pirkėjo pavardė,
vardas, pirkto įtaiso kodas, pirktų įtaisų kiekis.
Į kitą rinkinį atrinkite įtaisus (įtaiso kodas, įtaiso pavadinimas, įtaiso
kaina), kurių parduota ne mažiau kaip n vienetų ir kurių vieneto kaina ne
didesnė kaip k eurų (n ir k įvedami klaviatūra).
"""
[[sections]]
title = "Bendrinės klasės ir testavimas (L3)"
project = "L3/LD_24"
tests_project = "L3/LD_24Tests"
interface_scheme = "L3/LD_24/interface-scheme.png"
guide = """
* Atsidaryti tinklalapį
* Pasirenki pradinius duomenų failus
* Įvesti n ir k (n - minimalus vienetų kiekis, k - maksimali vieneto kaina)
* Spausti "Atrinkti" mygtuką
"""
lecturers_comment = """
Dictionary yra palikti kode, kad būtų galima leingviau grupuoti elementus pagal
kažkokį raktą.
"""
tests_screenshots = [
"L3/LD_24Tests/screenshot1.PNG",
"L3/LD_24Tests/screenshot2.PNG",
"L3/LD_24Tests/screenshot3.PNG"
]
problem = """
LD_24. Detalės.
Internetinėje parduotuvėje pirkėjai užsisakinėja robotų gamybai reikalingus
įtaisus. Suraskite populiariausią įtaisą, kiek tokių įtaisų parduota ir už
kokią sumą. Sudarykite tik vienos rūšies įtaisus pirkusių pirkėjų sąrašą,
nupirktų įtaisų skaičių ir už juos sumokėtų pinigų sumą. Sąrašas turi būti
surikiuotas pagal nupirktų įtaisų skaičių didėjimo tvarka, pirkėjų pavardes bei
vardus abėcėlės tvarka.
Duomenys:
• tekstiniame faile U24a.txt yra informacija apie parduotuvėje parduodamus
įtaisus: įtaiso kodas, įtaiso pavadinimas, įtaiso kaina;
• tekstiniame faile U24b.txt yra informacija apie pirkėjus: pirkėjo pavardė,
vardas, pirkto įtaiso kodas, pirktų įtaisų kiekis.
Į kitą rinkinį atrinkite įtaisus (įtaiso kodas, įtaiso pavadinimas, įtaiso
kaina), kurių parduota ne mažiau kaip n vienetų ir kurių vieneto kaina ne
didesnė kaip k eurų (n ir k įvedami klaviatūra).
"""
[[sections]]
title = "Polimorfizmas ir išimčių valdymas (L4)"
project = "L4/LD_24"
tests_project = "L4/LD_24Tests"
interface_scheme = "L4/LD_24/interface-scheme.png"
guide = """
* Atsidaryti tinklalapį
* Įvesti minimalus herojaus intelekto kiekį
* Įvesti maksimalus NPC žalos kiekį
* Spausti "Vykdyti" mygtuką
"""
tests_screenshots = [
"L4/LD_24Tests/screenshot1.png"
]
problem = """
U4_24. Kompiuterinis žaidimas.
Žaidimo pasaulyje yra dviejų tipų veikėjai - žaidėjo valdomi herojai bei
kompiuterio valdomi „NPC“ (non playable character). Sugrupavote žaidimo veikėjus pagal rases, ir surašėte
jų duomenis į skirtingus failus. Duomenų formatas toks: pirmoje eilutėje rasės pavadinimas. Antroje
pradinis miestas. Toliau informacija apie žaidimo veikėjus. Sukurkite abstrakčią klasę „Actor“ (savybės -
vardas, klasė, gyvybės taškai, mana, žalos taškai, gynybos taškai), kurią paveldės klasės “Hero” (savybės
jėga, vikrumas, intelektas, ypatinga galia), “NPC” (savybė gildija).
* Raskite kiekvienos klasės daugiausiai gyvybės taškų turintį veikėją, ekrane atspausdinkite jo vardą,
rasę, klasę ir gyvybės taškų kiekį.
* Sudarykite visų veikėjų klasių sąrašą ir įrašykite į failą „Klasės.csv“ .
* Norite, jog kiekviena rasė turėtų bent po vieną kiekvienos klasės herojų ir NPC. Raskite, kokių
klasių herojų ar NPC „trūksta“ kiekvienai rasei. Į failą „Trūkstami.csv“ įrašykite kiekvienos rasės
pavadinimą, trūkstamų herojų klasių sąrašą, trūkstamų NPC klasių sąrašą.
* Sudarykite ir surikiuokite bendrą veikėjų rinktinę. Į šią rinktinę patenka herojai, jei jų intelekto
reikšmė viršija nurodytą dydį. Į šią rinktinę patenka NPC, jei jų žalos taškai neviršija nurodyto
dydžio. Herojus rikiuokite pagal intelektą, o NPC pagal žalos taškus. Rezultatus įrašykite į failą
„Rinktine.csv“.
"""
[[sections]]
title = "Deklaratyvusis programavimas (L5)"
problem = """
LDD_24. Leidėjai.
Žmonės užsisako spaudą. Užsakymas vyksta metų ribose. Pirmoje failo eilutėje
nurodyta įvedimo data (failų daug), o tolesnėse eilutėse nurodyta prenumeratoriaus pavardė, adresas,
laikotarpio pradžia (nurodyta sveiku skaičiumi 1..12), laikotarpio ilgis, leidinio kodas, leidinių kiekis.
Atskirame faile duota tokia informacija apie leidinius: kodas, pavadinimas, leidėjo pavadinimas, vieno
mėnesio kaina. Suskaičiuoti kiekvienam leidėjui nurodyto mėnesio (įvedama klaviatūra) pajamas.
Atspausdinkite leidėjų pajamas, surikiuotas pagal dydį ir leidėjų pavadinimus, nurodant ir leidėjų
leidinius su jų atneštomis pajamomis. Leidėjų pavadinimai neturi kartotis.
"""