Чим відрізняються оператори введення read та readln. Тема: Введення – висновок. Оператори Read (Readln), Write (Writeln). Найпростіші лінійні програми. Оператори read і readln. Процедури введення інформації

У мові програмування Pascal застосовуються такі інструкції, як read та readLn. Що вони являють собою?

Що таке інструкція read?

Ця інструкція призначена для введення з клавіатури ПК різних значень змінних при використанні мови Pascal. Схема залучення інструкції, що розглядається, виглядає просто: як read («значення змінної»).

На практиці інструкція read застосовується з метою забезпечення зчитування тих чи інших даних із файлу та наступного присвоєння значень, що витягуються з відповідних даних, змінним, що зазначені при зверненні до процедури.

Якщо користувач помилився при введенні даних, вони не відповідають будь-якому типу змінних, відображених в інструкції, програма перестає виконувати команди. При цьому на екрані ПК з'являється повідомлення про те, що у програмі виникла помилка.

Якщо програміст використовує кілька інструкцій read, дані будуть так чи інакше вводитися в одному рядку. На наступний перехід можливий лише за умови, що закінчиться поточний рядок. Разом з тим, вважати відомості, розміщені в іншому рядку, можна за допомогою інструкції readLn. Розглянемо її особливості докладніше.

Що таке інструкція readLn?

Сутність інструкції readLn полягає у завданні в програмі умови, при якому:

  • якесь число, що вводиться в рядок, присвоюється останньою за інструкцією змінної;
  • область рядка, що залишилася, не обробляється програмою, у той час як наступна інструкція вимагатиме здійснення нового введення.

Так, можна запровадити інструкцію:

readLn (C,D); read (E);

І якщо після цього з клавіатури ввести ряд 123, то змінна C набуде значення 1, D - 2. Але присвоєння певного значення для змінної E програма здійснювати не буде, поки користувач не введе нове число.

Як і у випадку з інструкцією read, при некоректному введенні типу даних користувачем за допомогою команди readLn програма завершує роботу та видає повідомлення про те, що виникла помилка.

Порівняння

Головна відмінність readLn від read полягає в тому, що перша процедура передбачає здійснення програмою переходу до рядка файлу, наступного за тим, в якому прописані інструкції. Друга процедура дозволяє програмі рахувати дані, розміщені в наступному рядку, тільки з дозволу користувача – якщо він натисне Enter.

На практиці використання інструкції readLn найчастіше здійснюється з метою забезпечення затримки між результатом виконання програми та переходом до наступної інструкції. Відповідна затримка триває доти, доки користувач не натисне Enter.

Визначивши, у чому різниця між readLn та read у мові Pascal, зафіксуємо висновки в таблиці.

Read (процедура)

Для типізованих файлів, зчитує компонент файлу змінну.
- Для текстових файлів, зчитує одне або більше значень
в одну або більшу кількість змінних

Оголошення

Типізовані файли

Procedure Read (F, V1 [, V2, ..., Vn]);

Текстові файли

Procedure Read([ Var F: Text; ] V1 [, V2, ..., Vn ]);

Режим

Windows, Real, Protected

Зауваження

Для рядкових змінних:

Read зчитує всі символи до (але не включаючи) наступного маркера кінця рядка або поки що Eof(F) стане рівним True. Read не переходить до наступного рядка після читання. Якщо отриманий у результаті рядок довше, ніж максимальна довжина рядкової змінної, він усікається. Після першого Read, кожні наступні виклики Read будуть бачити маркер кінця рядка та повертати рядок нульової довжини.

Використовуйте кілька звернень до ReadLn, щоб рахувати кілька рядкових значень.

Коли включено опцію Extended Syntax, процедура Read може зчитувати рядки з нульовим закінченнямв нуль-засновані масиви символів.

Для змінних типу Integerабо Real:

Read пропускатиме будь-які пробіли, мітки табуляції або маркери кінця рядка, що передують числовому рядку. Якщо числовий рядок не відповідає очікуваному формату, відбувається помилка введення/виводу, інакше змінній надається отримане значення. Наступний Read почнеться з пробілу, знаку табуляції або маркера кінця рядка, які завершували числове рядок.

Див. також

приклад

uses Crt, Dos;

var
F: Text;
Ch: Char;

