|
||||||||||||||||||||||||||
Ismétlődő számjegyekAz 1/33 tört tizedes tört alakja 0.03, ahol a 03 azt jelöli, hogy a 03 ciklus végtelenszer ismétlődik közbeékelt számjegyek nélkül. Valójában minden racionális szám (tört) tizedes tört alakjában van egy ismétlődő ciklus, ellentétben az irracionális számok tizedes tört alakjával, amelyekben nincs ilyen. Az alábbi táblázatban példák láthatók egy-egy racionális szám tizedes tört alakjára és az ismétlődő ciklusára. A ciklus fölé elhelyezett vízszintes vonal helyett itt zárójelbe tesszük az ismétlődő ciklust.
Írj egy programot, amely törtek számlálóit és nevezőit olvassa be, majd meghatározza az ismétlődő ciklusaikat! Ebben a feladatban egy tört ismétlődő ciklusát úgy definiáljuk, hogy az az első olyan minimális hosszúságú számjegysorozat a tizedesponttól jobbra, amely végtelenszer ismétlődik közbeékelt számjegyek nélkül. Így például az 1/250 tört ismétlődő ciklusa a 0, amely a 4. pozíción kezdődik (nem pedig az a 0, amelyik az 1. vagy a 2. pozíción kezdődik, sem pedig a 00, amely az 1. vagy a 4. pozíción kezdődik). A bemenet specifikációjaA bemenet minden sora egy nemnegatív egész számlálóból és egy pozitív egész nevezőből áll. Egyik egész szám sem haladja meg a 3000-et. A bemenet végét a fájlvégjel (EOF) jelzi. A kimenet specifikációjaA bemenet minden sorára a kimenetre kell írni a törtet, annak a tizedes tört alakját a tizedesponttól jobbra a ciklus első előfordulásáig vagy 50 tizedesjegyig (amelyik hamarabb előfordul), a következő sorban a teljes ismétlődő ciklus hosszát, végül egy üres sort. Lásd a példa kimenetet a pontos formátumért!
A tizedes tört felírásánál tedd zárójelbe az ismétlődő ciklust, amennyiben lehetséges! Ha a
teljes ismétlődő ciklus nem fér el az első 50 tizedesjegyben, tedd ki a nyitó zárójelet a
ciklus kezdeténél – amely az első 50 tizedesjegyen belül lesz –, és írd ki a
„ Példa bemenet
A példa bemenethez tartozó kimenet
|
||||||||||||||||||||||||||
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30. |