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

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма ΠΏΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ΅ нСдвиТимости

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

Π”Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°Ρ…, частных Π΄ΠΎΠΌΠ°Ρ… ΠΈ ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ‡Π΅ΡΠΊΠΈΡ… Π·Π΄Π°Π½ΠΈΠΉ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ DataGridView. Π”Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ. Бписок ΠΈΠΌΠ΅Π΅Ρ‚ структуру ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.1. Π”Π°Π½Π½Ρ‹Π΅ хранятся Π² DataGridView ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ Π½Π° Π²ΡΡ‘ΠΌ протяТСнии Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· DataGridView ΠΈ ΡΠΏΠΈΡΠΊΠ° происходит послС наТатия ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню. C++ ΠΈ Π΅Π³ΠΎ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма ΠΏΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ΅ нСдвиТимости (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΠžΠ―Π‘ΠΠ˜Π’Π•Π›Π¬ΠΠΠ― Π—ΠΠŸΠ˜Π‘ΠšΠ ΠΊ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ Π½Π° Ρ‚Π΅ΠΌΡƒ ИНЀОРМАЦИОННАЯ Π‘Π˜Π‘Π’Π•ΠœΠ ΠŸΠž ΠŸΠ ΠžΠ”ΠΠ–Π• ΠΠ•Π”Π’Π˜Π–Π˜ΠœΠžΠ‘Π’Π˜

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму для ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ ΠΏΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ΅ нСдвиТимости. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌΠΈ мСню. Π Π°Π±ΠΎΡ‚Π° с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠΊΠ½Π°Ρ…. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…. НСобходимо Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свСдСния: Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°Ρ…, частном сСкторС, Π½Π΅ΠΆΠΈΠ»Ρ‹Ρ… помСщСниях, коммСрчСской нСдвиТимости, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ….

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ понятиСм C++ являСтся класс. Класс — это Ρ‚ΠΈΠΏ, опрСдСляСмый ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. ΠšΠ»Π°ΡΡΡ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ скрытиС Π΄Π°Π½Π½Ρ‹Ρ…, Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ…, нСявноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² для Ρ‚ΠΈΠΏΠΎΠ², ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, динамичСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ°, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. C++ прСдоставляСт Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠ΅, Ρ‡Π΅ΠΌ Π² C, срСдства выраТСния ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΈΠΏΠΎΠ². Π’ ΡΠ·Ρ‹ΠΊΠ΅ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½Ρ‹Π΅ нСпосрСдствСнно с ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Π² ΡΠ΅Π±Ρ символичСскиС константы, inlineподстановку Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ управлСния свободной ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΡΡΡ‹Π»ΠΎΡ‡Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ. Π’ C++ сохранСны возмоТности языка C ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΡΠ½ΠΎΠ²Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния (Π±ΠΈΡ‚Ρ‹, Π±Π°ΠΉΡ‚Ρ‹, слова, адрСса ΠΈ Ρ‚. ΠΏ.). Π­Ρ‚ΠΎ позволяСт вСсьма эффСктивно Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹, опрСдСляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

C++ ΠΈ Π΅Π³ΠΎ стандартныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ спроСктированы Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ. Π˜ΠΌΠ΅ΡŽΡ‰Π°ΡΡΡ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ рСализация языка Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ΄Ρ‚ΠΈ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ систСм, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… C. Из C++ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΈ с C++ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C.

1. ΠžΠ±Π·ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ

Π€Π°ΠΉΠ»ΠΎΠΌ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ способ хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° Ρ„изичСском устройствС. Π€Π°ΠΉΠ» — это понятиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΊΠΎ Π²ΡΠ΅ΠΌΡƒ — ΠΎΡ‚ Ρ„Π°ΠΉΠ»Π° Π½Π° Π΄ΠΈΡΠΊΠ΅ Π΄ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°.

Π’ C++ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. ВсС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ дСйствия Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ устройствами, Ρ‚Π°ΠΊΠΈΠΌΠΈ, ΠΊΠ°ΠΊ диски, ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€, ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΊΠ°Π½Π°Π»Ρ‹ ΠΈ Ρ‚. Π΄. Π­Ρ‚ΠΈ устройства сильно ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Однако файловая систСма ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΡ… Π² Π΅Π΄ΠΈΠ½ΠΎΠ΅ абстрактноС логичСскоС устройство, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ.

ВСкстовый ΠΏΠΎΡ‚ΠΎΠΊ — это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ символов ΠΈΠ· ΠΏΠΎΡ‚ΠΎΠΊΠ° Π½Π° ΡΠΊΡ€Π°Π½, Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, символ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° ΠΊΠ°Ρ€Π΅Ρ‚ΠΊΠΈ, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки).

Π”Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ — это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ находится Π½Π° Π²Π½Π΅ΡˆΠ½Π΅ΠΌ устройствС.

1.1 ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ срСдствами C

ОбъявлСниС Ρ„Π°ΠΉΠ»Π°

FILE *ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€;

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°:

fopen (имя физичСского Ρ„Π°ΠΉΠ»Π°, Ρ€Π΅ΠΆΠΈΠΌ доступа)

Π Π΅ΠΆΠΈΠΌ доступа — строка, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Ρ€Π΅ΠΆΠΈΠΌ открытия Ρ„Π°ΠΉΠ»Π° Ρ„Π°ΠΉΠ»Π° ΠΈ Ρ‚ΠΈΠΏ Ρ„Π°ΠΉΠ»Π°. Π’ΠΈΠΏΡ‹ Ρ„Π°ΠΉΠ»Π°: Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ (b); тСкстовый (t):

rΠ€Π°ΠΉΠ» открываСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния

wΠ€Π°ΠΉΠ» открываСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для записи. Если ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ физичСский Ρ„Π°ΠΉΠ» сущСствуСт, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ пСрСзаписан

aΠ€Π°ΠΉΠ» открываСтся для записи Π² ΠΊΠΎΠ½Π΅Ρ† (для дозаписи) ΠΈΠ»ΠΈ создаСтся, Ссли Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚

r+Π€Π°ΠΉΠ» открываСтся для чтСния ΠΈ Π·Π°ΠΏΠΈΡΠΈ.

w+Π€Π°ΠΉΠ» открываСтся для записи ΠΈ Ρ‡Ρ‚Сния. Если ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ физичСский Ρ„Π°ΠΉΠ» сущСствуСт, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ пСрСзаписан

a+Π€Π°ΠΉΠ» открываСтся для записи Π² ΠΊΠΎΠ½Π΅Ρ† (для дозаписи) ΠΈΠ»ΠΈ создаСтся, Ссли Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚

НСформатированныС Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄

Π—Π°ΠΏΠΈΡΡŒ Π² Ρ„Π°ΠΉΠ»

fwrite (адрСс записываСмой Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ΄Π½ΠΎΠ³ΠΎ экзСмпляра, количСство записываСмых Π²Π΅Π»ΠΈΡ‡ΠΈΠ½, имя логичСского Ρ„Π°ΠΉΠ»Π°);

Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

fread (адрСс Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹, Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ΄Π½ΠΎΠ³ΠΎ экзСмпляра, количСство считываСмых Π²Π΅Π»ΠΈΡ‡ΠΈΠ½, имя логичСского Ρ„Π°ΠΉΠ»Π°);

Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

fclose (имя логичСского Ρ„Π°ΠΉΠ»Π°);

Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄

1) Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ fgetc () ΠΈ fputc () ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ соотвСтствСнно ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ символа.

2) Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ fgets () ΠΈ fputs () ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ соотвСтствСнно ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ строки.

3) Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ fscanf () ΠΈ fprintf () ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ соотвСтствСнно ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ функциям Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ это ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ.

1.2 ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ срСдствами C++

Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π²ΠΎΠ΄-Π²Ρ‹Π²ΠΎΠ΄ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° #include

Бвязь Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°

ofstream имя логичСского Ρ„Π°ΠΉΠ»Π°;

Бвязь Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ Π²Π²ΠΎΠ΄Π°

ifstream имя логичСского Ρ„Π°ΠΉΠ»Π°;

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

имя логичСского Ρ„Π°ΠΉΠ»Π°. open (имя физичСского Ρ„Π°ΠΉΠ»Π°);

Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°

имя логичСского Ρ„Π°ΠΉΠ»Π°. close ();

2. ОбоснованиС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²

ΠŸΡ€ΠΈ создании прилоТСния использовалась Ρ€Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ срСдствами C Ρ Π½Π΅Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π²Π²ΠΎΠ΄ΠΎΠΌ-Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ, Ρ‚. Π΅. Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ» происходит Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Для хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ Π±Ρ‹Π» использован динамичСский Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ список, ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта, ΠΎΠ½ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ся Π² ΠΊΠΎΠ½Π΅Ρ† списка. ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ Π½Π° ΠΊΠΎΠ½Π΅Ρ† списка.

Рисунок 2.1 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ списка.

ΠŸΡ€ΠΈ запускС прилоТСния Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹:

Β· DatabaseCommercial. cm

Β· DatabaseFlats. f

Β· DatabaseHouses. hs

Β· DatabaseHumans. hm

Π”Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°Ρ…, частных Π΄ΠΎΠΌΠ°Ρ… ΠΈ ΠΊΠΎΠΌΠΌΠ΅Ρ€Ρ‡Π΅ΡΠΊΠΈΡ… Π·Π΄Π°Π½ΠΈΠΉ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ DataGridView. Π”Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ… Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π² ΡΠΏΠΈΡΠΎΠΊ. Бписок ΠΈΠΌΠ΅Π΅Ρ‚ структуру ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.1. Π”Π°Π½Π½Ρ‹Π΅ хранятся Π² DataGridView ΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ Π½Π° Π²ΡΡ‘ΠΌ протяТСнии Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· DataGridView ΠΈ ΡΠΏΠΈΡΠΊΠ° происходит послС наТатия ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню.

3. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для программиста

Рисунок 3.1 Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° классов

3.1 Класс FlatBaseΠ±Π°Π·ΠΎΠ²Ρ‹ΠΉ абстрактный класс ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ

Π’Π°Π±Π»ΠΈΡ†Π° 3.1 Поля класса FlatBase

ПолС

Π’ΠΈΠΏ

ОписаниС

Addr

wchar_t

АдрСс

Square

wchar_t

ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ

Price

wchar_t

Π¦Π΅Π½Π°

IsTel

bool

Π€Π»Π°Π³ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°

F

FILE *

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ„Π°ΠΉΠ»

Π’Π°Π±Π»ΠΈΡ†Π° 3.2 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса FlatBase

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

uninit ()

Void

Π‘Π½ΠΈΠΌΠ°Π΅Ρ‚ привязку ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

virtual Size () = 0

Long

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

virtualinput (int i, DataGridView^ dgv) = 0

Void

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…

virtualSaveToF () = 0

Void

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ сохранСния Π² Ρ„Π°ΠΉΠ»

virtual ReadFromF (int i) = 0

Bool

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° i-ΠΉ записи

virtual view (int i, DataGridView^ dgv) = 0

Void

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ просмотра Π΄Π°Π½Π½Ρ‹Ρ…

virtualinit (char f = 'r') = 0

Void

Чисто Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ привязки ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

3.2 Класс Flat: public FlatBase-класс ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€ Π’Π°Π±Π»ΠΈΡ†Π° 3.3 Поля класса Flat

ПолС

Π’ΠΈΠΏ

ОписаниС

NumOfRoom

wchar_t

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠ½Π°Ρ‚

Floor

wchar_t

Π­Ρ‚Π°ΠΆ

nalichremonta

bool

НаличиС Ρ€Π΅ΠΌΠΎΠ½Ρ‚Π°

IsEmpty

bool

ΠŸΡƒΡΡ‚Π°Ρ ΠΈΠ»ΠΈ Тилая ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π°

Π’Π°Π±Π»ΠΈΡ†Π° 3.4 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Flat

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

virtual Size ()

Long

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