begin
( Отримуємо ім'я файлу з командного рядка }
Assign(F, ParamStr (1));
Reset (F);
while not EOF (F) do
begin
Read (F, Ch);
Write (Ch); (Виводимо вміст файлу на екран)
end;
end.

Ви знаходитесь у розділі матеріалів з програмування на Паскалі. Перед тим, як почати програмувати, треба прояснити деякі поняття, які нам знадобляться на початку. Адже просто так програмувати не можна. Ми не можемо записати програму словами – комп'ютер крім нулів та одиниць більше нічого не розуміє. Для цього в Паскалі створено спеціальну символіку – мову Паскаля, набір зарезервованих слів, які не можна використовувати у своїх програмах більше ніде, окрім як за призначенням. Перелічимо основні поняття, які нам знадобляться на початку:

✎ 1) program – англійською «програма», пишеться на самому початку коду, після чого йде назва програми латиницею та крапка з комою. Наприклад: program Summa; − програма під назвою Summa. Але цю частину коду, яку називають заголовком програми, можна і не писати – вона присутня тільки для наочності і показує, яке завдання вирішує дана програма. Тут ми використали слово «код» – так називається текстовий запис програми.

✎ 2) integer - англійською означає "ціле число" (або просто "ціле") і в Паскалі використовується для позначення 32-бітових (8 байт) цілих чисел зі знаком з діапазону [-2147483648, 2147483647]. Що означають ці великі числа, потім розберемо.

✎ 3) real – з англійської «реальний», «справжній», «речовий», «дійсний». У мові Паскаль цим терміном позначаються речові числа з діапазону [-1.8∙10308, 1.8∙10308]. Це дуже великі числа, але значних цифр виводиться 15 – 16. До речі, типи даних integer і real серед програмування PascalABC.Net завжди автоматично виділяються синім кольором.

✎ 4) const - аналог англ. "constant", що означає "постійна", "константа". У Паскалі це величина, яка може змінюватися. Записується так:


Цей запис треба сприймати так, як він пишеться: число N дорівнює 12, S дорівнює 5, «пі» дорівнює 3,14 (як і в математиці, тільки замість коми в Паскалі використовується крапка). В останньому рядку ми використовували подвійний слеш (дві косі риси), після яких йде текст, – так у Паскалі пишуться коментарі, і їхня програма не сприймає. Все, що починається подвійним слешем і до кінця рядка - це коментар, який пишеться для пояснення до програми і завжди виділяється іншим кольором (у PascalABC.Net - це зелений, Turbo Pascal не використовується такий вид коментаря). Існує й інший тип коментаря – це (текст, укладений у фігурні дужки, так само, як і тут, що теж виділяється зеленим кольором) . Цей вид коментаря може діяти кілька рядків поспіль - від початку дужки і до її закриття, і все, що знаходиться всередині такої конструкції, компілятор не сприймає як код і просто пропускає.

Насправді формат запису constтрохи складніше. За правилами ми мали записати:

1 2 3 4 const N: type integer;

Опис:

")" onmouseout="toolTip()">integer
= 12 ; // число N - цілого типу S: type integer;

Опис:
Представляє 32-бітове ціле число зі знаком.

Діапазон значень: -2 147 483 648 .. 2 147 483 647")" onmouseout="toolTip()">integer
= 5 ; // число S - цілого типу pi: type real;

Опис:
Показує число подвійної точності з плаваючою комою.

Розмір: 8 байт
Кількість цифр: 15 - 16
Діапазон значень: -1.8∙10 308.. 1.8∙10 308
")" onmouseout="toolTip()">real
= 3.14 ; // число «пі» - речового

Після оголошення кожної величини вказується її тип, та був присвоюється значення. Але попередній запис теж вірний, оскільки компілятор Паскаля налаштований так, що він автоматично визначає тип постійної. Але цього не можна сказати про такий тип чисел – змінних.

✎ 5) var – походить від англ. "variable" ("змінна", або "мінливий"), що в Паскалі означає величину, яка в процесі програми може змінювати своє значення. Записується так:


Як видно із запису, знака «=» тут немає – перераховуються змінні одного типу (через кому) і після двокрапки вказується лише тип. Змінні N, m (цілі) та Q, r, t (речові) у програмі можуть змінювати значення в межах integer та real відповідно. Ще одне зауваження: опис змінних завжди стоїть після опису констант (постійних) – спочатку йде конструкція const, а потім var.

✎ 6) begin – у перекладі з англійської означає «починати» і Паскале означає початок основної програми, де записуються команди (оператори). Після слова beginкрапка з комою не ставиться.

✎ 7) end – англ. "Кінець", і в мові Pascal означає те ж (кінець програми). Після останнього слова endзавжди стоїть крапка. Ми виділили слово "останнього", оскільки використання конструкції begin – endможливо ще одному випадку: це звані операторні дужки, які застосовуються об'єднання кількох операцій під одним оператором. Але про це згодом. Таким чином, основна програма виглядатиме так:

1 2 3 4 5 6 begin < оператор 1 > ; < оператор 2 > ; . . . . . . . < оператор N > ; end.

Тут оператори у тілі програми – це різні команди компілятора.

✎ 8) write – англійською означає «писати». Цей оператор виводить на екран текст, поміщений у нього, тому так і називається оператор виведення. Текст, поміщений до нього, виділяється синім і записується так:

Write( "Цей текст виведено на екрані");

Повідомлення, що знаходиться у дужках та лапках, буде показано у вікні консолі (просто у дужках без лапок не можна). Після виконання цього оператора ми побачимо на екрані:

цей текст виведено на екрані

У такому вигляді оператор write використовується в тому випадку, коли треба показати підказку, пояснення, коментар тощо. А якщо необхідно вивести ще й числове значення, скажімо, S = 50 кв. м, то використовується формат:

Write(, S);

В результаті отримаємо на екрані результат:

Розмір площі дорівнює: S = 50

А при необхідності вивести одиниці виміру, треба після S знову вставити текст у лапках:

Write( "Величина площі дорівнює: S = ", S, "кв.м");

Після виконання останнього оператора виведення отримаємо висновок на екран:

Розмір площі дорівнює: S = 50 кв.м

✎ 9) writeln – те саме, що й write, але після виконання курсор буде переведено на наступний рядок.

✎ 10) read – у перекладі з англійської означає «читати», тому read називається оператором зчитування або введення даних. Записується як read(N), що означає необхідність введення величини N де N – будь-яке число, або текст, або інший тип змінної. Наприклад, якщо треба запровадити вік людини, якій 32 роки, ми можемо записати так:


У першому рядку цього коду програма виводить питання « Яким є Ваш вік?» та переводить курсор у наступний рядок (закінчення ln); у другому рядку ми виводимо "Year =" (на початку пробіл); далі ми бачимо оператор readln(Year), що означає необхідність введення віку Year (число 32); нарешті, виводимо повідомлення «Мій вік», «32» та «року. » по черзі. Потрібно уважно стежити за пробілами. В результаті виконання цього коду ми отримаємо повідомлення:

Яким є Ваш вік?
Year = 32
Мій вік 32 роки

✎ 11) readln – те саме, що й read, лише з переведенням на новий рядок. Справді, у наведеному вище прикладі після введення числа Year ми лише у наступному рядку пишемо: « Мій вік 32 роки».

Це поки що все. На наступній сторінці ми напишемо першу програму, і у програмуванні на Паскалі це будуть наші

Я думаю багатьом це буде цікаво)))

Інструкції read та readln

Інструкція read призначена для введення значень змінних (вихідних даних) з клавіатури. У загальному вигляді інструкція виглядає так:

read (Змінна1, Змінна2, ... ЗміннаN)

де змінна - ім'я змінної, значення якої має бути введене з клавіатури під час виконання програми.

Наведемо приклади запису інструкції read:

read(a); read(Cena, Kol);

При виконанні інструкції read відбувається таке:

1. Програма зупиняє свою роботу і чекає, доки на клавіатурі будуть набрані потрібні дані та натиснута клавіша .

2 http://tissot.ua/ купити наручний годинник годинник купити київ. . Після натискання клавіші введене значення надається змінною, ім'я якої вказано в інструкції.

Наприклад, внаслідок виконання інструкції

read(Temperat);

та введення з клавіатури рядка 21, значенням змінної Temperat буде число 21.

Одна інструкція read дозволяє отримати значення кількох змінних. При цьому числа, що вводяться, повинні бути набрані в одному рядку і розділені пробілами. Наприклад, якщо тип змінних а, ь і з - real, то результаті виконання інструкції read(a,b,c); та введення з клавіатури рядка:

4.5 23 0.17

змінні матимуть такі значення:

а = 4,5; b = 23,0; з = 0,17.

Якщо в рядку набрано більше чисел, ніж задано змінних в інструкції read, то частина рядка, що залишилася, буде оброблена наступною інструкцією read http://crystal.lviv.ua crystal crystal. . https://mainvisa.com.ua фото запрошення в Україну для іноземних громадян. . Наприклад, внаслідок виконання інструкцій

read(А,В); read(С);

та введення з клавіатури рядка

10 25 18

змінні отримають такі значення: А = 10, B = 25. Інструкція read (З); надасть змінної значення 18.

Інструкція readln відрізняється від інструкції read тим, що після виділення чергового числа з введеного з клавіатури рядка і привласнення його останньої змінної зі списку інструкції readin, частина рядка, що залишилася, втрачається, і наступна інструкція read або readin буде вимагати нового введення.

Наприклад, внаслідок виконання інструкції

readin(А,В); read(С);

та введення з клавіатури рядка

10 25 18

Змінні отримають наступні значення: А = 10, B = 25. Після чого програма буде чекати введення нового числа, щоб привласнити його змінної с.

Перед кожною інструкцією read або readin слід розташовувати інструкцію write, щоб підказати користувачеві, які дані очікує від нього програма. Наприклад, фрагмент програми обчислення вартості покупки може мати вигляд:

