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

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС высокого уровня

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

Π₯ΠΎΡ…Π»ΠΎΠ² Π”. Π“., Π—Π°Ρ…Π°Ρ€ΠΎΠ²Π° Π—. Π₯. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ: Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС.- Казань: Изд-Π²ΠΎ Казан. гос. Ρ‚Π΅Ρ…Π½. ΡƒΠ½-Ρ‚Π°, 2005. — 48 с. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 2. По Π·Π°ΠΏΡ€ΠΎΡΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π½ΠΎΠΌΠ΅Ρ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню (см. Ρ€Π°Π·Π΄Π΅Π» 2.3). Π₯ΠΎΡ…Π»ΠΎΠ² Π”. Π“. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ программирования. Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС. — ΠšΠ°Π·Π°Π½ΡŒ. Изд-Π²ΠΎ Казан… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС высокого уровня (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

1. Π—Π°Π΄Π°Π½ΠΈΠ΅

Π”Π°Π½ Ρ„Π°ΠΉΠ», состоящий свСдСния ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°Ρ… Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° записи Ρ„Π°ΠΉΠ»Π°:

Β· Ѐамилия ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»Ρ‹ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°

Β· ΠœΠ°Ρ€ΠΊΠ° автомобиля

Β· НомСр автомобиля ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ ь Π€Π°ΠΌΠΈΠ»ΠΈΡŽ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° автомобиля с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ ь Π€Π°ΠΌΠΈΠ»ΠΈΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° автомобиля Π΄Π°Π½Π½ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ (Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС) ь ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ

2. ОписаниС примСнСния

2.1 Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Ρ„Π°ΠΉΠ» proga. cpp) ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ· ΡΡ€Π΅Π΄Ρ‹ TurboC 3.0 (ΠΈΠ»ΠΈ Dev-Cpp) Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки MSDOS, ввСдя proga. exe

2.2 Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ находятся Π² ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Число строк Π² Ρ„Π°ΠΉΠ»Π΅ — ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅. КаТдая строка содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°Ρ… (Π΄ΠΎ 17 символов), ΠΌΠ°Ρ€ΠΊΡƒ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ (Π΄ΠΎ 7 символов), Π½ΠΎΠΌΠ΅Ρ€Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ (6 символов). ΠŸΡ€ΠΈΠΌΠ΅Ρ€ строки Ρ„Π°ΠΉΠ»Π°:

Ignatev A.S. Nissan P990CC

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 2. По Π·Π°ΠΏΡ€ΠΎΡΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π½ΠΎΠΌΠ΅Ρ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню (см. Ρ€Π°Π·Π΄Π΅Π» 2.3).

2.3 Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° ΡΠΊΡ€Π°Π½ мСню, прСдставлСнноС Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1 :

Рис.1

ΠŸΡ€ΠΈΠ²Ρ‹Π±ΠΎΡ€Π΅ΠΏΡƒΠ½ΠΊΡ‚Π°2наэкранвыводитсясообщСниС:

Vveditenomermashini

ПослС Π²Π²ΠΎΠ΄Π° Π½ΠΎΠΌΠ΅Ρ€Π° ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ P990CC выводится Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ прСдставлСнный Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2 :

Рис. 2

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… для ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню см. Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 3.

2.4 БообщСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

НиТС приводится ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… сообщСний ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

1. faila BAZA net

2. Vibirete nomer punkta menu

3. marki «…» net

4. Dlya vihoda v menu najmite lubyu knopky

5. vvedite nomer mashini

6. Nomer vveden ne pravelno

7. vvedite marku mashini

8. Vvidite nomer ot 1 do 5

3. ОписаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

3.1 ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

Π—Π°Π΄Π°Ρ‡Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ:

Π’Ρ‹Π²ΠΎΠ΄ Π½Π° ΡΠΊΡ€Π°Π½ содСрТимого Ρ„Π°ΠΉΠ»Π° BAZA. txt

