ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массива ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ запросы ΠΏΠΎ Π·Π°Π΄Π°Π½ΠΈΡŽ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹. ШСстой ΠΏΡƒΠ½ΠΊΡ‚ мСню «ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ elem модуля ELEMZAM, которая позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ любоС ΠΏΠΎΠ»Π΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ элСмСнта. БСдьмой ΠΏΡƒΠ½ΠΊΡ‚ мСню «Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ sort модуля SORTING сортируСт записи… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массива ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²ΠΎ образования РСспублики Π‘Π΅Π»Π°Ρ€ΡƒΡΡŒ Π£Ρ‡Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ образования

«Π“ΠΎΠΌΠ΅Π»ΡŒΡΠΊΠΈΠΉ государствСнный унивСрситСт ΠΈΠΌΠ΅Π½ΠΈ Ѐранциска Π‘ΠΊΠΎΡ€ΠΈΠ½Ρ‹»

ЀизичСский Ρ„Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚ ΠšΠ°Ρ„Π΅Π΄Ρ€Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠšΡƒΡ€ΡΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠžΡΠ½ΠΎΠ²Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° массива ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π˜ΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ ΠŸΠΎΠ»ΠΈΡ†Ρ‹Π½Π° О.А.

Π ΡƒΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ Π”Ρ€ΠΎΠ±Ρ‹ΡˆΠ΅Π²ΡΠΊΠΈΠΉ Π’.А.

Π“ΠΎΠΌΠ΅Π»ΡŒ 2013

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

1. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ комплСкса

1.1 Главная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° MAINPRO

1.2 ΠœΠΎΠ΄ΡƒΠ»ΡŒ мСню MYMENU

1.3 ΠœΠΎΠ΄ΡƒΠ»ΡŒ описания основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… TYPES

1.4 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Скстового Ρ„Π°ΠΉΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ² записСй OPEN

1.5 ΠœΠΎΠ΄ΡƒΠ»ΡŒ просмотр всСх элСмСнтов массива SHOW

1.6 ΠœΠΎΠ΄ΡƒΠ»ΡŒ добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

1.7 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ» WRITING

1.8 ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ELEMZAM

1.9 ΠœΠΎΠ΄ΡƒΠ»ΡŒ сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

1.10 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π·Π°ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ZAMENA

2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅

2.1 Запуск Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ MAINPRO

2.2 Запуск модуля просмотра всСх элСмСнтов массива SHOW

2.3 Запуск модуля добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

2.4 Запуск модуля Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ» WRITING

2.5 Запуск модуля ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ELEMZAM

2.6 Запуск модуля сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

2.7 Запуск модуля Π·Π°ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ZAMENA

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ А

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Основной Ρ†Π΅Π»ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ курсового ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° являСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ комплСкса ΠΏΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ мноТСства Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ курсовым ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ создана ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая создаСт Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ. Набор Π΄Π°Π½Π½Ρ‹Ρ… прСдставляСт собой массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ внСсСн Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ константы Ρ‚ΠΈΠΏΠ° запись ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π½Π° Π²Π½Π΅ΡˆΠ½Π΅ΠΌ носитСлС.

Π—Π°ΠΏΠΈΡΡŒ (ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ) — составной Ρ‚ΠΈΠΏ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слуТит для прСдставлСния совокупности Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Записи Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ массивы: ΠΎΠ½ΠΈ составлСны ΠΈΠ· Ρ€ΡΠ΄Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ Ссли ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ массива Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ, записи ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ссылочный Ρ‚ΠΈΠΏ ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ. Π’ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ссылочного Ρ‚ΠΈΠΏΠ° хранится ссылка Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (адрСс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°). Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΡΠΎΡΡ‚ояниях: ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ адрСс ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΡƒΠΆΠ΅ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π°; ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ пустой адрСс Nil.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… описана ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° — ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая вызываСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΠΎΡΠ»Π΅ своСго выполнСния Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Из Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ пСрСдаСтся список Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠœΠ΅ΠΆΠ΄Ρƒ списками Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Ρ„актичСских ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны соотвСтствия ΠΏΠΎ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Ρƒ, порядку слСдования ΠΈ ΠΏΠΎ Ρ‚ΠΈΠΏΡƒ.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ — ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ хранимая ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ компилируСмая Π΅Π΄ΠΈΠ½ΠΈΡ†Π°. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ собой ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… рСсурсов, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для использования Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ модулями ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ.

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ Π΄Π°Π½Π½Ρ‹Ρ… — Π³Ρ€ΡƒΠΏΠΏΡ‹ Π² Π΄Π΅Ρ‚ском саду.

ΡˆΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹ (string);

количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ (integer);

фамилия воспитатСля (string);

ΠŸΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ запросов выполняСмых Π² Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ комплСксС:

1) Π²Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Скстового Ρ„Π°ΠΉΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ² записСй;

2) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива;

3) просмотр всСх элСмСнтов массива;

4) Π²Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ»;

5) ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта (ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡƒ);

6) сортировка массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю;

7) Π·Π°ΠΌΠ΅Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта;

1. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ комплСкса

1.1 Главная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° MAINPRO

Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° являСтся основной. Она Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ всС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ запросов. Π’ Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ vvod модуля OPEN массив заполняСтся Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° NABOR.DAT. Выводится Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ элСмСнт Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π°Π»ΡŒΡˆΠ΅ создаСтся мСню для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π·Π°ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню, ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° vertmenu модуля MYMENU, которая Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ мСню Π½Π° ΡΠΊΡ€Π°Π½. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню вызываСтся ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ модуля ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅Ρ‚ся запрос. Π’ ΠΌΠ΅Π½ΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Π½Π°Ρ‡Π°Π»Π΅ ΠΈΠ΄ΡƒΡ‚ основныС ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню, Π° Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅. ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ дСтский mainpro

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ комплСкса. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню «ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ showw модуля SHOW, которая Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ массива Π½Π° ΡΠΊΡ€Π°Π½ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ†» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ dob модуля ADD, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ½Π΅Ρ† массива. Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚ «Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ writingg модуля WRITING, которая записываСт Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ».

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ запросы ΠΏΠΎ Π·Π°Π΄Π°Π½ΠΈΡŽ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹. ШСстой ΠΏΡƒΠ½ΠΊΡ‚ мСню «ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ elem модуля ELEMZAM, которая позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ любоС ΠΏΠΎΠ»Π΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ элСмСнта. БСдьмой ΠΏΡƒΠ½ΠΊΡ‚ мСню «Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ sort модуля SORTING сортируСт записи массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю. И ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ восьмой ΠΏΡƒΠ½ΠΊΡ‚ мСню «Π—Π°ΠΌΠ΅Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ zamen модуля ZAMENA, которая позволяСт ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ всС поля Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ записи.

{Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ}

uses crt, add, addafter, mymenu, open, show, writing, sorting, zamena, elemzam;

var a: masmenu;

pos, x, y:byte; raz, nm: integer; u: char; put: string;

begin

{ЗаполняСм массив Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°}

vvod (nd, raz);

{Π—Π°Π΄Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ располоТСния мСню}

{Π—Π°Π΄Π°Π΅ΠΌ строки ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню}

{Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ мСню Π½Π° ΡΠΊΡ€Π°Π½}

vertmenu (a, nm, x, y, pos);

{Π’ зависимости ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ выполнСния запроса}

end.

1.2 ΠœΠΎΠ΄ΡƒΠ»ΡŒ мСню MYMENU

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ мСню. Π’ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ этого модуля vertmenu, ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ MAINPRO пСрСдаСтся массив строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² создаваСмого мСню, количСство этих ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ располоТСния мСню (вСрхняя лСвая Ρ‚ΠΎΡ‡ΠΊΠ°), Π° Ρ‚Π°ΠΊΠΆΠ΅ позиция курсора. Π’ ΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ провСряСтся ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, опрСдСляСтся правая ниТняя Ρ‚ΠΎΡ‡ΠΊΠ° мСню, опрСдСляСтся позиция курсора ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся мСню. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ этой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ являСтся пСрСмСнная pos Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰Π°Ρ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ курсора, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² ΠΌΠ΅Π½ΡŽ. Π’ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚. Π΅. ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ pos ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠΉ Π½Π°Π·Π°Π΄ Π² Π³Π»Π°Π²Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ MAINPRO выполняСтся Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ запрос ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

unit mymenu;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ}

uses crt, types;

type masmenu=array[1.25] of string[50];

procedure vertmenu (a:masmenu;n, x, y:byte;var pos: byte);

implementation

procedure vertmenu (a:masmenu;n, x, y:byte;var pos: byte);

var i, j, x1,y1,p, max: byte;

key:char;

begin

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π±Ρ‹ лСвая вСрхняя Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π΅Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ экрана.

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡˆΠΈΡ€ΠΈΠ½Ρƒ мСню ΠΏΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ надписи, которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΌΠ΅Π½ΡŽ ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΡ€Π°Π²ΠΎΠΉ Π½ΠΈΠΆΠ½Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ мСню.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π±Ρ‹ лСвая ниТняя Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π΅Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ экрана.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π»Π΅Π²ΡƒΡŽ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ ΠΈ ΠΏΡ€Π°Π²ΡƒΡŽ Π½ΠΈΠΆΠ½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ ΠΌΠ°ΡΡΠΈΠ² строковых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ мСню, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ.

window (x, y, x1,y1);

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ курсора Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡˆΡ‹.

end.

1.3 ΠœΠΎΠ΄ΡƒΠ»ΡŒ описания основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… TYPES

Π­Ρ‚ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ содСрТит Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ всСх основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ комплСксС. К Ρ‚Π°ΠΊΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ относятся сама запись zap которая состоит ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…:

— ΡˆΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹ — shifr Ρ‚ΠΈΠΏΠ° string;

— ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π΄Π΅Ρ‚Π΅ΠΉ — kol Ρ‚ΠΈΠΏΠ° integer;

— Ρ„амилия воспитатСля — famil Ρ‚ΠΈΠΏΠ° string.

ΠšΡ€ΠΎΠΌΠ΅ самой записи ΠΌΠΎΠ΄ΡƒΠ»ΡŒ содСрТит описаниС указатСля Π½Π° Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ массива этих ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΠΈΡΠΈ. А Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π·Π°ΠΏΠΈΡΡΠΌΠΈ. РСализация основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… модулях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

unit types;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ}

uses crt;

type

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π·Π°ΠΏΠΈΡΡŒ}

uk=^zap;

{ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ сам Ρ‚ΠΈΠΏ запись}

zap=record

kol:integer;

shifr:string[20];

famil:string[30];

end;

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΠΈΡΡŒ}

mas=array[1.200] of uk;

{ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»ΠΎΠΌ хранСния записСй}

var nd: file of zap;

implementation

end.

1.4 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Скстового Ρ„Π°ΠΉΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ² записСй OPEN

ΠœΠΎΠ΄ΡƒΠ»ΡŒ OPEN создаСт Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ vvod, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ открываСтся Ρ„Π°ΠΉΠ» NABOR. dat для чтСния. Π”Π°Π»ΡŒΡˆΠ΅ всС Π΄Π°Π½Π½Ρ‹Π΅ содСрТащиСся Π² ΡΡ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ² записСй. ПослС окончания ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Π½ΠΈΡŽ Ρ„Π°ΠΉΠ» закрываСтся. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ являСтся nd — массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΠΈΡΠΈ ΠΈ n — количСство записСй Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ всС измСнСния Π΄Π°Π½Π½Ρ‹Ρ… производятся Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Ρ‚. Π΅. Ρ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ измСнСния Π½Π΅ Π² Ρ„Π°ΠΉΠ»Π΅ NABOR. dat Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°.

unit open;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types;

var nd: mas;

n, raz, nvs: integer;

z:zap;

f:file of zap;

procedure vvod (var nd: mas;var n: integer);

implementation

procedure vvod;

var i: integer; kl: char;

begin

{ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» NABOR. dat для чтСния}

{Π§ΠΈΡ‚Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ находящиСся Π² Π½Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°}

{Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»}

end.

1.5 ΠœΠΎΠ΄ΡƒΠ»ΡŒ просмотр всСх элСмСнтов массива SHOW

Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² ΡΠ΅Π±Ρ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ showw, Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΠ²Π»ΡΡŽΡ‚ΡΡ массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ ΡΡ‡Π΅Ρ‚Ρ‡ΠΈΠΊ количСства элСмСнтов массива. ПослС Π²Ρ‹Π·ΠΎΠ²Π° этой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½Π° ΡΠΊΡ€Π°Π½Π΅ выводится Ρ‚Π°Π±Π»ΠΈΡ†Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

unit show;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types;

procedure showw (nd:mas;raz:integer);

implementation

procedure showw;

var i: integer;

z:zap;

begin

{Π§ΠΈΡ‚Π°Π΅ΠΌ значСния массива ΠΈΠ· ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ эти значСния Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅}

end.

1.6 ΠœΠΎΠ΄ΡƒΠ»ΡŒ добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

Π­Ρ‚ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для добавлСния Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ† массива. Π’ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния СдинствСнной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ этого модуля dob ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся ввСсти Π΄Π°Π½Π½Ρ‹Π΅ для Π½ΠΎΠ²ΠΎΠΉ записи. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π·Π°Π΄Π°Π» Π΄Π°Π½Π½Ρ‹Π΅, Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ эти Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΊ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ массиву Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ массив Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€.

unit add;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types, show;

procedure dob (var nd: mas;var raz: integer);

implementation

procedure dob (var nd: mas;var raz: integer);

var key: char;

nz:zap;

i:integer;

begin

{ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля для Π½ΠΎΠ²ΠΎΠΉ записи}

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ запись ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π΅ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ}

new (nd[raz]);

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй}

showw (nd, raz);

end.

1.7 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ» WRITING

Π­Ρ‚ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для записи ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ массива записСй находящСгося Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π² Ρ„Π°ΠΉΠ». ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° этого модуля writingg ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ массив записСй ΠΈ ΠΈΡ… ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ, Π½Π΅ ΠΊΠ°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚. Π’ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Π²Π½Π°Ρ‡Π°Π»Π΅ открываСтся Ρ„Π°ΠΉΠ» NABOR. dat для записи, записываСтся вСсь массив записСй Π² Ρ„Π°ΠΉΠ», Π·Π°Ρ‚Π΅ΠΌ Ρ„Π°ΠΉΠ» закрываСтся.

unit writing;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types;

const put='NABOR.dat';

var n: integer;

z:zap;

f:file of zap;

procedure writingg (nd:mas;raz:integer);

implementation

procedure writingg;

var i: integer;

begin

{ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» для записи}

assign (f, put);

rewrite (f);

{ЗаписываСм Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»}

{Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»}

end.

1.8 ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ELEMZAM

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ELEMZAM ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для измСнСния элСмСнтов ΠΎΠ΄Π½ΠΎΠΉ записи массива. Из Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ MAINPRO ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ elem этого модуля пСрСдаСтся Ρ‚Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. ΠŸΠ΅Ρ€Π²Π°Ρ пСрСмСнная nom Ρ‚ΠΈΠΏΠ° integer это индСкс Ρ‚ΠΎΠΉ записи, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ записСй. Π’Ρ‚ΠΎΡ€ΠΎΠΉ пСрСмСнная nd ΡΡ‚ΠΎ сам массив записСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит эту запись. Π’Ρ€Π΅Ρ‚ΡŒΡ пСрСмСнная raz это количСство записСй Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π·ΠΎΠ²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ отобраТСния ΠΈ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ».

Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠΉ записи, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ. Π—Π°Ρ‚Π΅ΠΌ, для Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠ°ΠΊΠΎΠΉ элСмСнт этой записи ΠΎΠ½ Ρ…ΠΎΡ‡Π΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, создаСм мСню. На ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ элСмСнта для рСдактирования Π² ΠΌΠ΅Π½ΡŽ, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ ввСсти Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта записи. ИзмСняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ записи. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Π²Ρ‹Π±Ρ€Π°Π² ΠΏΡƒΠ½ΠΊΡ‚ мСню «ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…» этого мСню, соотвСтствСнно ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния Π² Ρ„Π°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠΌ мСню «Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния».

unit elemzam;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, mymenu, open, types, show, writing;

procedure elem (nom:integer;var nd: mas;var raz: integer);

implementation

procedure elem (nom:integer;var nd: mas;var raz: integer);

var a: masmenu;

pos, x, y:byte;

nz:zap;

i, nm: integer;

u:char;

begin

{Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ значСния Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ записи}

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ мСню Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта записи для рСдактирования}

vertmenu (a, nm, x, y, pos);

{Π’ зависимости ΠΎΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню}

{Π—Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡˆΠΈΡ„Ρ€Ρƒ Π³Ρ€ΡƒΠΏΠΏΡ‹}

{ΠΈΠ»ΠΈ Π·Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ колличСства Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅}

{ΠΈΠ»ΠΈ Π·Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ воспитатСля}

{ΠΈΠ»ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй Π½Π° ΡΠΊΡ€Π°Π½}

{ΠΈΠ»ΠΈ сохраняСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй Π² Ρ„Π°ΠΉΠ»}

end.

1.9 ΠœΠΎΠ΄ΡƒΠ»ΡŒ сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ sort, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для сортировки записСй массива. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ сам массив записСй ΠΈ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ элСмСнтов массива. Π’Π°ΠΊ ΠΊΠ°ΠΊ СдинствСнным числовым ΠΏΠΎΠ»Π΅ΠΌ нашСго массива записСй являСтся количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅, Ρ‚ΠΎ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΡƒ выполняСм ΠΏΠΎ ΡΡ‚ΠΎΠΌΡƒ полю. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сортировки отобраТаСтся сразу Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ showw модуля SHOW.

unit sorting;

interface

{Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types, show;

procedure sort (nd:mas;raz:integer);

implementation

procedure sort;

var vsp: zap;

i, j: integer;

begin

{Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ массив записСй Π² ΠΏΠΎΡ€ΡΠ΄ΠΊΠ΅ убывания }

if nd[j]^.kol>nd[i]^.kol then

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ сортировки}

showw (nd, raz);

end.

1.10 ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π·Π°ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ZAMENA

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ zamena с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΡ‚Π°Ρ€ΡƒΡŽ запись Π½Π° Π½ΠΎΠ²ΡƒΡŽ запись. Π’ ΡΡ‚Ρƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ‚Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. ΠŸΠ΅Ρ€Π²Π°Ρ пСрСмСнная nom Ρ‚ΠΈΠΏΠ° integer это индСкс Ρ‚ΠΎΠΉ записи, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ записСй. Π’Ρ‚ΠΎΡ€ΠΎΠΉ пСрСмСнная nd ΡΡ‚ΠΎ сам массив записСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит эту запись. Π’Ρ€Π΅Ρ‚ΡŒΡ пСрСмСнная raz это количСство записСй Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π·ΠΎΠ²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ отобраТСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ массива записСй.

Π’Π½Π°Ρ‡Π°Π»Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся ввСсти Π½ΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для Π·Π°ΠΌΠ΅Π½Ρ‹ записи. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Π°Ρ новая запись записываСтся ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ записи, Π½ΠΎΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π·Π°ΠΌΠ΅Π½Ρ‹ отобраТаСтся сразу Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ showw модуля SHOW

unit zamena;

interface

{ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ }

uses crt, types, show;

procedure zamen (nom:integer;var nd: mas;var raz: integer);

implementation

procedure zamen (nom:integer;var nd: mas;var raz: integer);

var nz: zap;

i:integer;

begin

{ΠŸΡ€Π΅Π΄Π»ΠΎΠ³Π°Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ввСсти Π΄Π°Π½Π½Ρ‹Ρ… для Π½ΠΎΠ²ΠΎΠΉ записи}

{ЗамСняСм ΡΡ‚Π°Ρ€ΡƒΡŽ запись Π½ΠΎΠ²ΠΎΠΉ}

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π·Π°ΠΌΠ΅Π½Ρ‹}

showw (nd, raz);

end.

2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅

2.1 Запуск Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ MAINPRO

ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, выводится мСню (ΠΌΠΎΠ΄ΡƒΠ»ΡŒ MYMENU) Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ пСрСчислСны ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ запросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ с ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ записСй. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ выбираСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ мСню «ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…» (рисунок 2.1). Массив записСй автоматичСски заполняСтся ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля OPEN.

Рисунок 2.1 — Запуск Π³Π»Π°Π²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

2.2 Запуск модуля просмотра всСх элСмСнтов массива SHOW

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π² ΠΌΠ΅Π½ΡŽ ΠΏΡƒΠ½ΠΊΡ‚Π° «ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля SHOW Π½Π° ΡΠΊΡ€Π°Π½ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° выводится содСрТаниС массива записСй Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (рисунок 2.2).

Рисунок 2.2 — Запуск модуля просмотра всСх элСмСнтов массива SHOW

2.3 Запуск модуля добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΌΠ΅Π½ΡŽ ΠΏΡƒΠ½ΠΊΡ‚Π° «Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ†», Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ ввСсти значСния Π½ΠΎΠ²ΠΎΠΉ добавляСмой Π² ΠΊΠΎΠ½Π΅Ρ† массива записи, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡˆΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹, количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ воспитатСля (рисунок 2.3).

Рисунок 2.3 — Запуск модуля добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

ПослС Π²Π²ΠΎΠ΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, эти Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π² ΠΊΠΎΠ½Π΅Ρ† массива записСй ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ADD. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ добавлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΌΠ°ΡΡΠΈΠ², Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ SHOW для отобраТСния Π΄Π°Π½Π½Ρ‹Ρ… массива Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (рисунок 2.4).

Рисунок 2.4 — Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

Для продолТСния Π²Π²ΠΎΠ΄Π° записСй Π² ΠΌΠ°ΡΡΠΈΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ модуля ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π΅Π³ΠΎ Π·Π°Π½ΠΎΠ²ΠΎ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ Π½Π° Π²ΠΎΠΏΡ€ΠΎΡ «ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ:y/n» ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ большС Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ записи Π² ΠΌΠ°ΡΡΠΈΠ², Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

2.4 Запуск модуля Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ» WRITING

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΌΠ΅Π½ΡŽ ΠΏΡƒΠ½ΠΊΡ‚Π° «Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»», ΠΌΠΎΠ΄ΡƒΠ»ΡŒ WRITING Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ массива записСй Π² Ρ„Π°ΠΉΠ». Об ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π½ΠΎ сообщСниС «Π—аписано» (рисунок 2.5).

Рисунок 2.5 — Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля WRITING

2.5 Запуск модуля ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ELEMZAM

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню «ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта» ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Π½Π°Ρ‡Π°Π»Π΅ прСдлагаСтся ввСсти Π½ΠΎΠΌΠ΅Ρ€ записи Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, поля ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€Π° записи Π½Π° ΡΠΊΡ€Π°Π½ выводится значСния ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ записи. Π§ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅ выводится мСню с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· ΠΏΠΎΠ»Π΅ этой записи Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС массива ΠΈ Π΄Π°ΠΆΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния массива Π² Ρ„Π°ΠΉΠ» (рисунок 2.6).

Рисунок 2.6 — МСню Π²Ρ‹Π±ΠΎΡ€Π° поля записи массива для рСдактирования НапримСр, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅, Ρ‚ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π² ΠΌΠ΅Π½ΡŽ модуля ELEMZAM ΠΏΡƒΠ½ΠΊΡ‚ «Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅» ΠΈ Π²Π²Π΅ΡΡ‚ΠΈ Π½ΡƒΠΆΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ сообщСниС (рисунок 2.7).

Рисунок 2.7 — Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ измСнСния поля Π² Π·Π°ΠΏΠΈΡΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля ELEMZAM

2.6 Запуск модуля сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

ΠŸΡƒΠ½ΠΊΡ‚ мСню «Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ SORTING, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сортируСт записи Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Π² ΠΏΠΎΡ€ΡΠ΄ΠΊΠ΅ убывания. Для сортировки записСй этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»Π΅ «ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅». Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ сортировки выводятся Π½Π° ΡΠΊΡ€Π°Π½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля SHOW (рисунок 2.8).

Рисунок 2.8 — Запуск модуля сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

2.7 Запуск модуля Π·Π°ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ZAMENA

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню «Π—Π°ΠΌΠ΅Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта», ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ прСдлагаСтся ввСсти Π½ΠΎΠΌΠ΅Ρ€ измСняСмой записи. Π”Π°Π»ΡŒΡˆΠ΅ ввСсти Π½ΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ записи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ старой записи. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π·Π°ΠΌΠ΅Π½Ρ‹ записи Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ Π½Π° ΡΠΊΡ€Π°Π½ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ SHOW (рисунок 2.9).

Рисунок 2.9 — Π—Π°ΠΌΠ΅Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля ZAMENA

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… этой курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π» создан ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ запросы ΠΊ ΠΌΠ°ΡΡΠΈΠ²Ρƒ записСй мноТСства Π΄Π°Π½Π½Ρ‹Ρ… — Π³Ρ€ΡƒΠΏΠΏ Π² Π΄Π΅Ρ‚ском саду. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ Π΅ΡΡ‚ΡŒ свои характСристики, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡˆΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹, количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅, фамилия воспитатСля.

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ запроса Π±Ρ‹Π» создан ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.

Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ массива записСй ΠΈΠ· Ρ‚Скстового Ρ„Π°ΠΉΠ»Π° осущСствляСтся автоматичСски ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Запуск ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… запросов осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ мСню, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ элСмСнты Π² ΠΊΠΎΠ½Π΅Ρ† массива, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ поля Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ записи массива, Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½ΡƒΡŽ запись Π½Π° Π½ΠΎΠ²ΡƒΡŽ. Π•Ρ‰Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ комплСксС Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° функция сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю.

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ запросов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ значСния ΠΈΠ»ΠΈ порядок слСдования, записСй Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡΠΊΡ€Π°Π½ Π² Π²ΠΈΠ΄Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅ измСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ». Π”Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π² Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ выполняСт поставлСнныС вопросы ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ этой курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