writeln("Введіть вихідні дані.");

Write("Ціна виробу:");

Readln(Сеnа);

write("Кількість у партії:");

Readln (Kol);

write("Знижка:");

readln(Skidka);

Якщо тип даних, що вводяться з клавіатури, не відповідає або не може бути приведений до типу змінних, імена яких вказані в інструкції read (readin), то програма аварійно завершує роботу (інструкції, що йдуть за read не виконуються), і на екран виводиться повідомлення про помилку.

4. Оператори write та writeln. Процедури виведення інформації

Ви звернули увагу, що в програмі були використані оператори write та writeln. Англійське слово write перекладається – писати, а слово writeln відбувається як скорочення від двох англійських слів write – писати та line – рядок.

Окрім операторів write та writeln ми говоримо про процедури виведення інформації.

Що ж таке процедура ?

Поняття процедури – одне з основних понять Паскаля. Йому подібна до підпрограми мовою Бейсік.

Процедура - це деяка послідовність операторів мови Паскаль, що має ім'я і до якої можна звернутися з будь-якого місця основної програми, вказавши її ім'я.

Вище ми говорили про операторів виведення інформації, хоча в Паскалі, на відміну від Бейсіка, немає операторів виведення інформації, а через службові слова write і writeln відбувається звернення до стандартною або вбудованою процедуру виведення інформації Стандартна процедура не потребує попереднього опису, вона доступна будь-якій програмі, яка містить звернення до неї. Ось чому звернення до write чи writeln нагадує оператор PRINT - виведення інформації мовою Бейсік.

Різниця між оператором виведення та зверненням до процедурі виведення полягає в тому, що ім'я процедури виведення, як і будь-якої іншої процедури Паскаля, не є зарезервованим словом, а отже користувач може написати свою власну процедуру з ім'ям write або writeln. Але це дуже рідко використовується практично.

Таким чином, оператори write та writeln є операторами звернення до вбудованих процедур виведення інформації.

Обидві ці процедури виводять інформацію на екран, якщо ця інформація міститься у вигляді значень змінних, тоді достатньо в дужках в операторах write або writeln записати імена цих змінних, наприклад write(a), writeln(f). Якщо таких змінних кілька, їх записують через кому, наприклад: write(a, b, c, d), writeln(e,f, g, h).

Якщо інформацією є слова, речення, частини слів чи символи, тоді вона полягає між знаками ";"; апостроф, наприклад:

write("Введіть довжину шляху"),