Поиск ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌ Поиск Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎ ΠΌΠ°Ρ€ΠΊΠ΅ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠ³ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° ΡΠΊΡ€Π°Π½ мСню (см. Π ΠΈΡ. 1).

3.2 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Рис. 3. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ структура ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° состоит ΠΈΠ· ΡˆΠ΅ΡΡ‚ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: Π³Π»Π°Π²Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main ΠΈ ΠΏΡΡ‚ΠΈ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ:

SORT — сортировка Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ отправлСния

PUN1 — функция Π²Ρ‹Π²ΠΎΠ΄Π° Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ Π΄Π΅ΡΡΡ‚ΡŒ строк

PUN2 — функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ ΠΈ ΠΌΠ°Ρ€ΠΊΠ΅

PUN3 — функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π΅

PUN4 — функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ машин

3.3 ОписаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

3.3.1 main — главная функция

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

intmain ()

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

0 — Π² Π΅ΡΠ»ΠΈ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ» Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½;

1 — Π² ΡΠ»ΡƒΡ‡Π°Π΅ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

f — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅;

n — Π½ΠΎΠΌΠ΅Ρ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню.

Рис. 4. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main ()

3.3.2 PUN1— Ρ„ункция Π²Ρ‹Π²ΠΎΠ΄Π° Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ Π΄Π΅ΡΡΡ‚ΡŒ строк

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

voidPUN1 (TAB *pz, intl);

Рис. 5. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈPUN1 (TAB *tab, intl)

3.3.3 PUN2 - функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ ΠΈ ΠΌΠ°Ρ€ΠΊΠ΅

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

voidPUN2 (TAB *tab, intl)

Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

r-Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€

i, j, p, u-счСтчики Рис. 6. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ PUN2 (TAB *tab, intl)

3.3.4 PUN3 - функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅ ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π΅

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

voidPUN3(TAB *tab, intl)

Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

i, j, z, t-счСтчик

mar[]-ввСдСнная ΠΌΠ°Ρ€ΠΊΠ° ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Рис. 7. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ PUN3 (TAB *tab, intl)

3.3.5 PUN4 - функция Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ количСствС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ машин

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

voidPUN4(TAB *tab, intl)

Π Π°Π±ΠΎΡ‡ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

w-количСство машин

z, j — счСтчики Рис. 8. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ PUN5(TAB *tab, intl)

3.3.6 SORT - сортировка Ρ„Π°ΠΉΠ»Π°

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

void SORT (TAB *pz, int l)

Рис. 9. Π‘Π»ΠΎΠΊ-схСма Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SORT (TAB *pz, int l)

4. ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

4.1 ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСстов

4.1.1 ВСсты Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика

Для проСктирования тСстов ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ эквивалСнтного разбиСния Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ…/Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΎΠ±Π»Π°ΡΡ‚ΠΈ (классы) эквивалСнтности составлСн список ситуаций, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΈΠΌ тСстом. ВСстовыС ситуации ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π² Ρ‚Π°Π±Π». 4.1, Π² ΡΠΊΠΎΠ±ΠΊΠ°Ρ… ΡƒΠΊΠ°Π·Π°Π½Ρ‹ ΠΈΡ… Π½ΠΎΠΌΠ΅Ρ€Π°.

Π’Π°Π±Π»ΠΈΡ†Π° 4.1 ΠžΠ±Π»Π°ΡΡ‚ΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ…/Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… тСстов ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π’Ρ…ΠΎΠ΄Π½ΠΎΠ΅/Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ условиС (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)

" ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅" классы эквивалСнтности

" ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Π΅" Β¦ классы эквивалСнтности

НомСр ΠΏΡƒΠ½ΠΊΡ‚Π° мСню

1.5(1)

<1 (2), >5 (3)

Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ»

сущСствуСт (4),

Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚ (5)

НомСр ΠΌΠ°ΡˆΠΈΠ½Ρ‹

сущСствуСт (6), Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ (7)

Π’Π²Π΅Π΄Π΅Π½ Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ (8)