Π—ΡƒΠ΅Π², Π•. А. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Turbo Pascal 6.0,7.0,/ Π•. А. Π—ΡƒΠ΅Π²// М.:ВСста, Π Π°Π΄ΠΈΠΎ ΠΈ ΡΠ²ΡΠ·ΡŒ, 1993. — 376с.

Бвободная энциклопСдия Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠ― [Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс]. — 2011. — Π Π΅ΠΆΠΈΠΌ доступа: http://ru.wikipedia.org. — Π”Π°Ρ‚Π° доступа: 07.05.2011.

Pascaler [Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс]. — 2011. — Π Π΅ΠΆΠΈΠΌ доступа: http://pascaler.ru. — Π”Π°Ρ‚Π° доступа: 07.05.2011.

ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ [Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ рСсурс]. — 2011. — Π Π΅ΠΆΠΈΠΌ доступа: http://catalog-kartin.ru. — Π”Π°Ρ‚Π° доступа: 07.05.2011.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, А ΠŸΠ ΠžΠ“Π ΠΠœΠœΠΠ«Π™ ΠšΠžΠ” ΠœΠžΠ”Π£Π›Π•Π™ Главная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° MAINPRO

program mainpro;

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, add, addafter, mymenu, open, show, writing, sorting, zamena, elemzam;

var a: masmenu;

pos, x, y:byte;

raz, nm: integer;

u:char;

put:string;

begin

{Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ массива Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°}

vvod (nd, raz);

clrscr;

x:=1;

y:=1;

nm:=6;

repeat

{Π—Π°Π΄Π°Π½ΠΈΠ΅ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню}

a[1]: ='ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…';

a[2]: ='Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ†';

a[3]: ='Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»';

a[4]: ='ΠšΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта';

a[5]: ='Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю';

a[6]: ='Π—Π°ΠΌΠ΅Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта';

clrscr;

{Π’Ρ‹Π²ΠΎΠ΄ мСню}

vertmenu (a, nm, x, y, pos);

textbackground (black);

textcolor (white);

clrscr;

window (1,1,80,25);

case pos of

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ отобраТСния Π΄Π°Π½Π½Ρ‹Ρ…}

1:begin

clrscr;

showw (nd, raz);

end;

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ добавлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΊΠΎΠ½Π΅Ρ† массива}

2:begin

clrscr;

dob (nd, raz);

end;

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ записи массива Π² Ρ„Π°ΠΉΠ»}

3:begin

clrscr;

writingg (nd, raz);

end;

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ измСнСния ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта}

4:begin

clrscr;

writeln ('BΠ²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€:');

readln (n);

elem (n, nd, raz);

end;

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю}

5:begin

clrscr;

sort (nd, raz);

end;

{Π’Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π·Π°ΠΌΠ΅Π½Ρ‹ всСх ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ элСмСнта}

6:begin

clrscr;

writeln ('BΠ²Π΅Π΄ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€:');

readln (n);

zamen (n, nd, raz);

end;

end;

writeln ('Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Esc для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ»ΠΈ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ');

u:=readkey;

until u=#27;

end.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ мСню MYMENU

unit mymenu;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, types;

type masmenu=array[1.25] of string[50];

procedure vertmenu (a:masmenu;n, x, y:byte;var pos: byte);

implementation

procedure vertmenu (a:masmenu;n, x, y:byte;var pos: byte);

var i, j, x1,y1,p, max: byte;

key:char;

begin

{ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π±Ρ‹ лСвая вСрхняя Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π΅Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ экрана}

if (x<0) or (x>80) or (y<0) or (y>25) then

begin

writeln ('Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΡƒΠ³ΠΎΠ» Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ экрана');

exit

end;

{ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡˆΠΈΡ€ΠΈΠ½Ρƒ мСню ΠΏΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ надписи,

которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΌΠ΅Π½ΡŽ }

max:=length (a[1]);

for i:=2 to n do

if max

max:=length (a[i]);

i:=0;

for i:=1 to n do

for j:=length (a[i]) to max do

a[i]: =a[i]+' ';

{ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΏΡ€Π°Π²ΠΎΠΉ Π½ΠΈΠΆΠ½Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ мСню}

x1:=x+max;

y1:=y+n;

{ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π±Ρ‹ лСвая ниТняя Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π΅Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ экрана}

if (x1<0) or (x1>80) or (y1<0) or (y1>25) then

begin

writeln ('Π½ΠΈΠΆΠ½ΠΈΠΉ ΡƒΠ³ΠΎΠ» Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ экрана');

exit

end;

{Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π»Π΅Π²ΡƒΡŽ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ ΠΈ ΠΏΡ€Π°Π²ΡƒΡŽ Π½ΠΈΠΆΠ½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹

ΠΈ ΠΌΠ°ΡΡΠΈΠ² строковых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ мСню, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ}

window (x, y, x1,y1);

textbackground (white);

textcolor (green);

asm

mov ah,$ 01

