Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «ОписаниС языка PascalABC.NETΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 58

Автор W Cat

Π¨Π°Π³ 5. Π˜ΡΠΏΡ€Π°Π²ΠΈΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ:

uses PT4;

var a, b, S, P: real;

begin

Task('Begin3');

read(a, b);

S := a * b;

P := 2 * (a + b);

write(S, P)

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ:

Если Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ являСтся ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ, Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·Π΄Π΅Π» с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² ΠΎΠΊΠ½Π΅ Π½Π΅ выводится.

Π¨Π°Π³ 6. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΡΡ‡ΠΈΡ‚Π°Π»ΠΎΡΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΌ, запустим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π΅Ρ‰Π΅ Π΄Π²Π° Ρ€Π°Π·Π°. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π² ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° появится сообщСниС Β«Π—Π°Π΄Π°Π½ΠΈΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ!Β»:

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΠ΅ΠΌ! Π—Π°Π΄Π°Π½ΠΈΠ΅ Begin3 ΠΏΠΎΠ΄ руководством элСктронного Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ! Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ выполнСния Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² ΠΌΡ‹ΡˆΡŒΡŽ Π½Π° ΠΌΠ΅Ρ‚ΠΊΠ΅ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ (F2)", располоТСнной Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΎΠΊΠ½Π° Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ°, ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Π² ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F2. ПослС закрытия ΠΎΠΊΠ½Π° Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π² срСду PascalABC.NET Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½Π° экранС, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Π² ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π½ΡƒΡŽ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Shift+Ctrl+R.

Π—Π°Π΄Π°Π½ΠΈΠ΅ a1 для исполнитСля Π ΠΎΠ±ΠΎΡ‚

Π—Π°Π΄Π°Π½ΠΈΠ΅ a1 относится ΠΊ Π²Π²ΠΎΠ΄Π½Ρ‹ΠΌ заданиям, посвящСнным знакомству с основными ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ исполнитСля Π ΠΎΠ±ΠΎΡ‚. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΡƒ этого задания.

a1. Π—Π°ΠΊΡ€Π°ΡΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ.

ОпишСм сцСнарий Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ задания.

Π¨Π°Π³ 1. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠΌ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Robot ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ΠΌ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Task, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² Π΅ΠΉ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° имя задания:

uses Robot;

begin

Task('a1');

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ тСкст, Π½Π°ΠΆΠΌΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ Π² появившСмся ΠΎΠΊΠ½Π΅ Π½Π°Π±Π΅Ρ€Π΅ΠΌ имя задания RBa1 (прСфикс RB ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π·Π°Π΄Π°Ρ‡Π° для Π ΠΎΠ±ΠΎΡ‚Π°). Запустим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ (Π½Π°ΠΆΠ°Π² ΠΊΠ»Π°Π²ΠΈΡˆΡƒ F9), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ Π ΠΎΠ±ΠΎΡ‚Π° с графичСским ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ задания:

Π¨Π°Π³ 2. НабСрСм нСсколько ΠΊΠΎΠΌΠ°Π½Π΄ Π ΠΎΠ±ΠΎΡ‚Π°:

uses Robot;

begin

Task('a1');

Right;Right;Right;Right;

Запустим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, послС Ρ‡Π΅Π³ΠΎ Π½Π°ΠΆΠΌΠ΅ΠΌ Enter ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠŸΡƒΡΠΊΒ» Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π ΠΎΠ±ΠΎΡ‚ Π½Π°Ρ‡Π°Π» Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π°Π»ΠΎΠΆΠ΅Π½Π½ΡƒΡŽ Π² Π½Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ:

ПослС окончания двиТСния Π ΠΎΠ±ΠΎΡ‚Π° осущСствляСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, всС Π»ΠΈ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΠ»Π΅Ρ‚ΠΊΠΈ Π·Π°ΠΊΡ€Π°ΡˆΠ΅Π½Ρ‹ ΠΈ находится Π»ΠΈ Π ΠΎΠ±ΠΎΡ‚ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅. Если ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄Π°Π΅Ρ‚ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‚ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π½Π΅ считаСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΌ.