ΠœΠ°Ρ€ΠΊΠ° ΠΌΠ°ΡˆΠΈΠ½Ρ‹

сущСствуСт (9), Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°

Для создания пСрСчислСнных тСстовых ситуаций Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ тСсты, прСдставлСнныС Π² Ρ‚Π°Π±Π». 4.2. Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ тСстов ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π»ΠΈΡΡŒ Π±Π»ΠΈΠΆΠ΅ ΠΊ Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌ классов эквивалСнтности.

Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ящик

Π’Π°Π±Π»ΠΈΡ†Π° 4.2. ВСсты Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π’Ρ…ΠΎΠ΄

Π’Ρ‹Ρ…ΠΎΠ΄

Осн. сит.

НомСр ΠΏΡƒΠ½ΠΊΡ‚Π° мСню n=9

НуТно Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΡ‚ 1 Π΄ΠΎ 5

НомСр ΠΏΡƒΠ½ΠΊΡ‚Π° мСню n=1

Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ PUN1(pz, l)

НомСр ΠΏΡƒΠ½ΠΊΡ‚Π° мСню n=0

НуТно Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΡ‚ 1 Π΄ΠΎ 5

Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ» сущСствуСт

МСню

Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ» Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚

Π€Π°ΠΉΠ» «BAZA.txt» Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½

T890AA

Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠ°ΡˆΠΈΠ½Π΅

Π‘055PM

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ ΠΌΠ°ΡˆΠΈΠ½Π° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π°

Π’5555Π’

НС ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π²Π²Π΅Π΄Π΅Π½ Π½ΠΎΠΌΠ΅Ρ€

Lada

Π’Ρ‹Π²ΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°Ρ… этой ΠΌΠ°Ρ€ΠΊΠΈ

KIA

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°Ρ… этой ΠΌΠ°Ρ€ΠΊΠΈ Π½Π΅Ρ‚

4.1.2 ВСсты Π±Π΅Π»ΠΎΠ³ΠΎ ящика

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ тСсты ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π±Π΅Π»ΠΎΠ³ΠΎ ящика ΠΏΠΎ ΠΊΡ€ΠΈΡ‚Сриям ΠΎΡ…Π²Π°Ρ‚Π° основных ΠΏΡƒΡ‚Π΅ΠΉ выполнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ составныС условия. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ использован ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ покрытия условий (см. Ρ‚Π°Π±Π». 4.3).

Π’Π°Π±Π»ΠΈΡ†Π° 4.3. ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠ΅ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ условий тСстами Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика

ΠœΠΎΠ΄ΡƒΠ»ΡŒ

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ€Π½ΠΎΠ΅ условиС

НомСра тСстов

Π˜ΡΡ‚ΠΈΠ½Π°

Π›ΠΎΠΆΡŒ

main

if ((n>'0')&&(n<'5'))

2, 3

main

if (file==NULL)

PUN2

for (j=0;j<6;j++)

6,7

PUN3

if (strcmp (tab[j]. marka, mar)==0)

9,10

Π›ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π°

1. Π₯ΠΎΡ…Π»ΠΎΠ² Π”. Π“. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ программирования. Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС. — ΠšΠ°Π·Π°Π½ΡŒ. Изд-Π²ΠΎ Казан. гос. Ρ‚Π΅Ρ…Π½. ΡƒΠ½-Ρ‚Π°, 2005. — 63 с.

2. Π₯ΠΎΡ…Π»ΠΎΠ² Π”. Π“. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹. Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС. — ΠšΠ°Π·Π°Π½ΡŒ: Изд-Π²ΠΎ Казан. гос. Ρ‚Π΅Ρ…Π½. ΡƒΠ½-Ρ‚Π°, 2005. — 102 с.