mov ch,$ 20

mov cl,$ 00

int $ 10

end;

for i:=1 to n do

begin

gotoxy (1,i);

write (a[i])

end;

gotoxy (1,1);

textbackground (red);

textcolor (white);

write (a[1]);

pos:=1;

{ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ

ΠΎΡ‚ Π½Π°ΠΆΠ°Ρ‚ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠ»Π°Π²ΠΈΡˆΡ‹}

repeat

p:=pos;

key:=readkey;

if key=#0 then

key:=readkey;

case key of

#27:begin {Esc}

pos:=0;

break

end;

#13:break; {Enter}

#72:begin {Π‘Ρ‚Ρ€Π΅Π»ΠΎΡ‡ΠΊΠ° Π²Π²Π΅Ρ€Ρ…}

pos:=pos-1;

if pos=0 then

pos:=n;

end;

#80:begin {Π‘Ρ‚Ρ€Π΅Π»ΠΎΡ‡ΠΊΠ° Π²Π½ΠΈΠ·}

pos:=pos+1;

if pos=n+1 then

pos:=1;

end;

end;

gotoxy (1,p);

textbackground (white);

textcolor (green);

write (a[p]);

gotoxy (1,pos);

textbackground (red);

textcolor (white);

write (a[pos]);

until false;

asm

mov ah,$ 01

mov ch,$ 06

mov cl,$ 07

int $ 10

end;

ΠœΠΎΠ΄ΡƒΠ»ΡŒ описания основных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… TYPES

unit types;

interface

{ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ}

uses crt;

type

{Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π·Π°ΠΏΠΈΡΡŒ}

uk=^zap;

{ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° запись}

zap=record

kol:integer;

shifr:string[20];

famil:string[30];

end;

{Массив ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Π·Π°ΠΏΠΈΡΡŒ}

mas=array[1.200] of uk;

{Π€Π°ΠΉΠ» для хранСния запис}

var nd: file of zap;

implementation

end.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· Ρ‚Скстового Ρ„Π°ΠΉΠ»Π° Π² ΠΌΠ°ΡΡΠΈΠ² записСй OPEN

unit open;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, types;

var nd: mas;

n, raz, nvs: integer;

z:zap;

f:file of zap;

procedure vvod (var nd: mas;var n: integer);

implementation

procedure vvod;

var i: integer;

kl:char;

begin

{ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» NABOR. dat для чтСния}

assign (f,'NABOR.dat');

reset (f);

n:=0;

{Π§ΠΈΡ‚Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ находящиСся Π² Π½Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°}

while not eof (f) do

begin

inc (n);

read (f, z);

for i:=1 to 20-length (z.shifr) do

z.shifr:=z.shifr+' ';

for i:=1 to 30-length (z.famil) do

z.famil:=z.famil+' ';

new (nd[n]);

nd[n]^.kol:=z.kol;

nd[n]^.shifr:=z.shifr;

nd[n]^.famil:=z.famil;

end;

{Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ»}

close (f);

end;

ΠœΠΎΠ΄ΡƒΠ»ΡŒ просмотр всСх элСмСнтов массива SHOW

unit show;

interface

uses crt, types;

procedure showw (nd:mas;raz:integer);

implementation

procedure showw;

var i: integer;

z:zap;

begin

i:=0;

writeln

writeln ('Β¦ # Β¦ Π¨ΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹ Β¦ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π΄Π΅Ρ‚Π΅ΠΉ Β¦ Ѐамилия воспитатСля Β¦');

while i<>(raz-1) do

begin

inc (i);

writeln

z.shifr:=nd[i]^.shifr;

z.kol:=nd[i]^.kol;

z.famil:=nd[i]^.famil;

writeln ('Β¦', i:3,'Β¦', z. shifr,'Β¦', z. kol:20,'Β¦', z. famil:30,'Β¦');

end;

writeln

end;

ΠœΠΎΠ΄ΡƒΠ»ΡŒ добавлСния Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² ΠΊΠΎΠ½Π΅Ρ† массива ADD

unit add;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, types, show;

procedure dob (var nd: mas;var raz: integer);

implementation

procedure dob (var nd: mas;var raz: integer);

var key: char;

nz:zap;

i:integer;

begin

{ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля для Π½ΠΎΠ²ΠΎΠΉ записи}

repeat

with nz do

begin

clrscr;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‰ΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹:');

readln (shifr);

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅:');

readln (kol);

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ воспитатСля:');

readln (famil);

for i:=1 to 20-length (shifr) do

shifr:=shifr+' ';

for i:=1 to 30-length (famil) do

famil:=famil+' ';

end;

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΡƒΡŽ запись ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π΅ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ}

new (nd[raz]);

nd[raz]^:=nz;

inc (raz);

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй}

showw (nd, raz);

writeln ('ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ:y/n');

readln (key);

until key='n';

end;

end.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π² Ρ‚Скстовый Ρ„Π°ΠΉΠ» WRITING

unit writing;

interface

uses crt, types;

const put='NABOR.dat';

var n: integer;

z:zap;

f:file of zap;

procedure writingg (nd:mas;raz:integer);

implementation

procedure writingg;

var i: integer;

begin

assign (f, put);

rewrite (f);

for n:=1 to raz do

begin

z.kol:=nd[n]^.kol;