writeln("Значення швидкості дорівнює"

Можливий одночасний висновок і символьної інформації та значень змінних, тоді в операторі write або writeln вони поділяються комами, наприклад:

write("Значення температури дорівнює ", t),

writeln("Швидкість дорівнює", v, "при часі руху", t).

Зауважте, наприкінці слів, перед апострофом залишено прогалину.

Навіщо це зроблено? Звичайно, щоб наступна цифрова інформація була поділена зі словами пропуском.

У чому полягає відмінністьв роботі процедур write та writeln?

Процедура write вимагає від наступних процедур введення або виведення, інформацію вводити або виводити на той самий рядок (в один рядок).

Якщо в програмі зазначений оператор write і за ним слідують ще оператори write або writeln, то інформація, що виводиться ними, буде приєднуватися до рядка інформації першого оператора write.

Наприклад: write("Сьогодні та завтра будуть");

write("вихідні дні");

На екран виводиться:

Сьогодні та завтра будуть вихідні дні

Пробіл між словом "; будуть"; та "; вихідні"; забезпечується за рахунок пропуску в кінці першого рядка. Якщо його не буде, то висновок відбудеться разом :

write("Сьогодні та завтра будуть");

write("вихідні дні");

Сьогодні і завтра будуть вихідні дні

Ще деякі приклади: t: = 20;

write("Час руху дорівнює");

write(" секунд");

Час руху дорівнює 20 секунд

write("Сума чисел дорівнює");

write(", а твір");

Сума чисел дорівнює 30, а добуток 216

Процедура writelnзабезпечує для наступних процедур введення або виведення інформації вводити або виводити її з початку кожної нового рядка .

В програмі:

writeln("Сьогодні ввечері, ввечері, ввечері,");

writeln("Коли пілотам, скажемо прямо, робити нічого");

На екран виводиться:

Сьогодні ввечері, ввечері, ввечері,

Коли пілотам, скажемо прямо, робити нічого

В програмі:

writeln("Сума і різницю чисел рівні:");

На екрані:

Сума та різниця чисел рівні:

5. Оператори read і readln. Процедури введення інформації

Так само, як і для операторів виведення інформації, оператори read і reeadln є операторами звернення до вбудованих процедур введення інформації.

Оператори read (зчитувати) та readln, що походить від двох англійських слів read (зчитувати) та line (рядок) використовуються в програмах для введення інформації в пам'ять комп'ютера та ";" зчитування"; значень змінної.

Розглянемо роботу цих операторів та процедур введення інформації.

У нашій програмі є процедура readln(a). При виконанні програми, зустрівши оператор readln, комп'ютер призупинить роботу в очікуванні введення інформації. Після того, як ми введемо з клавіатури значення змінної a - 16, комп'ютер надасть значення змінної a, тобто. відправить його в осередок пам'яті з ім'ям aта продовжить виконання програми. Цей процес ми називаємо”; зчитуванням"; значення змінну.

Отже, процедури read і readln "; зчитують"; значення змінних і надають їх тим змінним, які записані у них.

Таких змінних може бути кілька, тоді вони записуються в цих операторах через кому, наприклад:

read(a, b, c, n, g, j, i), readln(e, f, k, p, d) і т.п.

Чим відрізняється робота процедур read і readln?

Процедура read вимагає після себе введення або виведення інформації в один рядок, а процедура readln дає можливість після себе вводити та виводити інформацію з початку нового рядка.

Наприклад:

У програмі: write("Введіть значення a та b "); read(a, b);

write("Введення інформації в один рядок");

При виконанні цієї частини програми, на екран буде виведено все те, що записано в першому операторі write, потім в тому ж рядку буде курсор, і комп'ютер чекатиме введення значень a і b. Введемо їх значення - 2 і 3, розділяючи їх пропуском або, інакше кажучи, через пропуск. Після цього, у тому ж рядку буде видано інформацію, записану в наступному операторі write.

На екрані:

Введіть значення a та b 2 3 Введення інформації в один рядок

В програмі:

writeln("Введіть значення a, b і c); readln(a, b, c);

writeln("Введення та виведення інформації з початку рядка");

На екрані:

Введіть значення a, b та c

Введення та виведення інформації з початку рядка

Глава 2. Введення та виконання програм

1. В інтегрованому середовищі Турбо Паскаль 7.0.

Після запуску Турбо Паскаля на екрані з'явиться наступна оболонка (див. мал. 3):

Мал. 3

Верхній рядок вікна містить ";" менюможливих режимів роботи Турбо Паскаля, нижня - коротку довідку про призначення основних функціональних клавіш. Вся решта екрану належить вікну текстового редактора, окресленого подвійною рамкою та призначеного для введення та редагування тексту програми.

Коли ми запроваджуємо програму, то працюємо з текстовим редактором, вбудованим у середу Турбо Паскаль. Тому нижче ми й познайомимося з роботою редактора та основними його командами.

Ознакою те, що середовище перебуває у стані редагування, є у вікні редактора курсора - невеликий миготливої ​​рисочки.

Для створення тексту програми потрібно ввести цей текст за допомогою клавіатури подібно до того, як це робиться при друкуванні тексту на друкарській машинці. Після заповнення чергового рядка слід натиснути клавішу B>Enter> "; Введення"; щоб перевести курсор на наступний рядок (курсор завжди показує місце на екрані, куди буде поміщено черговий символ програми, що вводиться).

Вікно редактора імітує довгий та досить широкий аркуш паперу, частину якого видно у вікні екрану. Якщо курсор досяг нижнього краю, здійснюється прокручування вікна редактора: його вміст зміщується вгору однією рядок і внизу з'являється новий рядок "; листаНайбільша довжина рядка на Турбо Паскалі - 126 символів.

Вікно можна зміщувати щодо аркуша за допомогою наступних клавіш:

PgUp- на сторінку вгору ( PaGe UP- Сторінка вгору);

PgDn- на сторінку вниз ( PaGe DowN- Сторінка вниз);

Home- на початок поточного рядка ( HOME- Додому);

End- в кінець поточного рядка ( END- Кінець);

Ctrl-PgUp- На початок тексту;

Ctrl-PgDn- Наприкінці тексту.

Клавішами управління курсору курсор” можна зміщувати за текстом на екрані (зауважте, лише за текстом!). По"; чистому "; не списаному екрані курсор не переміщається!

Якщо Ви помилилися під час введення чергового символу, його можна стерти за допомогою клавіші, позначеної стрілкою вліво (клавіша Backspace- B>Забій>, вона розташовується праворуч і вгорі зони основних алфавітно-цифрових клавіш над клавішею B>Enter> - “ Введення”). Клавіша B>Del ete> (Delete - прати, видаляти) стирає символ, на який в даний момент вказує курсор, а команда Ctrl-Y - весь рядок, на якому знаходиться курсор. Слід пам'ятати, що редактор Турбо Паскаля вставляє наприкінці кожного рядка невидимий на екрані символ-розділювач. Цей символ вставляється кнопкою B>Введення>, а стирається кнопкою B>Забій> або B>Del ete> . За допомогою вставки/стирання роздільника можна "; розрізати”/";склеїти"; рядки.

Щоб "; розрізати"; рядок, слід підвести курсор до потрібного місця та натиснути клавішу B>Введення>, щоб "; склеїтисусідні рядки, потрібно встановити курсор в кінець першого рядка і натиснути клавішу B>Del ete> або встановити курсор на початок наступного рядка і натиснути клавішу B>Забій>.

Режим вставки

Нормальний режим роботи редактора - режим вставки, у якому кожен знову символ, що вводиться як би "; розсуває"; текст на екрані, зміщуючи вправо залишок рядка. Слід враховувати, що "; розрізанняі наступна вставка пропущених символів можлива тільки в цьому режимі.

Приклади”; розрізання";, ";склеювання"; рядків та вставки символів у текст.

Нехай з якихось причин на екрані отримано такий запис:

Program Serg; var

a, b, c: integer;

Якщо говорити про естетичний бік написання програми, то бажано, щоб розділ описів, який починається зі слова var,починався з червоного рядка. Для внесення змін до тексту встановимо курсор на літеру vі натиснемо клавішу B>Введення>, при цьому частина тексту після курсору та під ним переміститься на наступний рядок, отримаємо:

Program Serg;

a, b, c: integer;

Для більшої краси та наочності, не переміщаючи курсора, а залишаючи його на літері v, натисніть кілька разів клавішу B>Пробіл>. Весь рядок пересунеться направо і запис стане таким:

Program Serg;

a, b, c: integer;

Допустимо іншу ситуацію, коли частина тексту”; розірвалася"; і її нам треба"; склеїти"; наприклад, вийшло так:

write("Введіть число років, кото

роє було б Сергію”;);

Встановлюємо курсор на початок другого рядка перед літерою "р"; і натискаємо клавішу B>Забій>, отримаємо:

write("Введіть число років, яке було б Сергію");

Можна зробити інакше, встановити курсор в кінець першого рядка після літери ";о"; і натискаючи кілька разів клавішу B> Delete > "; підтягувати"; нижній рядок вгору.

За допомогою клавіш B>Забій> і B>Del ete> можна, можливо "; з'єднувати"; ";розірвану” рядок. Наприклад, у такій ситуації:

write("Введіть число років, яке було б Сергію");

Встановлюємо курсор перед літерою "д"; і натискаємо кілька разів клавішу B>Забій> до тих пір, поки слово "; Введіть"; прийме потрібну конструкцію, або, встановивши курсор після літери "е"; натиснути кілька разів клавішу B>Delete>.

Вставка пропущених символів робиться набагато простіше.

Наприклад, ви пропустили кілька літер:

wrte("Увівши число років, яке було б Сеже ");

У першому слові пропущено букву ";i";, у слові ";Введіть"; пропущено дві літери ";ді";, у слові ";Сергія"; літери "; ер";.

Встановимо курсор на літеру "; t"; у першому слові і наберемо з клавіатури "; i"; вона тут же вставиться на потрібне місце. Далі встановимо курсор на букву "т"; у слові "; Увіт"; і наберемо з клавіатури "; ді";, слово "; розсунеться"; і літери ";ді"; стануть на свої місця. Встановимо курсор на ";е"; у слові ";Сіжа"; і наберемо ";єр";,

Режим накладання

Редактор може також працювати в режимі накладання нових символів на існуючий старий текст: у цьому режимі новий символ замінює собою символ, на який вказує курсор, а залишок рядка праворуч від курсора не зміщується вправо. Для переходу до режиму накладання потрібно натиснути клавішу B>Ins ert> (Insert- вставка), якщо натиснути цю клавішу знову, знову відновиться режим вставки. Ознакою того, в якому режимі працює редактор, є форма курсору: в режимі вставки курсор схожий на миготливий символ підкреслення, а в режимі накладання він являє собою великий миготливий прямокутник, що закриває символ цілком.

Режим автовідступу

Ще однією особливістю редактора є те, що він працює в режимі автовідступу. У цьому режимі кожен новий рядок починається в тій же позиції екрана, що й попередній.

Режим автовідступу підтримує хороший стиль оформлення текстів програм: відступи від лівого краю виділяють різні оператори та роблять програму наочнішою.

Відмовитись від режиму автовідступу можна командою Ctrl-O I(при натиснутій клавіші Ctrlнатискається спочатку клавіша Oпотім клавіша Oвідпускається та натискається клавіша I), повторна команда Ctrl-O Iвідновить режим автовідступу.

Нижче перераховані команди, які найчастіше використовуються. текстового редактораТурбо Паскаля, крім тих, що були наведені вище.

Команди редагування

Backspac- B>Забій> - стерти символ ліворуч від курсора;

Del- стерти символ, який вказує курсор;

Ctrl-Y- стерти рядок, на якому розташовується курсор;

Enter- B>Введення> - вставити новий рядок, "; розрізати"; стару;

Ctrl-Q L- відновити поточний рядок (діє, якщо

курсор не залишав зміненого рядка).

Робота з блоком

Ctrl-K B- Позначити початок блоку;

Ctrl-K Y- стерти блок;

Ctrl-K V- перемістити блок;

Ctrl-K P- надрукувати блок;

Ctrl-K H- сховати/відобразити блок (зняти позначку);

Ctrl-K K- Помітити кінець блоку;

Ctrl-K C- Копіювати блок;

Ctrl-K W- Записати блок у дисковий файл;

Виконання програми

Після того, як програма набрана, можна спробувати її виконати.

Для цього натискаємо клавіші B>Ctrl>+ (утримуючи клавішу B>Ctrl>, натиснути клавішу B>F9>). Цю операцію можна виконати, перейшовши в основне меню, натиснувши клавішу B>F10>, а потім переміщенням покажчика вибрати опцію Runта натисніть клавішу B>Введення>.

На екрані відкриється меню другого рівня, пов'язане з цією опцією. Нове меню як би"; випадає"; з верхнього рядка, тому таке меню часто називають випадаючим (Pull-down). Екран стане таким (див. рис. 4):

Мал. 4

Тепер потрібно знайти в новому меню опцію RUN(Пуск) і натиснути клавішу B>Введення>.

Якщо не було помилки під час введення тексту, то через кілька секунд відбудеться зміна зображення на екрані. Турбо Паскаль надає екран у розпорядження працюючої програми користувача. Такий екран називається вікно програми.

У відповідь на запит:

Введіть число років, яке було б Сергію, треба ввести 16 і натиснути клавішу B>Введення>.

Після завершення прогону (робота програми часто називається її прогоном), на екрані знову з'явиться вікно редактора з текстом програми. Якщо Ви не встигли розглянути зображення вікна програми, натисніть Alt-F5. При цьому вікно редактора сховаєтьсяі ви зможете побачити результати роботи програми. Щоб повернути екран у режим відтворення вікна редактора, потрібно натиснути будь-яку клавішу.

Можна зробити екран більш зручним, щоб бачити результати роботи програми. Для цього у нижній частині екрана можна відкрити друге вікно.

Для цього натисніть клавішу F10, щоб перейти до режиму вибору з головного меню, підведіть курсор до опції Debug(налагодити) і натисніть клавішу B>Введення> - на екрані відкриється меню другого рівня, пов'язане з цією опцією. Екран стане таким (див. рис. 5):


Мал. 5

Знайдіть у новому меню опцію OUTPUT (виведення програми), підведіть до неї покажчик та натисніть клавішу B>Введення>.

У нижній частині екрана з'явиться друге вікно, але воно вже не зникатиме.

Тепер досягнемо того, щоб на екрані демонструвалося два вікна одночасно: знову натисніть клавішу F10, виберіть WINDOW, натисніть клавішу B>Введення>, підведіть вказівник до опції TILE(черепиця) та натисніть клавішу B>Введення>.

Якщо все зроблено правильно, екран набуде вигляду (див. рис. 6):

Мал. 6

Подвійна рамка, що окреслює вікно програми, свідчить про те, що саме це вікно активно зараз.

Зробимо активним вікно редактора: натиснемо клавішу B>Alt> і, не відпускаючи її, - клавішу з цифрою 1 (вікно редактора має номер 1, вікно програми - номер 2, ці номери написані у верхніх правих кутах рамок). Тепер все готове до подальшої роботи із програмою.

Перші помилки та їх виправлення

1. Не поставлено крапку з комою, наприклад, після оператора readln(a). Після запуску програми, натисканням клавіш B>Ctrl>+B>F9>, у верхньому рядку екрана з'явиться написане червоним кольором повідомлення:

Error 85: ";;"; expected.

(Помилка 85: ";;"; відсутня.)

Редактор встановить курсор наступного символу після пропущеного знака, у прикладі на змінну b. Після натискання будь-якої клавіші повідомлення про помилку зникає і редактор переходить у режим вставки. Треба підвести курсор до потрібного місця, поставити крапку з комою - ";" та продовжити роботу.

2. У описі змінних не записана змінна, а програмі вона присутня, наприклад змінна c. Після запуску програми буде видано повідомлення:

Error 3: Unknown identifier.

(Помилка 3: Невідомий ідентифікатор.)

Курсор буде встановлений на цю змінну, у нашому прикладі на змінну c. Потрібно виправити помилку, тобто. записати змінну cу розділі описів змінних і продовжити роботу.

3. Не поставлено крапку після оператора endнаприкінці програми. Повідомлення компілятора буде таким:

Error 10: Unexpected end of file.

(Помилка 10: Неправильний кінець файлу.),

курсор встановиться на букву"; e"; у слові"; endТреба поставити крапку і знову виконати програму.

Записування файлу на диск

Отже, програму відредаговано і виконано (прокручено), тепер її треба записати на диск. Для цього можна скористатися основним меню, де вибрати опцію "; File(див. рис. 7). Послідовність дій така: 1) натиснути клавішу F10 і перейти в основне меню; 2) перемістити покажчик на опцію "; File"; і натиснути B>Введення>, відкриється друге меню опції "; File";:

Мал. 7

Ви можете із цього меню вибрати опцію "; Save";. Вона записує вміст активного вікна редактора в дисковий файл.

Якщо натиснути клавішу B>Введення>, то середовище запросить ім'я файлу, якщо такого не було встановлено та вікно було пов'язане з ім'ям NONAME00.PAS. Ви можете змінити ім'я або залишити його колишнім.

Ця опція викликається безпосередньо з редактора кнопкою B>F2>.

Можна вибрати опцію SAVEAS. Вона записує вміст активного вікна редактора на дисковий файл під іншим ім'ям.

Діалогове вікно цієї опції має вигляд (див. мал. 8):

Мал. 8

У полі введення потрібно написати ім'я того файлу, в який буде переписано вміст активного вікна редактора. Ви можете вибрати вже існуючий файл із поля вибору або з протоколу з опціями. У цьому випадку, залежно від налаштування середовища, старий вміст файлу буде знищено або збережено у вигляді страхової копії з розширенням.BAK.

Порядковий запис тексту програми

У Паскалі немає правил розбиття тексту програми на рядки.

Однак для запису програми можна дати деякі

Дуже важливо, щоб текст програми був розташований не тільки заради краси, але (і це головне!) задля уникнення помилок. (Знайти помилки у наочному тексті значно легше.)

1. Кожен оператор слід писати з нового рядка, за винятком коротких та за змістом пов'язаних операторів.

Наприклад,

write ... readln ... - записуються в одному рядку, короткі оператори присвоювання можна записати в один рядок:

a:= 23; b: = 105; c:=-11.2.

2. Оператори одного рівня, що у різних рядках, мають бути вирівняні по вертикалі, тобто. однаково відсунуті від лівого краю.

Наприклад, запишемо послідовність операторів визначення суми цифр тризначного числа:

s:= a div 100;

d:= a div 10 mod 10;

e:= a mod 10;

Тут всі оператори рівноцінні, послідовно йдуть один за одним, тому всі починаються з однієї й тієї вертикальної позиції.

3. Оператори, включені до іншого оператора, слід зрушити праворуч на кілька позицій (бажано однаково).

if ... then

4. Рекомендується вертикально вирівнювати пари базових слів: beginі end, з якими ми вже познайомилися, а також слова, з якими ми познайомимося пізніше: repeatі until, recordі end, caseі end.

Ось кілька найпопулярніших варіантів розміщення оператора if:

а) if ... then ...

else ...

б) if ... then ...