Π¨Π°Π³ 3. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Π½Π΅Π²Π΅Ρ€Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π ΠΎΠ±ΠΎΡ‚ врСТСтся Π² стСнку:

uses Robot;

begin

Task('a1');

Right;Right;Right;Right;

Up;Up;Left;

ПослС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ наТатия Enter ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ:

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ состояния Π ΠΎΠ±ΠΎΡ‚Π° окрасился Π² красный Ρ†Π²Π΅Ρ‚, Π° послСдняя ΠΊΠΎΠΌΠ°Π½Π΄Π° Left Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»Π°ΡΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ послС Ρ„Π°Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ошибки Π ΠΎΠ±ΠΎΡ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΠ» Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ задания.

Π¨Π°Π³ 4. Π˜ΡΠΏΡ€Π°Π²ΠΈΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°:

uses Robot;

begin

Task('a1');

Right;Right;Right;Right;

Up;

Left;Paint;

Left;Paint;

Left;Paint;

Left;Paint;

Left;

ПослСдний рисунок Π½Π΅ нуТдаСтся Π² коммСнтариях.

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ свСдСния ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… заданиях ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ .

Π—Π°Π΄Π°Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ строк

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹-Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΈ знакомство с Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ

Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° задания Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ строк рассмотрим Π·Π°Π΄Π°Π½ΠΈΠ΅ String9.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ-Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΡƒ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этого задания ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ мСню ΠœΠΎΠ΄ΡƒΠ»ΠΈ | Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ шаблон ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹", ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Shift+Ctrl+L. Π­Ρ‚Π° Π·Π°Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:



uses PT4;


begin

Task('String9');


end.


ПослС запуска Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° экранС появится ΠΎΠΊΠ½ΠΎ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ°:

Π”Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΠ° char ΠΈ string Π² ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² апострофы; это позволяСт, Π² частности, ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ числовыС Π΄Π°Π½Π½Ρ‹Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 9) ΠΎΡ‚ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ строковых Π΄Π°Π½Π½Ρ‹Ρ…, содСрТащих Ρ†ΠΈΡ„Ρ€Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, '9'). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, апострофы Π΄Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, находящиСся Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ†Π΅ строк. Π’Π²ΠΎΠ΄ исходных Π΄Π°Π½Π½Ρ‹Ρ…


Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Π²Π²ΠΎΠ΄ исходных Π΄Π°Π½Π½Ρ‹Ρ… (ΠΌΡ‹ Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ Π²Π²Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ΠΈ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π² ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ°):



uses PT4;

var

n: integer;

c1, c2: char;

begin

Task('String9');

read(c1, c2, n);

end.


Запуск Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡƒΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ выполняСтся Π²Π²ΠΎΠ΄ исходных Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ ΠΊΠ°ΠΊ порядок Π²Π²ΠΎΠ΄Π° исходных Π΄Π°Π½Π½Ρ‹Ρ… являСтся ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹ΠΌ, этот Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ·Π½Π°Π½ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡŽ НСвСрно ΡƒΠΊΠ°Π·Π°Π½ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ исходных Π΄Π°Π½Π½Ρ‹Ρ…":

ΠžΠ±Ρ‰Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ порядок Π²Π²ΠΎΠ΄Π° ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… для Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° Programming Taskbook гласит: Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… производится ΠΏΠΎ строкам (слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ), Π° строки ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ свСрху Π²Π½ΠΈΠ·. Π˜Π½Ρ‹ΠΌΠΈ словами, Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π² ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ°, вводятся ΠΈ выводятся Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ читаСтся ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст.

На ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ², располоТСнной ΠΏΠΎΠ΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ панСлью, ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π²Π΅Π΄Π΅Π½ всСго ΠΎΠ΄ΠΈΠ½ элСмСнт исходных Π΄Π°Π½Π½Ρ‹Ρ… (ΠΈΠ· Ρ‚Ρ€Π΅Ρ…), хотя Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ read нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π»ΠΈ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈΠ· этих ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (с1) Π±Ρ‹Π»Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° ошибка нСсоотвСтствия Ρ‚ΠΈΠΏΠ°, поэтому Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊ Π½Π΅ стал Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ‹Ρ‚Π°Π»Π°ΡΡŒ ввСсти. Π—Π΄Π΅ΡΡŒ проявляСтся Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° Programming Taskbook: ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ошибки Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π° Π°Π½Π°Π»ΠΈΠ· ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ исходных Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π½Π΅ проводится.

