Lahendatud: palindroom

Viimane uuendus: 09/21/2023

Palindroomid on termin, mida kasutatakse erinevates valdkondades, sealhulgas matemaatikas, lingvistikas ja arvutiteaduses, et tähistada numbreid, sõnu, lauseid või jadasid, mis loevad sama taha kui edasi. See peegelsümmeetria põnev omadus pakub põnevaid väljakutseid ja stsenaariume algoritmide kujundamisel ja kodeerimisel.

COBOL (Common Business-Oriented Language) on tööstustasemel programmeerimiskeel, mida on laialdaselt kasutatud äri- ja finantsalase tarkvara arendamiseks alates 1950. aastatest. Üks klassikalisi probleeme, mida COBOLis sageli lahendatakse, on kindlaks teha, kas string on palindroom või mitte.

IDENTIFITSEERIMISJAOTIS.
PROGRAMMI ID. PALINDROME.
ANDMETE JAOTUS.
TÖÖ-LAOOSAK.
01 STRING-1 PIC A(20) VÄÄRTUS 'RADAR'.
01 STRING-2 MÄÄRATAB ÜMBER STRING-1.
01 I PILT 9 KOMP-3 VÄÄRTUS 1.
01 J PILT 9 KOMP-3 VÄÄRTUS 20.
MENETLUSE JAOTUS.
PALINDROME-KONTROLL.
ESITAGE KUNI I > J
KUI JÄRG-1 (I:1) EI = JÄRG-2 (J:1), SIIS
EKRAAN "NOT PALINDROME"
STOP JOOKSU
LÕPP-IF
LISA I-LE 1
LAHETA J-EST 1
LÕPETAMINE.
EKRAAN “PALINDROME”.
STOP JOOKSU.
PROGRAMMI PALINDROME LÕPP.

COBOL-koodi mõistmine

See COBOL-i programm kannab nime PALINDROMES, töötab nii, et võrdleb stringi esimest ja viimast tähemärki ning liigub seejärel sissepoole, võrreldes kõiki teisi vastavaid märgipaare. Kui see kohtab märkide paari, mis ei ühti, järeldab ta, et string ei ole palindroom ja lõpetab programmi. Kui aga kõik võrreldavate märkide paarid ühtivad, järeldab programm, et string on palindroom.

Raamatukogude ja funktsioonide kaasamine

Erinevalt paljudest kaasaegsetest programmeerimiskeeltest ei kasuta COBOL laialdaselt täiendavaid teeke ega spetsiaalseid funktsioone. Selle võimsus tuleneb selle sirgjoonelisest süntaksist ning võimsatest sisseehitatud toimingutest ja käskudest. Sel juhul on põhilised aritmeetilised toimingud (liitmine, lahutamine) ja võrdlusfunktsioonid (IF NOT =) ning tsüklistruktuurid (PERFORM UNTIL) need, mis määratlevad programmi loogika.

Sarnased probleemid

Palindroomi stringide kontrollimisega sarnaseid probleeme on mitu. Pöördarvuprobleemid, anagrammiprobleemid ja palindroomsete numbrite probleemid on sarnased palindroomi stringiprobleemiga.

Kokkuvõtteks võib öelda, et palindroomi probleemide lahendamine COBOLis on intelligentse ahela loomine, mis läbib stringi mõlemast otsast. Kuigi COBOL ei pruugi praeguses arendusmaailmas nii trendikas olla, jääb selle mõju ja kasutusjuhtumid ning loomulikult ka selle võime selliseid ülesandeid töödelda paljudes ettevõtetes tugevaks. Isegi lihtne palindroomi stringiprobleem paljastab selle perfokaartide andmetöötluse ajal sündinud keele ajatu võlu.

Seonduvad postitused: