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

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… языках программирования

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

Turbo Pascal — это срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для языка программирования Паскаль. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² Turbo Pascal Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ базировался Π½Π° Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½Π΅ΠΌ UCSD Pascal, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ΅ΠΌ распространСниС, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… сСрии Apple II. ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Turbo Pascal Π±Ρ‹Π»Π° основана Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Π΅ Blue Label Pascal, ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ созданном Π² 1981 Π³ΠΎΠ΄Ρƒ АндСрсом Π₯СйлсбСргом для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… языках программирования (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²ΠΎ образования ΠΈ Π½Π°ΡƒΠΊΠΈ Российской Π€Π΅Π΄Π΅Ρ€Π°Ρ†ΠΈΠΈ Π€Π΅Π΄Π΅Ρ€Π°Π»ΡŒΠ½ΠΎΠ΅ агСнтство ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡŽ ГосударствСнноС ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΡƒΡ‡Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ образования

" Комсомольский — Π½Π° — АмурС государствСнный тСхничСский унивСрситСт «

Π€Π°ΠΊΡƒΠ»ΡŒΡ‚Π΅Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠšΠ°Ρ„Π΅Π΄Ρ€Π° ПМИ Π ΠΠ‘Π§Π•Π’ΠΠž-Π“Π ΠΠ€Π˜Π§Π•Π‘ΠšΠžΠ• Π—ΠΠ”ΠΠΠ˜Π• ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ β€Ήβ€ΉΠ―Π·Ρ‹ΠΊΠΈ программирования››

Π‘Ρ‚ΡƒΠ΄Π΅Π½Ρ‚ Π³Ρ€ΡƒΠΏΠΏΡ‹ 8ΠšΠ‘-1 Π”. И. ΠšΠ°Ρ€Ρ‚Π°ΡˆΠΎΠ² ΠŸΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ И. А. Π’Ρ€Π΅Ρ‰Ρ‘Π²

Π’Π΅ΠΌΠ°: Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ IDE (Integrated Development Environment) Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++6.0 .

ЦСль Ρ€Π°Π±ΠΎΡ‚Ρ‹: На Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… языках программирования (Turbo Pascal 7.0, Borland C++ 3.11, Delphi 7, Builder C++ 6.0) Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° ΡΠΊΡ€Π°Π½ имя ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ студСнта. Для написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартныС срСдства Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ гСомСтричСскиС Ρ„ΠΈΠ³ΡƒΡ€Ρ‹.

1. Π‘Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°

2. Π‘Π»ΠΎΠΊ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π’Ρ‹Π²ΠΎΠ΄ Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников

Turbo Pascal — Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ DOS ΠΈ Windows 3. x ΠΈ ΡΠ·Ρ‹ΠΊ программирования Π² ΡΡ‚ΠΎΠΉ срСдС, Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ языка Паскаль ΠΎΡ‚ Ρ„ΠΈΡ€ΠΌΡ‹ Borland.

Turbo Pascal — это срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для языка программирования Паскаль. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² Turbo Pascal Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ базировался Π½Π° Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½Π΅ΠΌ UCSD Pascal, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ΅ΠΌ распространСниС, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… сСрии Apple II. ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Turbo Pascal Π±Ρ‹Π»Π° основана Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Π΅ Blue Label Pascal, ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ созданном Π² 1981 Π³ΠΎΠ΄Ρƒ АндСрсом Π₯СйлсбСргом для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы NasSys ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Nascom. ПозднСС ΠΎΠ½ Π±Ρ‹Π» пСрСписан ΠΊΠ°ΠΊ Compass Pascal для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы CP/M, Π·Π°Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Turbo Pascal для DOS ΠΈ CP/M.

Достоинства:

1.Удобная срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ, доступный Π² Π»ΡŽΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

2.ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Π°Ρ справочная систСма, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ язык Π±Π΅Π· обращСния ΠΊ ΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΠΈΠΌ источникам.

3.Высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ компиляции, высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

4.ВстроСнная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ вставки Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ ассСмблСра.

НСдостатки:

1.ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ рассчитан Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ DOS, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сходит Π½Π° Π½Π΅Ρ‚. Однако Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ… вСрсиях компилятора ΠΈ ΡΡ€Π΅Π΄Ρ‹ Π²Π²Π΅Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° вмСстС с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠΎΠΌ (TD).

2.Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ CRT имССтся ошибка (Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ подсчёт количСства Ρ†ΠΈΠΊΠ»ΠΎΠ² для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ delay, Π½Π΅ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Π½Π½Ρ‹ΠΉ Π½Π° Π±Ρ‹ΡΡ‚Ρ€Ρ‹Π΅ процСссоры, процСссоры с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ частотой ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½Ρ‹Π΅ срСды), ΠΈΠ·-Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… с Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотой Π±ΠΎΠ»Π΅Π΅ 200 MHz сразу происходило Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ с ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ΠΌ «Runtime error 200 at…». Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ исправлСния модуля CRT. Π’ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ ΠšΠ»Π°ΡƒΡΠ° Π₯Π°Ρ€Ρ‚Π½Π΅Π³Π³Π° ошибка 200 Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, Π½ΠΎ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Delay Π½Π° Π±Ρ‹ΡΡ‚Ρ€Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… мСньшС ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠΉ, ΠΈ ΡΡ‚Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎ Π½Π΅Π·Π½Π°Π½ΠΈΡŽ ΠΈΠ½ΠΎΠ³Π΄Π° Ρ‚ΠΎΠΆΠ΅ считаСтся нСдостатком Turbo Pascal.

Borland C++ — срСда программирования (IDE) Π½Π° ΡΠ·Ρ‹ΠΊΠ°Ρ… Π‘ΠΈ ΠΈ C++ для DOS, Windows ΠΈ Windows NT. ΠŸΠΎΡ‚ΠΎΠΌΠΎΠΊ Turbo C. Π•Π³ΠΎ Π΄Π΅Π±Π°Π³Π³Π΅Ρ€ Turbo Debugger Π±Ρ‹Π» написан для Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° DOS.

C++ Builder (ΠΏΠΎ-русски ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ произносят [си-плюс-плюс бимлдэр], [си бимлдэр]) — ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, инструмСнт быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (RAD), интСгрированная срСда программирования (IDE), систСма, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ программистами для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C++.

C++ Builder ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² ΡΠ΅Π±Π΅ комплСкс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ (STL, VCL, CLX, MFC ΠΈ Π΄Ρ€.), компилятор, ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹. Π¦ΠΈΠΊΠ» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Delphi. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π² Delphi, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π² C++ Builder Π±Π΅Π· ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π½ΠΎ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡŽ, ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π΅ Π²Π΅Ρ€Π½ΠΎ.

C++ Builder содСрТит инструмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ drag-and-drop Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ, ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ благодаря встроСнному WYSIWYG — Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρƒ интСрфСйса ΠΈ ΠΏΡ€.

Delphi — язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π‘Π½Π°Ρ‡Π°Π»Π° язык назывался Object Pascal. Начиная со ΡΡ€Π΅Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Delphi 7.0, Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ… Borland стала ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Delphi для обозначСния языка Object Pascal.

Delphi — Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ развития языка Π’ΡƒΡ€Π±ΠΎ Паскаль, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, развился ΠΈΠ· ΡΠ·Ρ‹ΠΊΠ° Паскаль. Паскаль Π±Ρ‹Π» ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΌ языком, Π’ΡƒΡ€Π±ΠΎ Паскаль, начиная с Π²Π΅Ρ€ΡΠΈΠΈ 5.5, Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π² ΠŸΠ°ΡΠΊΠ°Π»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ свойства, Π° Π² Object Pascal Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ доступа ΠΊ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌ классов (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡŽ классов ΠΈ ΠΈΡ… Ρ‡Π»Π΅Π½ΠΎΠ²) Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΊΠΎΠ΄Π΅, Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ интроспСкциСй — данная тСхнология ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ RTTI. Π’Π°ΠΊ ΠΊΠ°ΠΊ всС классы Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ класса TObject, Ρ‚ΠΎ Π»ΡŽΠ±ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ, послС Ρ‡Π΅Π³ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ClassType ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ TypeInfo, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π°Ρ‚ ΠΈΠ½Ρ‚Ρ€ΠΎΡΠΏΠ΅ΠΊΡ†ΠΈΡŽ.

Π’Π°ΠΊΠΆΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ свойством Object Pascal ΠΎΡ‚ Π‘++ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти. Однако ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ NewInstance ΠΈ FreeInstance класса TObject. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ любой класс ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ «ΠΆΠ΅Π»Π°Π½ΠΈΠ΅» «Π³Π΄Π΅ Ρ…ΠΎΡ‡Ρƒ — Ρ‚Π°ΠΌ ΠΈ Π±ΡƒΠ΄Ρƒ Π»Π΅ΠΆΠ°Ρ‚ΡŒ». БоотвСтствСнно организуСтся ΠΈ «ΠΌΠ½ΠΎΠ³ΠΎΠΊΡƒΡ‡Π½ΠΎΡΡ‚ΡŒ».

1. Π‘Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°

РисованиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ

Turbo Pascal 7.0

Program myName;

uses Graph;

var

grDriver: Integer;

grMode: Integer;

ErrCode: Integer;

begin

grDriver := Detect;

InitGraph (grDriver, grMode,'D:BPBGI');

ErrCode := GraphResult;

if ErrCode = grOk then

begin

{Family}

Line (10, 10,10, 50);

Line (10,20,30,5);

Line (10,30,30,50);

Line (40,50,50,10);

Line (50,10,60,50);

Line (40,30,65,30);

Line (70,10,70,50);

Line (70,10,80,10);

Line (70,30,80,30);

Line (80,10,80,30);

Line (80,10,100,10);

Line (90,10,90,50);

Line (100,50,110,10);

Line (110,10,120,50);

Line (100,30,120,30);

Line (125,10,125,50);

Line (130,10,130,50);

Line (135,10,135,50);

Line (125,50,135,50);

Circle (155,30,18);

Line (180,10,180,50);

Circle (190,20,9);

Circle (190,40,9);

{Name}

Line (30,100,40,80);

Line (40,80,50,100);

Line (25,100,55,100);

Line (25,100,25,105);

Line (55,100,55,105);

Line (60,105,70,80);

Line (70,80,90,105);

Line (60,90,90,90);

Line (107,105,107,70);

Line (107,85,115,85);

Line (115,105,115,70);

Line (120,70,120,105);

Line (120,105,130,70);

Line (130,70,130,105);

Line (135,105,145,70);

Line (145,70,155,105);

Readln;

CloseGraph;

end

else

Writeln ('Graphics error:', GraphErrorMsg (ErrCode));

end.

Borland C++ 3.11

#include

#include

#include

#include

int main (void)

{

int gdriver = DETECT, gmode, errorcode;

initgraph (&gdriver, &gmode, «C:BORLANDCBGI»);

errorcode = graphresult ();

if (errorcode ≠ grOk)

{

printf («Graphics error: %sn», grapherrormsg (errorcode));

printf («Press any key to halt:»);

getch ();

exit (1);

}

{Family}

Line (10, 10,10, 50);

Line (10,20,30,5);

Line (10,30,30,50);

Line (40,50,50,10);

Line (50,10,60,50);

Line (40,30,65,30);

Line (70,10,70,50);

Line (70,10,80,10);

Line (70,30,80,30);

Line (80,10,80,30);

Line (80,10,100,10);

Line (90,10,90,50);

Line (100,50,110,10);

Line (110,10,120,50);

Line (100,30,120,30);

Line (125,10,125,50);

Line (130,10,130,50);

Line (135,10,135,50);

Line (125,50,135,50);

Circle (155,30,18);

Line (180,10,180,50);

Circle (190,20,9);

Circle (190,40,9);

{Name}

Line (30,100,40,80);

Line (40,80,50,100);

Line (25,100,55,100);

Line (25,100,25,105);

Line (55,100,55,105);

Line (60,105,70,80);

Line (70,80,90,105);

Line (60,90,90,90);

Line (107,105,107,70);

Line (107,85,115,85);

Line (115,105,115,70);

Line (120,70,120,105);

Line (120,105,130,70);

Line (130,70,130,105);

Line (135,105,145,70);

Line (145,70,155,105);

getch ();

closegraph ();

return 0;

}

Delphi7

unit GRAPH;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls;

type

TForm1 = class (TForm)

Button1: TButton;

Image1: TImage;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

begin

with Image1 do begin

{К}

Canvas.MoveTo (140,110);

Canvas.LineTo (140,170);

Canvas.MoveTo (170,110);

Canvas.LineTo (140,140);

Canvas.LineTo (170,170);

{А}

Canvas.MoveTo (145,90);

Canvas.LineTo (160,30);

Canvas.LineTo (175,90);

Canvas.MoveTo (155,60);

Canvas.LineTo (170,60);

{Π }

Canvas.MoveTo (145,90);

Canvas.LineTo (160,30);

Canvas.LineTo (175,90);

Canvas.MoveTo (155,60);

Canvas.LineTo (170,60);

{А}

Canvas.MoveTo (180,90);

Canvas.LineTo (160,35);

Canvas.LineTo (175,90);

Canvas.MoveTo (155,60);

Canvas.LineTo (170,60);

{Π¨}

Canvas.MoveTo (60,30);

Canvas.LineTo (60,90);

Canvas.LineTo (90,30);

Canvas.LineTo (90,90);

{О}

Canvas.Ellipse (225,30,255,90);

{Π’}

Canvas.MoveTo (265,30);

Canvas.LineTo (265,90);

Canvas.Ellipse (265,30,295,60);

Canvas.Ellipse (265,60,300,90);

{Π”}

Canvas.MoveTo (100,110);

Canvas.LineTo (100,170);

Canvas.LineTo (130,110);

Canvas.LineTo (130,170);

Canvas.MoveTo (170,110);

Canvas.LineTo (140

{А}

Canvas.MoveTo (140,110);

Canvas.LineTo (140,170);

Canvas.MoveTo (170,110);

Canvas.LineTo (140,140);

Canvas.LineTo (170,170);

{Н}

Canvas.MoveTo (180,110);

Canvas.LineTo (180,170);

Canvas.LineTo (210,110);

Canvas.LineTo (210,170);

{И}

Canvas.MoveTo (220,110);

Canvas.LineTo (250,110);

Canvas.MoveTo (235,110);

Canvas.LineTo (235,170);

{Π›}

Canvas.MoveTo (260,170);

Canvas.LineTo (275,110);

Canvas.LineTo (290,170);

Canvas.MoveTo (270,140);

end;

end;

end.

Builder C++ 6.0

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

Form1->Image1-> Canvas->

Form1->Image1-> Canvas->MoveTo (60,30);

Form1->Image1-> Canvas->LineTo (60,90);

Form1->Image1-> Canvas->LineTo (90,30);

Form1->Image1-> Canvas->LineTo (90,90);

Form1->Image1-> Canvas->MoveTo (100,30);

Form1->Image1-> Canvas->LineTo (100,90);

Form1->Image1-> Canvas->Ellipse (100,30,130,60);

Form1->Image1-> Canvas->Ellipse (100,60,135,90);

Form1->Image1-> Canvas->MoveTo (145,90);

Form1->Image1-> Canvas->LineTo (160,30);

Form1->Image1-> Canvas->LineTo (175,90);

Form1->Image1-> Canvas->MoveTo (155,60);

Form1->Image1-> Canvas->LineTo (170,60);

Form1->Image1-> Canvas->MoveTo (185,30);

Form1->Image1-> Canvas->LineTo (185,90);

Form1->Image1-> Canvas->MoveTo (185,60);

Form1->Image1-> Canvas->LineTo (215,60);

Form1->Image1-> Canvas->MoveTo (215,30);

Form1->Image1-> Canvas->LineTo (215,90);

Form1->Image1-> Canvas->Ellipse (225,30,255,90);

Form1->Image1-> Canvas->MoveTo (265,30);

Form1->Image1-> Canvas->LineTo (265,90);

Form1->Image1-> Canvas->MoveTo (60,110);

Form1->Image1-> Canvas->LineTo (60,170);

Form1->Image1-> Canvas->MoveTo (60,140);

Form1->Image1-> Canvas->LineTo (90,140);

Form1->Image1-> Canvas->MoveTo (90,110);

Form1->Image1-> Canvas->LineTo (90,170);

Form1->Image1-> Canvas->MoveTo (100,110);

Form1->Image1-> Canvas->LineTo (100,170);

Form1->Image1-> Canvas->LineTo (130,110);

Form1->Image1-> Canvas->LineTo (130,170);

Form1->Image1-> Canvas->MoveTo (140,110);

Form1->Image1-> Canvas->LineTo (140,170);

Form1->Image1-> Canvas->MoveTo (170,110);

Form1->Image1-> Canvas->LineTo (140,140);

Form1->Image1-> Canvas->LineTo (170,170);

Form1->Image1-> Canvas->MoveTo (180,110);

Form1->Image1-> Canvas->LineTo (180,170);

Form1->Image1-> Canvas->LineTo (210,110);

Form1->Image1-> Canvas->LineTo (210,170);

Form1->Image1-> Canvas->MoveTo (220,110);

Form1->Image1-> Canvas->LineTo (250,110);

Form1->Image1-> Canvas->MoveTo (235,110);

Form1->Image1-> Canvas->LineTo (235,170);

Form1->Image1-> Canvas->MoveTo (260,170);

Form1->Image1-> Canvas->LineTo (275,110);

Form1->Image1-> Canvas->LineTo (290,170);

Form1->Image1-> Canvas->MoveTo (270,140);

Form1->Image1-> Canvas-> LineTo (280,140);

}

//—————————————————————————————————————;

Π’Ρ‹Π²ΠΎΠ΄ тСкста Π½Π° ΡΠΊΡ€Π°Π½

Turbo Pascal 7.0

program name;

uses crt;

begin

clrscr;

write ('Karasov Danil ');

readln;

end.

Borland C++ 3.11

#include

int main (void)

{

printf («'Karasov Danil «);

return 0;

}

Delphi7

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class (TForm)

Label1: TLabel;

Button1: TButton;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

begin

Label1.Caption:='ΠšΠ°Ρ€Ρ‚Π°ΡˆΠΎΠ² Π”Π°Π½ΠΈΠ»';

end;

end.

Borland C++ 3.11

//—————————————————————————————————————;

#include

#pragma hdrstop

#include «Unit1.h»

//—————————————————————————————————————;

#pragma package (smart_init)

#pragma resource «*.dfm»

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner)

: TForm (Owner)

{

}

//—————————————————————————————————————;

void __fastcall TForm1: Button1Click (TObject *Sender)

{

Form1->Label1->Caption = «ΠšΠ°Ρ€Ρ‚Π°ΡˆΠΎΠ² Π”Π°Π½ΠΈΠ»» ;

}

//—————————————————————————————————————;

2. Π‘Π»ΠΎΠΊ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

РисованиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ

Turbo Pascal 7.0

Borland C++ 3.11

Delphi7

Builder C++ 6.0

Π’Ρ‹Π²ΠΎΠ΄ тСкста Π½Π° ΡΠΊΡ€Π°Π½

Turbo Pascal 7.0

Borland C++ 3.11

Delphi7

Builder C++ 6.0

Π’Ρ‹Π²ΠΎΠ΄

Π‘Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… языковых срСдах, выводящСй имя ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ студСнта Π½Π° ΡΠΊΡ€Π°Π½ ΠΏΠΎ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€.

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

1. Π”ΠΆΠ°Ρ€Ρ€ΠΎΠ΄ Π₯ΠΎΠ»ΠΈΠ½Π³Π²ΠΎΡ€Ρ‚, Π‘ΠΎΠ± Π‘Π²ΠΎΡ€Ρ‚, ΠœΠ°Ρ€ΠΊ Кэшмэн, Поль Густавсон Borland C++ Builder 6. Руководство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° = Borland C++ Builder 6 Developer’s Guide. — Πœ.: «Π’ΠΈΠ»ΡŒΡΠΌΡ», 2004. — Π‘. 976.

2. Нил Π”ΠΆ. Π ΡƒΠ±Π΅Π½ΠΊΠΈΠ½Π³. Π―Π·Ρ‹ΠΊ программирования Delphi для «Ρ‡Π°ΠΉΠ½ΠΈΠΊΠΎΠ²».

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

Π² Borland Delphi 2006 = Delphi for Dummies. — Πœ.: Π”ΠΈΠ°Π»Π΅ΠΊΡ‚ΠΈΠΊΠ°, 2007. — 336 с.

3. Π₯Π°Π²ΡŒΠ΅Ρ€ ΠŸΠ°ΡˆΠ΅ΠΊΡƒ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Borland Delphi 2006 для профСссионалов = Delphi for .NET Developer’s Guide. — Πœ.: Π’ΠΈΠ»ΡŒΡΠΌΡ, 2006. — 944 с.

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

5. ΠœΠΎΡ€Π³ΡƒΠ½ АлСксандр НиколаСвич. Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ Turbo Pascal для студСнтов. — Πœ.: Π”ΠΈΠ°Π»Π΅ΠΊΡ‚ΠΈΠΊΠ°, 2006. — Π‘. 608.

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