virtualinput (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…

virtualSaveToF ()

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ сохранСния Π² Ρ„Π°ΠΉΠ»

virtual ReadFromF (int i)

Bool

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° i-ΠΉ записи

virtual view (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ просмотра Π΄Π°Π½Π½Ρ‹Ρ…

virtual init (char f = 'r')

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ привязки ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

3.3 Класс House: public FlatBase. Класс частных Π΄ΠΎΠΌΠΎΠ² Π’Π°Π±Π»ΠΈΡ†Π° 3.5 Поля класса House

ПолС

Π’ΠΈΠΏ

ОписаниС

NumOfFloors

wchar_t

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ этаТСй

TypeOfHeat

wchar_t

Π’ΠΈΠΏ отоплСния

NumOfFlats

wchar_t

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€

NumOfRooms

wchar_t

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠ½Π°Ρ‚

Sewers

bool

НаличиС ΠΊΠ°Π½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π’Π°Π±Π»ΠΈΡ†Π° 3.6 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса House

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

virtual Size ()

Long

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

virtualinput (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…

virtualSaveToF ()

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ сохранСния Π² Ρ„Π°ΠΉΠ»

virtual ReadFromF (int i)

Bool

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° i-ΠΉ записи

virtual view (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ просмотра Π΄Π°Π½Π½Ρ‹Ρ…

virtual init (char f = 'r')

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ привязки ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

3.4 Класс Commercial: publicFlatBase. Класс комСрчСских Π·Π΄Π°Π½ΠΈΠΉ Π’Π°Π±Π»ΠΈΡ†Π° 3.7 Поля класса Commercial

ПолС

Π’ΠΈΠΏ

ОписаниС

NumOfFloors

wchar_t

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ этаТСй

Π’Π°Π±Π»ΠΈΡ†Π° 3.8 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Commercial

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

virtual Size ()

Long

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

virtualinput (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ…

virtualSaveToF ()

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ сохранСния Π² Ρ„Π°ΠΉΠ»

virtual ReadFromF (int i)

Bool

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° i-ΠΉ записи

virtual view (int i, DataGridView^ dgv)

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ просмотра Π΄Π°Π½Π½Ρ‹Ρ…

virtual init (char f = 'r')

Void

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ привязки ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

3.5 Класс Human. Класс ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π’Π°Π±Π»ΠΈΡ†Π° 3.9 Поля класса Human

ПолС

Π’ΠΈΠΏ

ОписаниС

FIO

wchar_t

ЀИО

Tel

wchar_t

Π’Π΅Π»Π΅Ρ„ΠΎΠ½

Addr

wchar_t

АдрСс

F

FILE *

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ„Π°ΠΉΠ»

Π’Π°Π±Π»ΠΈΡ†Π° 3.10 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Human

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

Size ()

Long

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

SaveToF ()

Void

ΠœΠ΅Ρ‚ΠΎΠ΄ сохранСния Π² Ρ„Π°ΠΉΠ»

ReadFromF (int i)

Bool

ΠœΠ΅Ρ‚ΠΎΠ΄ чтСния ΠΈΠ· Ρ„Π°ΠΉΠ»Π° i-ΠΉ записи

init (char f = 'r')

Void

ΠœΠ΅Ρ‚ΠΎΠ΄ привязки ΠΊ Ρ„Π°ΠΉΠ»Ρƒ

uninit ()

Void

ΠœΠ΅Ρ‚ΠΎΠ΄ снятия привязки с Ρ„Π°ΠΉΠ»Π°

Input (String^ fio, String^ tel, String^ adr)

Void

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

OutFIO ()

String^

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ

OutTel ()

String^

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°

OutAddr ()

String^

ΠœΠ΅Ρ‚ΠΎΠ΄ Π²Ρ‹Π²ΠΎΠ΄Π° адрСса

3.6 Класс-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ContH. Класс список ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π’Π°Π±Π»ΠΈΡ†Π° 3.11 Поля класса-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ContH

ПолС

Π’ΠΈΠΏ

ОписаниС

Next

ContH *

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ элСмСнт списка ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²

Prev

ContH *

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнт списка ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²

H

Human *

Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Π’Π°Π±Π»ΠΈΡ†Π° 3.12 ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ContH

ΠœΠ΅Ρ‚ΠΎΠ΄ класса

Π’ΠΈΠΏ

ОписаниС

ContH ()

;

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ класса ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°

Add (Human * h)

ContH *

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта Π² ΡΠΏΠΈΡΠΎΠΊ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ указатСля Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ элСмСнт

Del ()

ContH *

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ послСднСго элСмСнта списка ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ указатСля Π½Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ

Next ()

ContH *

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ элСмСнт списка

Prev ()

ContH *

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнт списка

Value ()

Human *

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

Item (int i, ContH * B)

ContH *

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ i-ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ списка ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Ρ B

4. ОписаниС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° класс Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ

4.1 ΠœΠ΅Ρ‚ΠΎΠ΄ long Flat: Size () — ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ записСй Π² Ρ„Π°ΠΉΠ»Π΅

1. Начало.

2. Установка указатСля Π½Π° ΠΊΠΎΠ½Π΅Ρ† Ρ„Π°ΠΉΠ»Π°

3. Установка указатСля Π½Π° Π½Π°Ρ‡Π°Π»ΠΎ Ρ„Π°ΠΉΠ»Π°

4. ВычислСниС разности ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Ρ‡Π°Π»ΠΎΠΌ ΠΈ ΠΊΠΎΠ½Ρ†ΠΎΠΌ.

5. ВычислСниС количСства записСй Π² Ρ„Π°ΠΉΠ»Π΅

6. Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ количСства записСй. ΠšΠΎΠ½Π΅Ρ†

4.2 ΠœΠ΅Ρ‚ΠΎΠ΄ System: Voidadd_click () — Кнопка Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

1. Начало.

2. Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти ΠΏΠΎΠ΄ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

3. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

4. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² ΠΊΠΎΠ½Π΅Ρ† списка

5. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ Π² listBox1

6. ΠšΠΎΠ½Π΅Ρ†.

4.3 ΠœΠ΅Ρ‚ΠΎΠ΄System: VoidbEdit2_Click () — Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ Π½Π° Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ измСнСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

1. Начало.

2. Если индСкс Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° -1, сообщСниС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅

3. Если textBox1 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, ΡΠ½ΡΡ‚ΡŒ Ρ„Π»Π°Π³ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния

4. Π˜Π½Π°Ρ‡Π΅ мСняСм Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

5. Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π½ΠΎΠ²ΡƒΡŽ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ Π² listBox1

6. ΠšΠΎΠ½Π΅Ρ†.

4.4 ΠœΠ΅Ρ‚ΠΎΠ΄ System: VoidbAdd1_Click () — Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°

1. Начало.

2. Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ памяти ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΡƒ

3. Настройка свойств элСмСнтов управлСния

4. ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠ΅ события

5. Π Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ элСмСнтов управлСния Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅

6. ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°

7. ΠšΠΎΠ½Π΅Ρ†.

4.5 ΠœΠ΅Ρ‚ΠΎΠ΄System: VoidForm1_FormClosed ()-Π—Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ Рисунок 4.1 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° освобоТдСния памяти

4.6 ΠœΠ΅Ρ‚ΠΎΠ΄ ContH * ContH: Del () — Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° Рисунок 4.2 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° удалСния элСмСнта списка

4.7 ΠœΠ΅Ρ‚ΠΎΠ΄ ContH * ContH: Item (int i, ContH * B) — Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ i-Π³ΠΎ элСмСнта ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° Рисунок 4.3 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° i-Π³ΠΎ элСмСнта списка

4.8 ΠœΠ΅Ρ‚ΠΎΠ΄System: VoidbDel1_Click () — Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ‡Π΅Ρ€Π΅Π· listBox1

Рисунок 4.4 Π‘Π»ΠΎΠΊ-схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° удалСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Ρ‡Π΅Ρ€Π΅Π· listBox1

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

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹ создана ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎ Π½Π΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΠΈ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ Π½Π΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΠΈ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Ρ…. Π”Π°Π½Π½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, сохранСниС производится с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π² ΡΡ€Π΅Π΄Π΅ программирования Microsoft Visual Studio Team System 2008, с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° CLR Windows Forms Application.

1. Π₯Π°Ρ€Π²ΠΈ М. Π”Π΅ΠΉΡ‚Π΅Π», Пол Π”ΠΆ. Π”Π΅ΠΉΡ‚Π΅Π» — Как ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° C++ - 2008

2. Π”ΠΆΠ΅Ρ„Ρ„Ρ€ΠΈ Π ΠΈΡ…Ρ‚Π΅Ρ€ WINDOWS для профСссионалов. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ эффСктивных Win32-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ спСцифики 64-разрядной вСрсии Windows, 2011.

3. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚Π°Π»: http://msdn.microsoft.com

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

Листинг ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

//BaseFlats.h

#ifndef BASEFLATS_H

#define BASEFLATS_H

#include

usingnamespace System: Windows:Forms;

usingnamespace System: Windows;

usingnamespace System;

class FlatBase// Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ класс адрСсов

{

protected:

wchar_t Addr[260];

wchar_t Square[5];

wchar_t Price[10];

bool IsTel;

FILE *F;

public:

void uninit ();// Π‘Π½ΡΡ‚ΡŒΠΏΡ€ΠΈΠ²ΡΠ·ΠΊΡƒΠΊΡ„Π°ΠΉΠ»Ρƒ

virtuallong Size () = 0;// ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ записСй Π² Ρ„Π°ΠΉΠ»Π΅

virtualvoid input (int i, DataGridView^ dgv) = 0;// ЗаполняСт поля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° класса значСниями ΠΈΠ· DataGridView

virtualvoid SaveToF () = 0;// Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Ρ„Π°ΠΉΠ» ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

virtualbool ReadFromF (int i) = 0;// Π§Ρ‚Π΅Π½ΠΈΠ΅ i-Π³ΠΎΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΈΠ·Ρ„Π°ΠΉΠ»Π°

virtualvoid view (int i, DataGridView^ dgv) = 0;// ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚Π΄Π°Π½Π½Ρ‹Π΅ΠΎΠ± i-ΠΌΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅Π² DataGridView

virtualvoid init (char f = 'r') = 0;// ΠŸΡ€ΠΈΠ²ΡΠ·ΠΊΠ°ΠΊΡ„Π°ΠΉΠ»Ρƒ

};

class Flat: public FlatBase

{

private:

wchar_t NumOfRoom[3];

wchar_t Floor[3];

bool nalichremonta;

bool IsEmpty;

public:

virtuallong Size ();

virtualvoid input (int i, DataGridView^ dgv);

virtualvoid SaveToF ();

virtualbool ReadFromF (int i);

virtualvoid view (int i, DataGridView^ dgv);

virtualvoid init (char f = 'r');//Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

};

class House: public FlatBase

{

private:

wchar_t NumOfFloors[3];

wchar_t TypeOfHeat[30];

wchar_t NumOfFlats[5];

wchar_t NumOfRooms[3];

bool Sewers;

public:

virtuallong Size ();

virtualvoid input (int i, DataGridView^ dgv);

virtualvoid SaveToF ();

virtualbool ReadFromF (int i);

virtualvoid view (int i, DataGridView^ dgv);

virtualvoid init (char f = 'r');

};

class Commercial: public FlatBase

{

private:

wchar_t NumOfFloors[3];

public:

virtuallong Size ();

virtualvoid input (int i, DataGridView^ dgv);

virtualvoid SaveToF ();

virtualbool ReadFromF (int i);

virtualvoid view (int i, DataGridView^ dgv);

virtualvoid init (char f = 'r');

};

class Human

{

private:

wchar_t FIO[100];

wchar_t Tel[20];

wchar_t Addr[260];

FILE *F;

public:

long Size ();

void SaveToF ();

bool ReadFromF (int i);

void init (char f = 'r');

void uninit ();

void Input (String^ fio, String^ tel, String^ adr);// Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΏΠΎΠ»Π΅ΠΉΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΊΠ»Π°ΡΡΠ°Π·Π½Π°Ρ‡Π΅Π½ΠΈΡΠΌΠΈ

String^ OutFIO ();// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ЀИО

String^ OutTel ();// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π’Π΅Π»Π΅Ρ„ΠΎΠ½

String^ OutAddr ();// ВозвращаСтАдрСс

};

class ContH

{

private:

ContH *next, *prev;// Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнты списка

Human *H;// Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Human

public:

ContH ();// ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ класса ContH

ContH * Add (Human * h);// ДобавляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Human Π² ΡΠΏΠΈΡΠΎΠΊ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ элСмСнт списка

ContH * Del ();// УдаляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Human ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнт списка

ContH * Next ();// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ элСмСнт списка

ContH * Prev ();// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнт списка

Human * Value ();// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Human

ContH * Item (int i, ContH * B);// Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ i-йэлСмСнтсписка

};

#endif

//BaseFlats.cpp

#include" stdafx. h"

#include" BaseFlats. h"

void FlatBase: uninit ()

{

fclose (F);

}

// ———ОписаниС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² класса Flat———

long Flat: Size ()

{

F = fopen («Database\Flats.f» ," rb");

long fle, flb;

fseek (F, 0,2); // Установка указатСля Π½Π° ΠΊΠΎΠ½Π΅Ρ† Ρ„Π°ΠΉΠ»Π°

fle = ftell (F); // Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ установлСнного указатСля

fseek (F, 0,0); // Установка указатСля Π½Π° Π½Π°Ρ‡Π°Π»ΠΎ Ρ„Π°ΠΉΠ»Π°

flb = ftell (F);

fclose (F);

return (fle — flb)/sizeof (Flat);

}

void Flat: init (char f)

{

if (f == 'r') F = fopen («Database\Flats.f» ," rb");

if (f == 'w') F = fopen («Database\Flats.f» ," wb");

if (f == 'a') F = fopen («Database\Flats.f» ," ab");

}

void Flat: input (int i, DataGridView ^dgv)// Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΈΠ·ΡΡ‡Π΅Π΅ΠΊΠ΄Π³Π²Π²ΠΎΠ±ΡŠΠ΅ΠΊΡ‚

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString ();

for (int j=0;jLength;j++) Addr[j] = s[j];

Addr[s->Length] = '';

s = dgv->Rows[i]->Cells[1]->Value->ToString ();

for (int j=0;jLength;j++) Square[j] = s[j];

Square[s->Length] = '';

s = dgv->Rows[i]->Cells[2]->Value->ToString ();

for (int j=0;jLength;j++) NumOfRoom[j] = s[j];

NumOfRoom[s->Length] = '';

s = dgv->Rows[i]->Cells[3]->Value->ToString ();

for (int j=0;jLength;j++) Floor[j] = s[j];

Floor[s->Length] = '';

IsTel = (bool)dgv->Rows[i]->Cells[4]->Value;

nalichremonta = (bool)dgv->Rows[i]->Cells[5]->Value;

IsEmpty = (bool)dgv->Rows[i]->Cells[6]->Value;

s = dgv->Rows[i]->Cells[7]->Value->ToString ();

for (int j=0;jLength;j++) Price[j] =s[j];

Price[s->Length] = '';

}

void Flat: view (int i, DataGridView ^ dgv)//ΠΈΠ·ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Π²Π΄Π³Π²

{

String ^ tmp = gcnew String (Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String (Square);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String (NumOfRoom);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String (Floor);

dgv->Rows[i]->Cells[3]->Value = tmp;

dgv->Rows[i]->Cells[4]->Value = IsTel;

dgv->Rows[i]->Cells[5]->Value = nalichremonta;

dgv->Rows[i]->Cells[6]->Value = IsEmpty;

tmp = gcnew String (Price);

dgv->Rows[i]->Cells[7]->Value = tmp;

}

void Flat: SaveToF ()

{

fwrite (this, sizeof (Flat), 1, F);

}

bool Flat: ReadFromF (int k)

{

fseek (F, k*sizeof (Flat), 0);

char *A;

A = newchar[sizeof (Flat)];

if (!fread (A, sizeof (Flat), 1, F)) returnfalse;

int i = 4;

while (A[i]≠'') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '';

i = 524;// пСрСскакиваСм Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»Π΅

while (A[i]≠'') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '';

i = 534;

while (A[i]≠'') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '';

IsTel = (bool)(A[554]);

i = 560;

while (A[i]≠'') {NumOfRoom[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfRoom[(i-560)/2] = '';

i = 566;

while (A[i]≠'') {Floor[(i-566)/2] = A[i]+A[i+1]*256;i+=2;}

Floor[(i-566)/2] = '';

nalichremonta = (bool)(A[572]);

IsEmpty = (bool)(A[573]);

returntrue;

}

// ———ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²ΠΊΠ»Π°ΡΡΠ° House———

long House: Size ()

{

F = fopen («Database\Houses.hs» ," rb");

long fle, flb;

fseek (F, 0,2);

fle = ftell (F);

fseek (F, 0,0);

flb = ftell (F);

fclose (F);

return (fle — flb)/sizeof (House);

}

void House: init (char f)

{

if (f == 'r') F = fopen («Database\Houses.hs» ," rb");

if (f == 'w') F = fopen («Database\Houses.hs» ," wb");

if (f == 'a') F = fopen («Database\Houses.hs» ," ab");

}

void House: SaveToF ()

{

fwrite (this, sizeof (House), 1, F);

}

bool House: ReadFromF (int k)

{

fseek (F, k*sizeof (House), 0);

char *A;

A = newchar[sizeof (House)];

if (!fread (A, sizeof (House), 1, F)) returnfalse;

int i = 4;

while (A[i]≠'') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '';

i = 524;

while (A[i]≠'') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '';

i = 534;

while (A[i]≠'') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '';

IsTel = (bool)(A[554]);

i = 560;

while (A[i]≠'') {NumOfFloors[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFloors[(i-560)/2] = '';

i = 566;

while (A[i]≠'') {TypeOfHeat[(i-566)/2] = A[i]+A[i+1]*256;i+=2;}

TypeOfHeat[(i-566)/2] = '';

i = 626;

while (A[i]≠'') {NumOfFlats[(i-626)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFlats[(i-626)/2] = '';

i = 636;

while (A[i]≠'') {NumOfRooms[(i-636)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfRooms[(i-636)/2] = '';

Sewers = (bool)A[642];

returntrue;

}

void House: view (int i, DataGridView^ dgv)

{

String ^ tmp = gcnew String (Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String (Square);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String (NumOfFloors);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String (NumOfFlats);

dgv->Rows[i]->Cells[3]->Value = tmp;

tmp = gcnew String (NumOfRooms);

dgv->Rows[i]->Cells[4]->Value = tmp;

tmp = gcnew String (TypeOfHeat);

dgv->Rows[i]->Cells[5]->Value = tmp;

dgv->Rows[i]->Cells[6]->Value = Sewers;

dgv->Rows[i]->Cells[7]->Value = IsTel;

tmp = gcnew String (Price);

dgv->Rows[i]->Cells[8]->Value = tmp;

}

void House: input (int i, DataGridView^ dgv)

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString ();

for (int j=0;jLength;j++) Addr[j] = s[j];

Addr[s->Length] = '';

s = dgv->Rows[i]->Cells[1]->Value->ToString ();

for (int j=0;jLength;j++) Square[j] = s[j];

Square[s->Length] = '';

s = dgv->Rows[i]->Cells[2]->Value->ToString ();

for (int j=0;jLength;j++) NumOfFloors[j] = s[j];

NumOfFloors[s->Length] = '';

s = dgv->Rows[i]->Cells[3]->Value->ToString ();

for (int j=0;jLength;j++) NumOfFlats[j] = s[j];

NumOfFlats[s->Length] = '';

s = dgv->Rows[i]->Cells[4]->Value->ToString ();

for (int j=0;jLength;j++) NumOfRooms[j] = s[j];

NumOfRooms[s->Length] = '';

s = dgv->Rows[i]->Cells[5]->Value->ToString ();

for (int j=0;jLength;j++) TypeOfHeat[j] = s[j];

TypeOfHeat[s->Length] = '';

Sewers = (bool)dgv->Rows[i]->Cells[6]->Value;

IsTel = (bool)dgv->Rows[i]->Cells[7]->Value;

s = dgv->Rows[i]->Cells[8]->Value->ToString ();

for (int j=0;jLength;j++) Price[j] =s[j];

Price[s->Length] = '';

}

// ———ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²ΠΊΠ»Π°ΡΡΠ° Comercial———

long Commercial: Size ()

{

F = fopen («Database\Commercial.cm» ," rb");

long fle, flb;

fseek (F, 0,2);

fle = ftell (F);

fseek (F, 0,0);

flb = ftell (F);

fclose (F);

return (fle — flb)/sizeof (Commercial);

}

void Commercial: init (char f)

{

if (f == 'r') F = fopen («Database\Commercial.cm» ," rb");

if (f == 'w') F = fopen («Database\Commercial.cm» ," wb");

if (f == 'a') F = fopen («Database\Commercial.cm» ," ab");

}

void Commercial: SaveToF ()

{

fwrite (this, sizeof (Commercial), 1, F);

}

void Commercial: view (int i, DataGridView^ dgv)

{

String ^ tmp = gcnew String (Addr);

dgv->Rows[i]->Cells[0]->Value = tmp;

tmp = gcnew String (NumOfFloors);

dgv->Rows[i]->Cells[1]->Value = tmp;

tmp = gcnew String (Square);

dgv->Rows[i]->Cells[2]->Value = tmp;

tmp = gcnew String (Price);

dgv->Rows[i]->Cells[3]->Value = tmp;

}

void Commercial: input (int i, DataGridView ^dgv)

{

String^ s = dgv->Rows[i]->Cells[0]->Value->ToString ();

for (int j=0;jLength;j++) Addr[j] = s[j];

Addr[s->Length] = '';

s = dgv->Rows[i]->Cells[1]->Value->ToString ();

for (int j=0;jLength;j++) NumOfFloors[j] = s[j];

NumOfFloors[s->Length] = '';

s = dgv->Rows[i]->Cells[2]->Value->ToString ();

for (int j=0;jLength;j++) Square[j] = s[j];

Square[s->Length] = '';

s = dgv->Rows[i]->Cells[3]->Value->ToString ();

for (int j=0;jLength;j++) Price[j] =s[j];

Price[s->Length] = '';

}

bool Commercial: ReadFromF (int k)

{

fseek (F, k*sizeof (Commercial), 0);

char *A;

A = newchar[sizeof (Commercial)];

if (!fread (A, sizeof (Commercial), 1, F)) returnfalse;

int i = 4;

while (A[i]≠'') {Addr[(i-4)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-4)/2] = '';

i = 524;

while (A[i]≠'') {Square[(i-524)/2] = A[i]+A[i+1]*256;i+=2;}

Square[(i-524)/2] = '';

i = 534;

while (A[i]≠'') {Price[(i-534)/2] = A[i]+A[i+1]*256;i+=2;}

Price[(i-534)/2] = '';

i = 560;

while (A[i]≠'') {NumOfFloors[(i-560)/2] = A[i]+A[i+1]*256;i+=2;}

NumOfFloors[(i-560)/2] = '';

returntrue;

}

// ———ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²ΠΊΠ»Π°ΡΡΠ° Human———

void Human: init (char f)

{

if (f == 'r') F = fopen («Database\Humans.hm» ," rb");

if (f == 'w') F = fopen («Database\Humans.hm» ," wb");

if (f == 'a') F = fopen («Database\Humans.hm» ," ab");

}

void Human: uninit ()

{

fclose (F);

}

void Human: SaveToF ()

{

fwrite (this, sizeof (Human), 1, F);

}

bool Human: ReadFromF (int k)

{

fseek (F, k*sizeof (Human), 0);

char *A;

A = newchar[sizeof (Human)];

if (!fread (A, sizeof (Human), 1, F)) returnfalse;

int i = 0;

while (A[i]≠'') {FIO[(i)/2] = A[i]+A[i+1]*256;i+=2;}

FIO[(i)/2] = '';

i = 200;

while (A[i]≠'') {Tel[(i-200)/2] = A[i]+A[i+1]*256;i+=2;}

Tel[(i-200)/2] = '';

i = 240;

while (A[i]≠'') {Addr[(i-240)/2] = A[i]+A[i+1]*256;i+=2;}

Addr[(i-240)/2] = '';

returntrue;

}

void Human: Input (String^ fio, String^ tel, String^ adr)

{

for (int i = 0;iLength;i++) FIO[i] = fio[i]; //ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ string Π² wchar_t

FIO[fio->Length] = '';

for (int i = 0;iLength;i++) Tel[i] = tel[i];

Tel[tel->Length] = '';

for (int i = 0;iLength;i++) Addr[i] = adr[i];

Addr[adr->Length] = '';

}

String^ Human: OutFIO ()

{

returngcnew String (FIO);

}

String^ Human: OutTel ()

{

returngcnew String (Tel);

}

String^ Human: OutAddr ()

{

returngcnew String (Addr);

}

long Human: Size ()

{

F = fopen («Database\Humans.hm» ," rb");

long fle, flb;

fseek (F, 0,2);

fle = ftell (F);

fseek (F, 0,0);

flb = ftell (F);

fclose (F);

return (fle — flb)/sizeof (Human);

}

// ———ОписаниС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² класса ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²———

ContH:ContH ()

{

prev = next = nullptr;

H = new Human;

}

ContH * ContH: Add (Human * h)

{

ContH * t = new ContH;

this->H = h;

this->next = t;

t->next = nullptr;

t->prev = this;

return t;

}

ContH * ContH: Del ()

{

ContH * t,*d;

d = this;

if (this->next == nullptr)

{

if (this->prev ≠ nullptr)

{

t = d->prev;

t->next = nullptr;

delete d;

return t;

}

return d;

}

else

{

if (this->prev == nullptr)

{

t = d->next;

t->prev = nullptr;

delete d;

return t;

}

t = d->prev;

t->next = d->next;

t->next->prev = t;

delete d;

return t;

}

}

ContH * ContH: Next ()

{

returnthis->next;

}

ContH * ContH: Prev ()

{

returnthis->prev;

}

Human * ContH: Value ()

{

return H;

}

ContH * ContH: Item (int i, ContH * B)

{

ContH * t = B;

for (int k=0;k

t = t->Next ();

return t;

}

//Form1.h

#include" BaseFlats. h"

#include

#pragmaonce

ContH *beg,*end;

namespace Flats {

usingnamespace System;

usingnamespace System: ComponentModel;

usingnamespace System: Collections;

usingnamespace System: Windows:Forms;

usingnamespace System: Data;

usingnamespace System: Drawing;

/// Summary for Form1

/// WARNING: If you change the name of this class, you will need to change the

/// 'Resource File Name' property for the managed resource compiler tool

/// associated with all .resx files this class depends on. Otherwise,

/// the designers will not be able to interact properly with localized

/// resources associated with this form.

publicrefclass Form1: public System: Windows:Forms:Form

{

public:

Form1(void)

{

InitializeComponent ();

//TODO: Add the constructor code here

}

protected:

/// Clean up any resources being used.

~Form1()

{

if (components)

{

delete components;

}

}

protected:

private: System: Windows:Forms:DataGridView^ dataGridView1;

private: System: Windows:Forms:DataGridView^ dataGridView2;

private: System: Windows:Forms:DataGridView^ dataGridView3;

private: System: Windows:Forms:TabControl^ tabControl1;

private: System: Windows:Forms:TabPage^ flatsPage;

private: System: Windows:Forms:TabPage^ housePage;

private: System: Windows:Forms:TabPage^ commPage;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column1;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column4;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column9;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column5;

private: System: Windows:Forms:DataGridViewCheckBoxColumn^ Column6;

private: System: Windows:Forms:DataGridViewCheckBoxColumn^ Column7;

private: System: Windows:Forms:DataGridViewCheckBoxColumn^ Column8;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column10;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn2;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn3;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn4;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn5;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn1;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ Column2;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn6;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn7;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn8;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn9;

private: System: Windows:Forms:DataGridViewCheckBoxColumn^ dataGridViewCheckBoxColumn1;

private: System: Windows:Forms:DataGridViewCheckBoxColumn^ Column3;

private: System: Windows:Forms:DataGridViewTextBoxColumn^ dataGridViewTextBoxColumn10;

private: System: Windows:Forms:ListBox^ listBox1;

private: System: Windows:Forms:TextBox^ textBox1;

private: System: Windows:Forms:TextBox^ textBox2;

private: System: Windows:Forms:TextBox^ textBox3;

private: System: Windows:Forms:MenuStrip^ menuStrip1;

private: System: Windows:Forms:ToolStripMenuItem^ fileToolStripMenuItem;

private: System: Windows:Forms:ToolStripMenuItem^ saveToolStripMenuItem;

private: System: Windows:Forms:ToolStripMenuItem^ exitToolStripMenuItem;

private: System: Windows:Forms:ToolStripMenuItem^ edToolStripMenuItem;

private: System: Windows:Forms:ToolStripMenuItem^ editToolStripMenuItem;

private: System: Windows:Forms:Button^ bAdd1;

private: System: Windows:Forms:Button^ bEdit2;

private: System: Windows:Forms:Button^ bDel1;

private: System: Windows:Forms:Form^f1;

private: System: Windows:Forms:TextBox^tb1;

private: System: Windows:Forms:TextBox^tb2;

private: System: Windows:Forms:TextBox^tb3;

private: System: Windows:Forms:Button^bAdd;

private:

/// Required designer variable.

System:ComponentModel:Container ^components;

#pragmaregion Windows Form Designer generated code

/// Required method for Designer support — do not modify

/// the contents of this method with the code editor.

void InitializeComponent (void)

{

this->dataGridView1 = (gcnew System: Windows:Forms:DataGridView ());

this->Column1 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->Column4 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->Column9 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->Column5 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->Column6 = (gcnew System: Windows:Forms:DataGridViewCheckBoxColumn ());

this->Column7 = (gcnew System: Windows:Forms:DataGridViewCheckBoxColumn ());

this->Column8 = (gcnew System: Windows:Forms:DataGridViewCheckBoxColumn ());

this->Column10 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridView2 = (gcnew System: Windows:Forms:DataGridView ());

this->dataGridViewTextBoxColumn1 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->Column2 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn6 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn7 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn8 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn9 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewCheckBoxColumn1 = (gcnew System: Windows:Forms:DataGridViewCheckBoxColumn ());

this->Column3 = (gcnew System: Windows:Forms:DataGridViewCheckBoxColumn ());

this->dataGridViewTextBoxColumn10 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->tabControl1 = (gcnew System: Windows:Forms:TabControl ());

this->flatsPage = (gcnew System: Windows:Forms:TabPage ());

this->housePage = (gcnew System: Windows:Forms:TabPage ());

this->commPage = (gcnew System: Windows:Forms:TabPage ());

this->dataGridView3 = (gcnew System: Windows:Forms:DataGridView ());

this->dataGridViewTextBoxColumn2 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn3 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn4 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->dataGridViewTextBoxColumn5 = (gcnew System: Windows:Forms:DataGridViewTextBoxColumn ());

this->listBox1 = (gcnew System: Windows:Forms:ListBox ());

this->bEdit2 = (gcnew System: Windows:Forms:Button ());

this->textBox1 = (gcnew System: Windows:Forms:TextBox ());

this->textBox2 = (gcnew System: Windows:Forms:TextBox ());

this->textBox3 = (gcnew System: Windows:Forms:TextBox ());

this->menuStrip1 = (gcnew System: Windows:Forms:MenuStrip ());

this->fileToolStripMenuItem = (gcnew System: Windows:Forms:ToolStripMenuItem ());

this->saveToolStripMenuItem = (gcnew System: Windows:Forms:ToolStripMenuItem ());

this->exitToolStripMenuItem = (gcnew System: Windows:Forms:ToolStripMenuItem ());

this->edToolStripMenuItem = (gcnew System: Windows:Forms:ToolStripMenuItem ());

this->editToolStripMenuItem = (gcnew System: Windows:Forms:ToolStripMenuItem ());

this->bAdd1 = (gcnew System: Windows:Forms:Button ());

this->bDel1 = (gcnew System: Windows:Forms:Button ());

(cli:safe_cast (this->dataGridView1))->BeginInit ();

(cli:safe_cast (this->dataGridView2))->BeginInit ();

this->tabControl1->SuspendLayout ();

this->flatsPage->SuspendLayout ();

this->housePage->SuspendLayout ();

this->commPage->SuspendLayout ();

(cli:safe_cast (this->dataGridView3))->BeginInit ();

this->menuStrip1->SuspendLayout ();

this->SuspendLayout ();

// dataGridView1

this->dataGridView1->ColumnHeadersHeightSizeMode = System: Windows:Forms:DataGridViewColumnHeadersHeightSizeMode:AutoSize;

this->dataGridView1->Columns->AddRange (gcnew cli: array< System: Windows:Forms:DataGridViewColumn^ >(8) {this->Column1,

this->Column4, this->Column9, this->Column5, this->Column6, this->Column7, this->Column8, this->Column10});

this->dataGridView1->Location = System: Drawing:Point (0, 0);

this->dataGridView1->Name = L" dataGridView1″ ;

this->dataGridView1->RowTemplate->Height = 24;

this->dataGridView1->Size = System: Drawing:Size (757, 308);

this->dataGridView1->TabIndex = 0;

this->dataGridView1->RowsAdded += gcnew System: Windows:Forms:DataGridViewRowsAddedEventHandler (this, &Form1:dataGridView1_RowsAdded);

// Column1

this->Column1->HeaderText = L" АдрСсквартиры" ;

this->Column1->Name = L" Column1″ ;

this->Column1->Width = 305;

// Column4

this->Column4->HeaderText = L" ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ" ;

this->Column4->Name = L" Column4″ ;

this->Column4->Width = 75;

// Column9

this->Column9->HeaderText = L" Кол-Π²ΠΎΠΊΠΎΠΌΠ½Π°Ρ‚" ;

this->Column9->Name = L" Column9″ ;

this->Column9->Width = 130;

// Column5

this->Column5->HeaderText = L" Π­Ρ‚Π°ΠΆ" ;

this->Column5->Name = L" Column5″ ;

this->Column5->Width = 50;

// Column6

this->Column6->HeaderText = L" Π’Π΅Π»Π΅Ρ„ΠΎΠ½" ;

this->Column6->Name = L" Column6″ ;

this->Column6->Width = 75;

// Column7

this->Column7->HeaderText = L" Π Π΅ΠΌΠΎΠ½Ρ‚" ;

this->Column7->Name = L" Column7″ ;

this->Column7->Width = 65;

// Column8

this->Column8->HeaderText = L" ΠŸΡƒΡΡ‚Π°Ρ" ;

this->Column8->Name = L" Column8″ ;

this->Column8->Width = 60;

// Column10

this->Column10->HeaderText = L" Π¦Π΅Π½Π°" ;

this->Column10->Name = L" Column10″ ;

// dataGridView2

this->dataGridView2->ColumnHeadersHeightSizeMode = System: Windows:Forms:DataGridViewColumnHeadersHeightSizeMode:AutoSize;

this->dataGridView2->Columns->AddRange (gcnew cli: array< System: Windows:Forms:DataGridViewColumn^ >(9) {this->dataGridViewTextBoxColumn1,

this->Column2, this->dataGridViewTextBoxColumn6, this->dataGridViewTextBoxColumn7, this->dataGridViewTextBoxColumn8, this->dataGridViewTextBoxColumn9,

this->dataGridViewCheckBoxColumn1, this->Column3, this->dataGridViewTextBoxColumn10});

this->dataGridView2->Location = System: Drawing:Point (1, 0);

this->dataGridView2->Name = L" dataGridView2″ ;

this->dataGridView2->RowTemplate->Height = 24;

this->dataGridView2->Size = System: Drawing:Size (756, 308);

this->dataGridView2->TabIndex = 1;

this->dataGridView2->RowsAdded += gcnew System: Windows:Forms:DataGridViewRowsAddedEventHandler (this, &Form1:dataGridView2_RowsAdded);

// dataGridViewTextBoxColumn1

this->dataGridViewTextBoxColumn1->HeaderText = L" АдрСс" ;

this->dataGridViewTextBoxColumn1->Name = L" dataGridViewTextBoxColumn1″ ;

this->dataGridViewTextBoxColumn1->Width = 305;

// Column2

this->Column2->HeaderText = L" ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ" ;

this->Column2->Name = L" Column2″ ;

this->Column2->Width = 75;

// dataGridViewTextBoxColumn6

this->dataGridViewTextBoxColumn6->HeaderText = L" Кол-воэтаТСй" ;

this->dataGridViewTextBoxColumn6->Name = L" dataGridViewTextBoxColumn6″ ;

this->dataGridViewTextBoxColumn6->Width = 130;

// dataGridViewTextBoxColumn7

this->dataGridViewTextBoxColumn7->HeaderText = L" Кол-Π²ΠΎΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€" ;

this->dataGridViewTextBoxColumn7->Name = L" dataGridViewTextBoxColumn7″ ;

this->dataGridViewTextBoxColumn7->Width = 140;

// dataGridViewTextBoxColumn8

this->dataGridViewTextBoxColumn8->HeaderText = L" Кол-Π²ΠΎΠΊΠΎΠΌΠ½Π°Ρ‚" ;

this->dataGridViewTextBoxColumn8->Name = L" dataGridViewTextBoxColumn8″ ;

this->dataGridViewTextBoxColumn8->Width = 130;

// dataGridViewTextBoxColumn9

this->dataGridViewTextBoxColumn9->HeaderText = L" ΠžΡ‚ΠΎΠΏΠ»Π΅Π½ΠΈΠ΅" ;

this->dataGridViewTextBoxColumn9->Name = L" dataGridViewTextBoxColumn9″ ;

// dataGridViewCheckBoxColumn1

this->dataGridViewCheckBoxColumn1->HeaderText = L" ΠšΠ°Π½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ" ;

this->dataGridViewCheckBoxColumn1->Name = L" dataGridViewCheckBoxColumn1″ ;

// Column3

this->Column3->HeaderText = L" Π’Π΅Π»Π΅Ρ„ΠΎΠ½" ;

this->Column3->Name = L" Column3″ ;

this->Column3->Resizable = System: Windows:Forms:DataGridViewTriState:True;

this->Column3->SortMode = System: Windows:Forms:DataGridViewColumnSortMode:Automatic;

this->Column3->Width = 75;

// dataGridViewTextBoxColumn10

this->dataGridViewTextBoxColumn10->HeaderText = L" Π¦Π΅Π½Π°" ;

this->dataGridViewTextBoxColumn10->Name = L" dataGridViewTextBoxColumn10″ ;

// tabControl1

this->tabControl1->Controls->Add (this->flatsPage);

this->tabControl1->Controls->Add (this->housePage);

this->tabControl1->Controls->Add (this->commPage);

this->tabControl1->Location = System: Drawing:Point (12, 31);

this->tabControl1->Name = L" tabControl1″ ;

this->tabControl1->SelectedIndex = 0;

this->tabControl1->Size = System: Drawing:Size (765, 337);

this->tabControl1->TabIndex = 4;

// flatsPage

this->flatsPage->AutoScroll = true;

this->flatsPage->Controls->Add (this->dataGridView1);

this->flatsPage->Location = System: Drawing:Point (4, 25);

this->flatsPage->Name = L" flatsPage" ;

this->flatsPage->Padding = System: Windows:Forms:Padding (3);

this->flatsPage->Size = System: Drawing:Size (757, 308);

this->flatsPage->TabIndex = 0;

this->flatsPage->Text = L" ΠšΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹" ;

this->flatsPage->UseVisualStyleBackColor = true;

// housePage

this->housePage->AutoScroll = true;

this->housePage->Controls->Add (this->dataGridView2);

this->housePage->Location = System: Drawing:Point (4, 25);

this->housePage->Name = L" housePage" ;

this->housePage->Padding = System: Windows:Forms:Padding (3);

this->housePage->Size = System: Drawing:Size (757, 308);

this->housePage->TabIndex = 1;

this->housePage->Text = L" ЧастныСдома" ;

this->housePage->UseVisualStyleBackColor = true;

// commPage

this->commPage->AutoScroll = true;

this->commPage->Controls->Add (this->dataGridView3);

this->commPage->Location = System: Drawing:Point (4, 25);

this->commPage->Name = L" commPage" ;

this->commPage->Size = System: Drawing:Size (757, 308);

this->commPage->TabIndex = 2;

this->commPage->Text = L" ΠšΠΎΠΌΠ΅Ρ€Ρ‡Π΅ΡΠΊΠΈΠ΅Π·Π΄Π°Π½ΠΈΡ" ;

this->commPage->UseVisualStyleBackColor = true;

// dataGridView3

this->dataGridView3->ColumnHeadersHeightSizeMode = System: Windows:Forms:DataGridViewColumnHeadersHeightSizeMode:AutoSize;

this->dataGridView3->Columns->AddRange (gcnew cli: array< System: Windows:Forms:DataGridViewColumn^ >(4) {this->dataGridViewTextBoxColumn2,

this->dataGridViewTextBoxColumn3, this->dataGridViewTextBoxColumn4, this->dataGridViewTextBoxColumn5});

this->dataGridView3->Location = System: Drawing:Point (0, 0);

this->dataGridView3->Name = L" dataGridView3″ ;

this->dataGridView3->RowTemplate->Height = 24;

this->dataGridView3->Size = System: Drawing:Size (757, 308);

this->dataGridView3->TabIndex = 2;

// dataGridViewTextBoxColumn2

this->dataGridViewTextBoxColumn2->HeaderText = L" АдрСсздания" ;

this->dataGridViewTextBoxColumn2->Name = L" dataGridViewTextBoxColumn2″ ;

this->dataGridViewTextBoxColumn2->Width = 400;

// dataGridViewTextBoxColumn3

this->dataGridViewTextBoxColumn3->HeaderText = L" Кол-воэтаТСй" ;

this->dataGridViewTextBoxColumn3->Name = L" dataGridViewTextBoxColumn3″ ;

this->dataGridViewTextBoxColumn3->Width = 130;

// dataGridViewTextBoxColumn4

this->dataGridViewTextBoxColumn4->HeaderText = L" ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ" ;

this->dataGridViewTextBoxColumn4->Name = L" dataGridViewTextBoxColumn4″ ;

// dataGridViewTextBoxColumn5

this->dataGridViewTextBoxColumn5->HeaderText = L" Π¦Π΅Π½Π°" ;

this->dataGridViewTextBoxColumn5->Name = L" dataGridViewTextBoxColumn5″ ;

// listBox1

this->listBox1->FormattingEnabled = true;

this->listBox1->ItemHeight = 16;

this->listBox1->Location = System: Drawing:Point (12, 374);

this->listBox1->Name = L" listBox1″ ;

this->listBox1->Size = System: Drawing:Size (267, 84);

this->listBox1->TabIndex = 5;

this->listBox1->SelectedIndexChanged += gcnew System: EventHandler (this, &Form1:listBox1_SelectedIndexChanged);

// bEdit2

this->bEdit2->Location = System: Drawing:Point (558, 374);

this->bEdit2->Name = L" bEdit2″ ;

this->bEdit2->Size = System: Drawing:Size (219, 27);

this->bEdit2->TabIndex = 6;

this->bEdit2->Text = L" Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°" ;

this->bEdit2->UseVisualStyleBackColor = true;

this->bEdit2->Click += gcnew System: EventHandler (this, &Form1:bEdit2_Click);

// textBox1

this->textBox1->Location = System: Drawing:Point (285, 376);

this->textBox1->Name = L" textBox1″ ;

this->textBox1->ReadOnly = true;

this->textBox1->Size = System: Drawing:Size (267, 22);

this->textBox1->TabIndex = 7;

// textBox2

this->textBox2->Location = System: Drawing:Point (285, 404);

this->textBox2->Name = L" textBox2″ ;

this->textBox2->ReadOnly = true;

this->textBox2->Size = System: Drawing:Size (267, 22);

this->textBox2->TabIndex = 8;

// textBox3

this->textBox3->Location = System: Drawing:Point (285, 432);

this->textBox3->Name = L" textBox3″ ;

this->textBox3->ReadOnly = true;

this->textBox3->Size = System: Drawing:Size (267, 22);

this->textBox3->TabIndex = 9;

// menuStrip1

this->menuStrip1->Items->AddRange (gcnew cli: array< System: Windows:Forms:ToolStripItem^ >(2) {this->fileToolStripMenuItem,

this->edToolStripMenuItem});

this->menuStrip1->Location = System: Drawing:Point (0, 0);

this->menuStrip1->Name = L" menuStrip1″ ;

this->menuStrip1->Size = System: Drawing:Size (789, 28);

this->menuStrip1->TabIndex = 10;

this->menuStrip1->Text = L" menuStrip1″ ;

// fileToolStripMenuItem

this->fileToolStripMenuItem->DropDownItems->AddRange (gcnew cli: array< System: Windows:Forms:ToolStripItem^ >(2) {this->saveToolStripMenuItem,

this->exitToolStripMenuItem});

this->fileToolStripMenuItem->Name = L" fileToolStripMenuItem" ;

this->fileToolStripMenuItem->Size = System: Drawing:Size (57, 24);

this->fileToolStripMenuItem->Text = L" Π€Π°ΠΉΠ»" ;

// saveToolStripMenuItem

this->saveToolStripMenuItem->Name = L" saveToolStripMenuItem" ;

this->saveToolStripMenuItem->ShortcutKeys = static_cast ((System:Windows:Forms:Keys:Control | System: Windows:Forms:Keys:S));

this->saveToolStripMenuItem->Size = System: Drawing:Size (237, 24);

this->saveToolStripMenuItem->Text = L" Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒΠ±Π°Π·Ρƒ" ;

this->saveToolStripMenuItem->Click += gcnew System: EventHandler (this, &Form1:saveToolStripMenuItem_Click);

// exitToolStripMenuItem

this->exitToolStripMenuItem->Name = L" exitToolStripMenuItem" ;

this->exitToolStripMenuItem->ShortcutKeys = static_cast ((System:Windows:Forms:Keys:Alt | System: Windows:Forms:Keys:F4));

this->exitToolStripMenuItem->Size = System: Drawing:Size (237, 24);

this->exitToolStripMenuItem->Text = L" Π’Ρ‹Ρ…ΠΎΠ΄" ;

this->exitToolStripMenuItem->Click += gcnew System: EventHandler (this, &Form1:exitToolStripMenuItem_Click);

// edToolStripMenuItem

this->edToolStripMenuItem->DropDownItems->AddRange (gcnew cli: array< System: Windows:Forms:ToolStripItem^ >(1) {this->editToolStripMenuItem});

this->edToolStripMenuItem->Name = L" edToolStripMenuItem" ;

this->edToolStripMenuItem->Size = System: Drawing:Size (72, 24);

this->edToolStripMenuItem->Text = L" ΠŸΡ€Π°Π²ΠΊΠ°" ;

// editToolStripMenuItem

this->editToolStripMenuItem->Name = L" editToolStripMenuItem" ;

this->editToolStripMenuItem->ShortcutKeys = static_cast ((System:Windows:Forms:Keys:Control | System: Windows:Forms:Keys:E));

this->editToolStripMenuItem->Size = System: Drawing:Size (230, 24);

this->editToolStripMenuItem->Text = L" Π Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ" ;

this->editToolStripMenuItem->Click += gcnew System: EventHandler (this, &Form1:editToolStripMenuItem_Click);

// bAdd1

this->bAdd1->Location = System: Drawing:Point (558, 404);

this->bAdd1->Name = L" bAdd1″ ;

this->bAdd1->Size = System: Drawing:Size (219, 23);

this->bAdd1->TabIndex = 11;

this->bAdd1->Text = L" Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°" ;

this->bAdd1->UseVisualStyleBackColor = true;

this->bAdd1->Click += gcnew System: EventHandler (this, &Form1:bAdd1_Click);

// bDel1

this->bDel1->Location = System: Drawing:Point (558, 432);

this->bDel1->Name = L" bDel1″ ;

this->bDel1->Size = System: Drawing:Size (219, 23);

this->bDel1->TabIndex = 12;

this->bDel1->Text = L" Π£Π΄Π°Π»ΠΈΡ‚ΡŒΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°" ;

this->bDel1->UseVisualStyleBackColor = true;

this->bDel1->Click += gcnew System: EventHandler (this, &Form1:bDel1_Click);

// Form1

this->AutoScaleDimensions = System: Drawing:SizeF (8, 16);

this->AutoScaleMode = System: Windows:Forms:AutoScaleMode:Font;

this->ClientSize = System: Drawing:Size (789, 468);

this->Controls->Add (this->bDel1);

this->Controls->Add (this->bAdd1);

this->Controls->Add (this->textBox3);

this->Controls->Add (this->textBox2);

this->Controls->Add (this->textBox1);

this->Controls->Add (this->bEdit2);

this->Controls->Add (this->listBox1);

this->Controls->Add (this->tabControl1);

this->Controls->Add (this->menuStrip1);

this->FormBorderStyle = System: Windows:Forms:FormBorderStyle:FixedSingle;

this->MainMenuStrip = this->menuStrip1;

this->Name = L" Form1″ ;

this->Text = L" ΠΠ΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡ‚ΡŒ" ;

this->Load += gcnew System: EventHandler (this, &Form1:Form1_Load);

this->FormClosed += gcnew System: Windows:Forms:FormClosedEventHandler (this, &Form1:Form1_FormClosed);

(cli:safe_cast (this->dataGridView1))->EndInit ();

(cli:safe_cast (this->dataGridView2))->EndInit ();

this->tabControl1->ResumeLayout (false);

this->flatsPage->ResumeLayout (false);

this->housePage->ResumeLayout (false);

this->commPage->ResumeLayout (false);

(cli:safe_cast (this->dataGridView3))->EndInit ();

this->menuStrip1->ResumeLayout (false);

this->menuStrip1->PerformLayout ();

this->ResumeLayout (false);

this->PerformLayout ();

}

#pragmaendregion

private: System: Void Form1_Load (System:Object^ sender, System: EventArgs^ e) {

beg = new ContH;// ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ списка ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²

end = beg;

Flat F;// Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Flat ΠΈΠ·Ρ„Π°ΠΉΠ»Π°

int i = 0;

F.init ();// привязкакфайлу

while (F.ReadFromF (i))

{

dataGridView1->Rows->Add ();//Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строки Π² Π΄Π³Π²

F.view (i++, dataGridView1);//Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ строки элСмСнтами

}

dataGridView1->ReadOnly = true;

F.uninit ();

House H;// Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° House ΠΈΠ·Ρ„Π°ΠΉΠ»Π°

i = 0;

H.init ();

while (H.ReadFromF (i))

{

dataGridView2->Rows->Add ();

H.view (i++, dataGridView2);

}

dataGridView2->ReadOnly = true;

H.uninit ();

Commercial C;// Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Commercial ΠΈΠ·Ρ„Π°ΠΉΠ»Π°

i = 0;

C.init ();

while (C.ReadFromF (i))

{

dataGridView3->Rows->Add ();

C.view (i++, dataGridView3);

}

dataGridView3->ReadOnly = true;

C.uninit ();

Human *hm;//Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Π² ΡΠΏΠΈΡΠΎΠΊ

hm = new Human;

i=0;

hm->init ();

while (hm->ReadFromF (i++))

{

end = end->Add (hm);

listBox1->Items->Add (hm->OutFIO ());// ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² listBox1

hm->uninit ();

hm = new Human;

hm->init ();

}

hm->uninit ();

}

private: System: Void dataGridView1_RowsAdded (System:Object^ sender, System: Windows:Forms:DataGridViewRowsAddedEventArgs^ e) {

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[4]->Value = false;

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[5]->Value = false;

dataGridView1->Rows[dataGridView1->RowCount-1]->Cells[6]->Value = false;

}

private: System: Void dataGridView2_RowsAdded (System:Object^ sender, System: Windows:Forms:DataGridViewRowsAddedEventArgs^ e) {

dataGridView2->Rows[dataGridView2->RowCount-1]->Cells[6]->Value = false;

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