else ...

в) if...

then ...

else ...

г) if ...

then ...

else ...

д) if ... then ... else ...

6. Коментарі пишуться або поруч із конструкцією (ідентифікатором, оператором, його частиною), яку вони пояснюють, або в окремому рядку.

Документ

програмуванням програмування програмування, загального... тиша. › Кілька разів парне програмуванняминуло...

  • Алістер коуберн парне програмування переваги та недоліки

    Документ

    Дослідження, пов'язані з програмуваннямта організаційною ефективністю. Дивно... мови програмування, певних способів проектування та програмування, загального... тиша. › Кілька разів парне програмуванняминуло...

  • Введення в нейролінгвістичне програмування Нова психологія особистої майстерності

    Документ

    Буде називатися?" В результаті вийшло Нейролінгвістичне програмування- громіздке словосполучення, за яким ховаються... неговірливий, вокальний, звучати, голос тиша, дисонанс, співзвучний, гармонійний, пронизливий, тихий...

  • НЕЙРОЛІНГВІСТИЧНЕ ПРОГРАМУВАННЯ (методичний посібник для початківців)

    Документ

    ПСИХОТЕРАПЕВТИЧНИЙ ЦЕНТР "ЛАД" В.І.ЕЛЬМАНОВИЧ НЕЙРОЛІНГВІСТИЧНЕ ПРОГРАМУВАННЯ(методичний посібник для початківців) ЧАСТИНА1. ... МОДАЛЬНОСТІ (А). 1. Якщо гучність = 0, то слухає тишу»якщо гучність максимальна, то «горить...

  • 
    Top