Az I. 646. feladat (2024. december) |
I. 646. A „Lorem ipsum'' kezdetű szövegek véletlenszerűen egymás mellé helyezett latin szavakból állnak. A kapott mondatok nyelvtanilag nem helyesek, nincs értelmük, leginkább akkor használjuk őket, amikor rövidebb-hosszabb szövegre lenne szükségünk, melynek valójában csak a kinézetét, formázását akarjuk megvizsgálni.
Készítsünk programot, amely az angol nyelv weben előforduló 5000 leggyakoribb szavát felhasználva alkot mondatokat. A program B számú bekezdést hozzon létre, melyek mindegyikében M számú mondat, és egy-egy mondatban legfeljebb S szó szerepeljen.
A szövegben minden mondat végén pont álljon, a 10 szónál hosszabb mondatokban a szavak között egy helyen legyen egy vessző. A mondatok nagybetűvel kezdődjenek, az írásjelek után és a szavak között egy szóköz szerepeljen. Az írásjelek előtt ne legyen szóköz.
A program olvassa be a honlapunkról letölthető eng5000.txt egyszerű szöveges állományt a mondatok elkészítéséhez. Az állományban gyakoriság szerint csökkenő sorrendben szerepelnek a szavak, illetve azok gyakorisága egy bizonyos méretű adathalmazon. A szavak véletlenszerű kiválasztását úgy oldjuk meg, hogy a létrehozott szövegben a szavak gyakoriság szerinti sorrendje közel egyező legyen azok eredeti gyakoriság szerinti sorrendjével.
A program standard bemenetének egyetlen sorában szóközzel elválasztva a bekezdések \(\displaystyle B\) (\(\displaystyle 1\leq B\leq 100\)) száma, az egy bekezdésben szereplő mondatok \(\displaystyle M\) (\(\displaystyle 1\leq M\leq 20\)) száma, illetve az egy mondatban legfeljebb előforduló szavak \(\displaystyle S\) (\(\displaystyle 1\leq S\leq 30\)) száma áll.
A program a standard kimenet \(\displaystyle B\) darab sorában adja meg a létrehozott szöveget.
Példa:
Forrás: https://www.kaggle.com/datasets/rtatman/english-word-frequency/
Letölthető állomány: eng5000.txt
Beküldendő egy tömörített i646.zip állományban a program forráskódja és rövid dokumentációja, amely megadja, hogy a forrásállomány melyik fejlesztői környezetben fordítható.
(10 pont)
A beküldési határidő 2025. január 15-én LEJÁRT.
Statisztika:
Az I. 646. feladat értékelése még nem fejeződött be.
A KöMaL 2024. decemberi informatika feladatai