3. Π₯ΠΎΡ…Π»ΠΎΠ² Π”. Π“., Π—Π°Ρ…Π°Ρ€ΠΎΠ²Π° Π—. Π₯. ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°ΠΌ: Π£Ρ‡Π΅Π±Π½ΠΎΠ΅ пособиС.- Казань: Изд-Π²ΠΎ Казан. гос. Ρ‚Π΅Ρ…Π½. ΡƒΠ½-Ρ‚Π°, 2005. — 48 с.

4. Π‘ΠΈΠΊΠΌΡƒΡ€Π·ΠΈΠ½Π° А. Π . Π›Π°Π±ΠΎΡ€Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. — ΠšΠ°Π·Π°Π½ΡŒ: Изд-Π²ΠΎ Казан. гос. Ρ‚Π΅Ρ…Π½. ΡƒΠ½-Ρ‚Π°, 2000 Π³.

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

ВСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

#include

#include

#include

#include

#include

#define MAX 100

struct BAZA

{

char fio[20];

char marka[10];

char nomer[9];

};

struct TAB

{

char fio[20];

char marka[10];

char nomer[9];

};

void SORT (TAB *tab, int l);

void PUN1 (TAB *tab, int l);

void PUN2 (TAB *tab, int l);

void PUN3 (TAB *tab, int l);

void PUN4 (TAB *tab, int l);

int main ()

{ FILE *f;

struct BAZA b;

struct TAB tab[MAX];

char n;

int l=0, i, s, nomer;

if ((f=fopen («BAZA.txt» ," r"))==NULL)

{puts («faila poezd net»);

getch ();

return 0;

}

while (fgets ((char*)&b, sizeof (struct BAZA), f)≠NULL)

{

b.fio[19]='';

strcpy (tab[l]. fio, b. fio);

b.marka[9]='';

strcpy (tab[l]. marka, b. marka);

b.nomer[8]='';

strcpy (tab[l]. nomer, b. nomer);

l++;

}

SORT (tab, l);

do

{ //clrscr ();

system («cls»);

puts («——————————————————————————————————-»);

puts («Vibirete nomer punkta menu:»);

puts («1-polnaya informazia o vladelcah»);

puts («2-poisk po nomeru»);

puts («3-poisk vladelca i nomera po marke»);

puts («4-kolichestvo avtomobilei kajdoi marki»);

puts («5-vihod»);

puts («——————————————————————————————————-»);

n=getche ();

switch (n)

{ case '1':PUN1(tab, l);break;

case '2':PUN2(tab, l);break;

case '3':PUN3(tab, l);break;

case '4':PUN4(tab, l);break;

case '5':break;

default:puts («Vvidite nomer ot 1 do 5»);

}

if (n≠'5')

{puts («nnn Dlya vihoda v menu najmite lubyu knopky»);

getch ();

}

}

while (n≠'5');

fclose (f);

return 1;

}

void PUN1 (TAB *tab, int l)