Π˜ΡΠΏΡ€Π°Π²ΠΈΠΌ Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² порядкок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ Π²Π²ΠΎΠ΄Π°:



read(n, c1, c2);


Π’Π΅ΠΏΠ΅Ρ€ΡŒ с Π²Π²ΠΎΠ΄ΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΠ·-Π·Π° Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ отсутствуСт Π²Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ считаСтся ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹ΠΌ:

Данная ошибка, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ, связана Π½Π΅ с Π²Π²ΠΎΠ΄ΠΎΠΌ исходных Π΄Π°Π½Π½Ρ‹Ρ…, Π° с Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ отмСчаСтся Π² ΠΎΠΊΠ½Π΅ Π·Π°Π΄Π°Ρ‡Π½ΠΈΠΊΠ° двумя способами: Ρ†Π²Π΅Ρ‚Π½ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ ошибки располагаСтся рядом с ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΈ этим ΠΆΠ΅ Ρ†Π²Π΅Ρ‚ΠΎΠΌ выдСляСтся Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ€Π°Π·Π΄Π΅Π»Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π΅ содСрТит Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…).

Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠΉ строки

Для формирования Π½ΡƒΠΆΠ½ΠΎΠΉ строки Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠ΅ΠΉ + (сцСплСния строк):



uses PT4;

var

n, i: integer;

c1, c2: char;

s: string;

begin

Task('String9');

read(n, c1, c2);

s := '';

for i := 1 to n do

s := s + c1 + c2;

write(s);

end.


Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ s := '' Π½Π΅Ρ‚ нСобходимости, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ всС Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² ПаскалС автоматичСски ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ" значСниями (для числовых Π΄Π°Π½Π½Ρ‹Ρ… это ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π½ΡƒΠ»ΠΈ, для символов -- это символ #0, для строк -- пустая строка '').

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

ΠšΡ€Π°ΡΠ½Π°Ρ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ°, располоТСнная Π² ΠΊΠΎΠ½Ρ†Π΅ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ строки, ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΄Π»ΠΈΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ строки ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ Π²Π΅Ρ€Π½ΠΎΠΉ строки. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π° экранС всю ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ строку, достаточно подвСсти курсор ΠΌΡ‹ΡˆΠΈ ΠΊ строкС со Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΎΠΉ; ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»Π½Ρ‹ΠΉ тСкст строки появится Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказкС:

Π—Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. ΠšΡ€Π°ΡΠ½Π°Ρ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Ρ… числовых Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, Ссли оТидаСтся Ρ†Π΅Π»ΠΎΠ΅ число Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 1 Π΄ΠΎ 99, Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ число 10000, Ρ‚ΠΎ Π½Π° экранС изобразится пСрвая Ρ†ΠΈΡ„Ρ€Π° этого большого числа, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π° красная Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ°: 1*.

Π’Π΅Ρ€Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅

Ошибка Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΈΠ·-Π·Π° Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ³ΠΎ указания количСства ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Ρ†ΠΈΠΊΠ»Π°. Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊ строкС добавляСтся ΠΏΠΎ Π΄Π²Π° символа, поэтому послС n ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ строка Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ 2*n символов (Π° Π½Π΅ n, ΠΊΠ°ΠΊ трСбуСтся Π² Π·Π°Π΄Π°Π½ΠΈΠΈ).

Для исправлСния ошибки достаточно Π²Π΄Π²ΠΎΠ΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ число ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ:



uses PT4;

var

n, i: integer;

c1, c2: char;

s: string;

begin

Task('String9');

read(n, c1, c2);

s := '';

for i := 1 to n div 2 do

s := s + c1 + c2;

write(s);

end.


ПослС запуска этого Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ сообщСниС Π’Π΅Ρ€Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. ВСст Π½ΠΎΠΌΠ΅Ρ€ 1 (ΠΈΠ· 5)", Π° послС пяти ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… запусков -- сообщСниС "Π—Π°Π΄Π°Π½ΠΈΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ!":