1. Darba uzdevums
Galvenajā programmā no TEXT faila ievadīt integer masīvu 20 elementi. Izvadīt
ievadīto masīvu uz ekrāna un citā TEXT failā.
Atrast masīva divu mazāko elementu summu. Ja summa pēc moduļa ir lielāka par 10,
izmainīt masīva elementu zīmes un sakārtot masīvu dilstošā secībā.
Procedūras darba zelultātu un modificēto masīvu izvadīt uz ekrāna un TEXT failā.
Masīva apstrādi veikt ar iekšējo procedūru. Risinājumu veikt ar 2 līmeņu programmu.
Paredzēt datu nodošanu caur parametriem un kopējiem (global) mainīgajiem. Datus no
faila drīkst ievadīt tikai vienu reizi. Apakšprogrammas nedrīkst saturēt ievada/izvada
operatorus.
2. Risinājuma ideja
2.1 Kopējā shēma
- galvenā programma sasaista loģisko failu ar failu uz nesēja (magnētiskā diska);
- no diska tiek nolasīts masīva saturs;
- masīva saturs tiek izvadīts uz ekrāna un failā outFile;
- tiek izsaukta procedūra, kurai masīvs tiek nodots pēc vertības un mainīgais divu
mazāko elementu summai tiek nodots pēc adreses. Procedūra nosaka masīva divu
mazāko elementu summu, kas tiek ievietota atgriežamajā mainīgajā. Ja divu
mazāko elementu summa pēc moduļa ir lielāka par 10, tad procedūra izmaina
masīva elementu zīmes un sakārto tos dilstošā secībā. Vadība tiek atgriezta
galvenajai programmai.
- masīva saturs pēc modifikācijas tiek izvadīts failā outFile.
- ja lietotājs pieprasa no faila tiek atkārtoti ievadīts masīva saturs un masīva apstrāde
tiek atkārtota, citādi programma darbu beidz.
2.1 Divu mazāko masīva elementu summas atrašana
- lai noteiktu masīva divu mazāko elementu summu ir mērķtiecīgi masīva elementus
sakārtot dilstošā secībā un summēt pedējus divus elementus sakārtotā masīvā;
- masīvs tiek nodots apakšprogrammai pēc vērtības, lai apakšprogrammā sakārtotu
masīvu, noteiktu divu mazāko elementu summu un izietu no apakšprogrammas,
pēc apakšprogrammas izpildes masīvs nebūs modificēts.…