{int j=0, z=1;

do

{ //clrscr ();

system («cls»);

puts («n Familia I.O. | Marka | Nomer «);

puts («—————————————————————»);

for (j;j

{ if (j<(10*z))

printf («n %s | %s | %s», tab[j]. fio, tab[j]. marka, tab[j]. nomer);

else

{ z++;

puts («nNajmite lubyu knopky chto bi vivesti sled 10»);getch ();

break;

system («cls»);

}

}

}

while (l>j);

}

void PUN2(TAB *tab, int l)

{int j, u=0,i, z=0;

double p=0;

char r[9];

//clrscr ();

system («cls»);

puts («nvvedite nomer mashinin»);

gets®;

//clrscr ();

system («cls»);

for (j=0;j<6;j++)

if (p==0)

{ puts («n Familia I.O. | Marka | Nomer «);

puts («—————————————————————»);

for (i=0; i

{ z=0;

for (j=0; j<6; j++)

{if (tab[i]. nomer[j]==r[j])

{z++; }

}

if (z==6)

printf («n %s

}

if (u==0)

{//clrscr ();

system («cls»);

puts («Takogo nomera net»);}

}

else

puts («Nomer vveden ne pravelno»);

}

void PUN3(TAB *tab, int l)

{ int i, j, z=0, t=0, n;

char mar[20];

// clrscr ();

system («cls»);

puts («vvedite marky mashini»);

gets (mar);

n=strlen (mar);

// clrscr ();

system («cls»);

puts («n Familia I.O. | Marka | Nomer «);

puts («—————————————————————»);

for (j=0; j

{ for (i=0; i

{if (tab[j]. marka[i]==mar[i])

{z++; }

}

if (tab[j]. marka[i]==' ' || tab[j]. marka[i]=='')

{ if (z==n)

%s", tab[j]. fio, tab[j]. marka, tab[j]. nomer);

t++;

}

}

if (t==0)

{ //clrscr ();

system («cls»);

printf («nmarki %s net», mar);

}

}

void PUN4(TAB *tab, int l)

{

char mar[10];

int z=0,j, i, q;

double w=1;

system («cls»);

//q=strlen (tab[0]. marka);

//strcpy (mar, tab[0].marka);

puts («n Marka | Kolichestvo «);

for (j=0; j

{ if (strcmp (tab[j+1]. marka, tab[j].marka)>0)

printf («n %s

else

{

w++;

}

}

}

void SORT (TAB *tab, int l)

{ int i, j;

double t;

char fio[20], mar[10], nomer [7];

for (i = 0; i < l; i++)

{ for (j = 0; j < l — i — 1; j++)

{ for (t = 0; t < 10; t++)

if (strcmp (tab[j]. marka, tab[j+1].marka)>0)

{

strcpy (fio, tab[j].fio); strcpy (tab[j]. fio, tab[j+1].fio); strcpy (tab[j+1]. fio, fio);

strcpy (mar, tab[j].marka); strcpy (tab[j]. marka, tab[j+1].marka); strcpy (tab[j+1]. marka, mar);

strcpy (nomer, tab[j].nomer); strcpy (tab[j]. nomer, tab[j+1].nomer); strcpy (tab[j+1]. nomer, nomer);

}

}

}

}

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° poezd.txt

IvanovA.P. ToyotaB540CT

IgnatevA.S. NissanP990CC

SamigullinA.A. NissanB571BP

PetrovA.A. LadaC111CC

SimonovI.I. HummerC777CX

AbramovA.A. LadaC415TO

HaritonovA.V. DachaC789TO

HafizovA.Z. RenaultT894TO

IvanovA.I. LadaT561BE

HaritinovI.G. LotusB565BO

GaliyllinT.B. HondaC717CO

Nyrmyhametiv I.F. Lada C556TO

Antipova E.G. Opel C413EO

Valieva M.A. Toyota P891XO

Ivanov M.D. Lada X013PX

Haliyllin M.I. Nissan B670PO

Haliyllin T.I. Honda X518TO

Grigorev G.I. Lada P533TO

Garimov V.A. Nissan T560TT

Vasileva D.R. Cherry C660TO

Talov I.A. Lada T781TP

Pogylov A.I. Dacha A617AE

Hasaeva G.D. Honda A415BO

Ignatev P. S. Renault O819TO

Alternov A.S. LotusT890AA

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

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ тСстирования ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ВСст 1. Π’Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π½Π΅Ρ‚ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

faila BAZA net

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… тСстах ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ» ΠΈΠ· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ 2.

ВСст 2.

Рис.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ 1:

Рис.

Рис.

Рис.

ВСст3

Рис.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ 2:

НомСр машини Π 990Π‘Π‘ Рис.

ВСст4 .

Рис.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ 3:

НазваниС ΠΌΠ°Ρ€ΠΊΠΈ автомобиля: Nissan

Рис.

ВСст5

Рис.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚ 4:

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈ Рис.

ВСст 6. НСвСрно Π²Ρ‹Π±Ρ€Π°Π½ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΡƒΠ½ΠΊΡ‚Π° мСню Рис.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ 6

Рис.

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