z.shifr:=nd[n]^.shifr;

z.famil:=nd[n]^.famil;

write (f, z)

end;

close (f);

writeln ('Записано');

end;

end.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ELEMZAM

unit elemzam;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, mymenu, open, types, show, writing;

procedure elem (nom:integer;var nd: mas;var raz: integer);

implementation

procedure elem (nom:integer;var nd: mas;var raz: integer);

var a: masmenu;

pos, x, y:byte;

nz:zap;

i, nm: integer;

u:char;

begin

clrscr;

x:=1;

y:=10;

nm:=5;

repeat

{Π—Π°Π΄Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ мСню}

a[1]: ='Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡˆΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹';

a[2]: ='Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅';

a[3]: ='Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ прСподаватСля';

a[4]: ='ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π΄Π°Π½Π½Ρ‹Ρ…';

a[5]: ='Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ измСнСния';

clrscr;

{Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ значСния Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ записи}

writeln ('ИзмСняСмая запись:');

with nd[nom]^ do

begin

write ('Π“Ρ€ΡƒΠΏΠΏΠ° — ');

writeln (shifr);

write ('Кол-Π²ΠΎ Π΄Π΅Ρ‚Π΅ΠΉ — ');

writeln (kol:5);

write ('Π’ΠΎΡΠΏΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ — ');

writeln (famil);

end;

{Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ мСню Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта записи для рСдактирования}

vertmenu (a, nm, x, y, pos);

textbackground (black);

textcolor (white);

clrscr;

window (1,1,80,25);

case pos of

{Π—Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡˆΠΈΡ„Ρ€Ρƒ Π³Ρ€ΡƒΠΏΠΏΡ‹}

1:begin

clrscr;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‰ΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹:');

readln (nz.shifr);

nd[nom]^.shifr:=nz.shifr;

for i:=length (nd[nom]^.shifr)to 20 do

nd[nom]^.shifr:=nd[nom]^.shifr+' ';

writeln ('Π¨ΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½');

end;

{Π—Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ колличСства Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅}

2:begin

clrscr;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅:');

readln (nz.kol);

nd[nom]^.kol:=nz.kol;

writeln ('ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ');

end;

{Π—Π°Π΄Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ воспитатСля}

3:begin

clrscr;

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ воспитатСля:');

readln (nz.famil);

nd[nom]^.famil:=nz.famil;

for i:=length (nd[nom]^.famil)to 30 do

nd[nom]^.famil:=nd[nom]^.famil+' ';

writeln ('Ѐамилия воспитатСля ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°');

end;

{Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй Π½Π° ΡΠΊΡ€Π°Π½}

4:begin

clrscr;

showw (nd, raz);

end;

{БохраняСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ΠΉ массив записСй Π² Ρ„Π°ΠΉΠ»}

5:begin

clrscr;

writingg (nd, raz);

end;

end;

writeln ('Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Esc для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ»ΠΈ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ');

u:=readkey;

until u=#27;

end;

ΠœΠΎΠ΄ΡƒΠ»ΡŒ сортировки массива ΠΏΠΎ Ρ‡ΠΈΡΠ»ΠΎΠ²ΠΎΠΌΡƒ полю SORTING

unit sorting;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, types, show;

procedure sort (nd:mas;raz:integer);

implementation

procedure sort;

var vsp: zap; i, j: integer;

begin

{Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° массива записСй}

for i:=1 to raz do

for j:=i+1 to raz-1 do

if nd[j]^.kol>nd[i]^.kol then

begin

vsp:=nd[i]^;

nd[i]^:=nd[j]^;

nd[j]^:=vsp;

end;

writeln ('ΠžΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ');

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сортировки}

showw (nd, raz);

end;

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π·Π°ΠΌΠ΅Π½Ρ‹ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ZAMENA

unit zamena;

interface

{ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ}

uses crt, types, show;

procedure zamen (nom:integer;var nd: mas;var raz: integer);

implementation

procedure zamen (nom:integer;var nd: mas;var raz: integer);

var nz: zap; i: integer;

begin

{ЗаполнСния Π΄Π°Π½Π½Ρ‹Ρ… для Π½ΠΎΠ²ΠΎΠΉ записи}

with nz do

begin

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ‰ΠΈΡ„Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹:');

readln (shifr);

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ количСство Π΄Π΅Ρ‚Π΅ΠΉ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅:');

readln (kol);

writeln ('Π’Π²Π΅Π΄ΠΈΡ‚Π΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ воспитатСля:');

readln (famil);

clrscr;

end;

{Π—Π°ΠΌΠ΅Π½Π° Π½ΠΎΠ²ΠΎΠΉ записью старой}

nd[nom]^.kol:=nz.kol;

nd[nom]^.shifr:=nz.shifr;

for i:=length (nd[nom]^.shifr)to 20 do

nd[nom]^.shifr:=nd[nom]^.shifr+' ';

nd[nom]^.famil:=nz.famil;

for i:=length (nd[nom]^.famil)to 30 do

nd[nom]^.famil:=nd[nom]^.famil+' ';

writeln ('Π—Π°ΠΌΠ΅Π½Π΅Π½ΠΎ');

{ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π·Π°ΠΌΠ΅Π½Ρ‹}

showw (nd, raz);

end; end.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