Оператори Turbo Pascal 7

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Оператори Turbo Pascal 7

Зміст
1. Оператори введення і виведення інформації.
2. Оператори мови ТР.7.
2.1 Складовою оператор Begin ... end.
2.2 Умовний оператор If.
2.3 Оператор безумовного переходу Goto.
2.4 Оператор вибору Case.
3. Оператори циклічних процесів.
3.1 Оператор циклу з параметром FOR.
3.2 Оператор циклу з передумовою While.
3.3 Оператор циклу з наступною умовою Repeat.

1. Оператори введення і виведення інформації
Для того, щоб ввести будь-які дані в пам'ять машини, використовують оператори введення READ або READLN.
При використанні READ після введення інформації курсор залишиться мигати на тому ж рядку, що і вводиться параметр. При використанні READLN курсор перейде на новий рядок.
Read (x);
Readln (x);
У деяких випадках за допомогою першого оператора вводять декілька змінних:
Read (x, y, z)
Щоб вивести на екран дисплея результат розрахунку або яку-небудь іншу інформацію (коментар, текст ...), використовують оператори виведення WRITE або WRITELN:
Write (x);
Writeln (y);
Writeln (`при х = `, x, '_ _ y =', y);
Зручно поєднувати як текстову інформацію, так і нараховану цифрову. При цьому текстова інформація полягає в апострофи, а виводяться елементи розділяються комами.
Якщо з допомогу WRITE або WRITE LN на екран виводяться дробові числа, то машина подає їх в незручному для сприйняття експоненційному вигляді:
16,23 => 1.6230000000Е + 01
Щоб виводити на екран числа в звичному вигляді, в операторі виведення у виведених дробових параметрів записують їх формат, тобто кількість позицій, що відводяться під дробову частину виведеного числа. Ці параметри відокремлюються один від одного двокрапкою:
Y = 16,23
Writeln (y: 5: два)
(5 - загальна кількість позицій під число, 2 - кількість знаків після коми)
Формат можна вказувати і при виведенні на екран цілих чисел:
Writeln (x: 4)
Якщо виведене ціле число займає меншу кількість позицій, ніж під нього відведено, то машина зрушить це число від лівої частини екрану до кількості незаповнених позицій.

2. Оператори мови ТР.7
У ТР.7 в програмах використовують наступні оператори:
2.1 Складовою оператор Begin ... end
Застосовується в програмі в тих випадках, коли ті чи інші конструкції програми передбачають виконання в них тільки одного оператора, а нам у даній програмі потрібно виконати декілька операторів. У цьому випадку ці оператори укладають в «операторні дужки» BEGIN ... END, і програма думає, що вона не має працювати з одним складовим оператором.
Begin
Оператор 1
Оператор 2
- - - - - - - - -
оператор N
end;
Виконавча частина програми представляє собою великий складений оператор, тому що також полягає в «операторні дужки» BEGIN ... END.
Після слова BEGIN і перед словом END крапку в коми ставити не обов'язково, тому що вони є своєрідними знаками пунктуації.
2.2 Умовний оператор I f.
Умовний оператор If реалізує в програмі алгоритмічну конструкцію «розвилка».

Схема лінійного алгоритму
SHAPE \ * MERGEFORMAT
початок
Овал: початок
SHAPE \ * MERGEFORMAT
Вихідні дані
Паралелограм: Вихідні дані
SHAPE \ * MERGEFORMAT
Обчислення y = f (x)
Підпис: Обчислення y = f (x)
SHAPE \ * MERGEFORMAT
Висновок результатів розрахунку
Підпис: Виведення результатів розрахунку
SHAPE \ * MERGEFORMAT
кінець
Овал: кінець
Схема алгоритму «розвилка»
SHAPE \ * MERGEFORMAT
початок
Овал: початок
SHAPE \ * MERGEFORMAT
Вихідні дані
Паралелограм: Вихідні дані
SHAPE \ * MERGEFORMAT
Перевірка умови
Ромб: Перевірка умови
SHAPE \ * MERGEFORMAT
Обчислення y 1
Підпис: Обчислення y1   SHAPE \ * MERGEFORMAT
Обчислення y 2
Підпис: Обчислення y2
SHAPE \ * MERGEFORMAT
Висновок результатів розрахунку
Підпис: Виведення результатів розрахунку
SHAPE \ * MERGEFORMAT
кінець
Овал: кінець

Розрізняють 2 варіанти оператора IF:
1) «Повна розвилка» в загальному вигляді виглядає так:
IF <умова> THEN <оператор 1>
ELSE <оператор 2>;
Приклад:
If (х> = 0) then у: = sqr t (х)
el se у: = abs (х);
2) «Коротка розвилка»
IF <умова> THEN <оператор один>;
If (х> = 0) then у: = sqr t (х);
У цих конструкціях умова - перевіряється логічне умова.
У кожної гілки оператора IF за замовчуванням може виконуватися тільки один оператор. Якщо ж нам необхідно в кожній гілці виконати по кілька операторів, то їх укладають у «операторні дужки» BEGIN ... END:
IF <умова> THEN <оператор 1>
ELSE BEGIN
<Оператор 2 ";
<Оператор 3>;
<Оператор 4>;
END;
Часто в програмах доводиться обчислювати по декілька функцій залежно від істинності чи хибності перевіряються логічних умов. У цих випадках у програмах застосовують декілька операторів I F - або кілька «повних розвилок», або комбінацію з «коротких» і «повних розвилок»:
IF <Y 1> THEN <оператор 1>
ELSE <оператор 2>;
IF <Y 2> THEN <оператор 3>
ELSE <оператор 4>;
IF <Y 1> THEN <оператор 1>
IF <Y 2> THEN <оператор 2>
IF <Y 3> THEN <оператор 3>
IF <Y 4> THEN <оператор 4>
З збільшенням кількості перевірених умов програму стає більш громіздкою і в її структурі можуть виникати логічні невідповідності.
Для того, щоб скоротити кількість перевірених логічних умов і правильніше записувати алгоритм програми, необхідно застосовувати так звані «вкладені» конструкції оператора IF.
У загальному вигляді:
If <Y 1> THEN <оператор 1>
ELSE IF <Y 2> then <оператор 2>
ELSE IF <Y 3> THEN <оператор 3>
ELSE IF <Y 4> THEN <оператор 4>;
Приклад:
Скласти програму для обчислення функції Y за допомогою коротких розвилок і за допомогою вкладених операторів:
{
х
Y =
х + 5

х 2


I.
Program Y__X;
Uses Crt;
Var X, Y: Real,
Begin
Clrscr;
Write (`Введіть Х: _`);
Readln (x);
If (X <0) then Y: = sqrt (abs (x));
If (X <0) then Y: = x + 5;
If (X <0) then Y: = х * х;
Writeln (`У х =`, x: 4:2, '_ _ _ Y = `), y: 4:3;
Readkey;
End.
II.
Program Y__X;
Uses Crt;
Var X, Y: Real;
Begin
Clrscr;
Write (`Введіть Х: _`);
Readln (x);
If (X <0) then Y: = sqrt (abs (x))
else if (Х = 0) then y: = x + 5
else y: = x * x;
Writeln (`При х =`, x: 4:2, '_ _ _ Y = `), y: 4:3;
Readkey;
End.
При використанні в програмах IF подвійних умов застосовують для зв'язку цих умов між собою логічні оператори AND, NOT, ОR.
Щоб логічне умову записувалося правильно, необхідно кожну половину подвійного умови укладати в дужки:
0 х 5
if (x> = 0) and (x <= 5) then
2.3 Оператор безумовного переходу Goto
Оператор безумовного переходу Goto дозволяє змінити хід виконання програми, починаючи з будь-якого оператора, який відмічено у програмі спеціальною міткою.
Всі мітки в програмі повинні бути оголошені заздалегідь у розділі міток L ABEL.
У розділі L ABEL мітки перераховуються через кому:
Label 1, а, W, c1 ...;
В якості міток можна використовувати:
· Звичайні імена, що задаються програмістом
· Числа від 0 до 9999.
Оператор, який позначається міткою, відокремлюється від неї двокрапкою:
1: Writeln (x);
- - - - - -
goto 1;
Посилання на позначений оператор здійснюється оператором GOTO із зазначенням імені позначки.
Приклад: Знаходження частки від розподілу X і Y, яке б здійснило страховку програми від ділення на 0.
Program Delenie;
Uses Crt;
Label 1;
Var X, Y, Z: Real;
Begin
Clrscr;
Write (`Введення Х: _`);
Readln (x);
1: Write (`Введення Y: _`);
Readln (y);
If (Y = 0) then begin
Writeln (`Ділити на 0 не можна!`);
Goto 1
End
else Z: = x / y;
Writeln (`Z =`, `Z: 4:` 1 `);
Readkey;
End.
2.4 Оператор вибору Case
Для реалізації в програмах крім умовного оператора IF використовується оператор З ASE.
У загальному вигляді:
СASE <селектор> OF
<Варіант 1>: <оператор 1>;
<Варіант 2>: <оператор 2>;
- - - - - - -
<Варіант N - 1>: <оператор N - 1>;
ELSE <оператор N>;
END;
де селектор - вираження порядкового типу (наприклад, INTEGER, CHAR ), Значення якого обчислюється в програмі наперед, варіант 1, 2, ..., N - можливі значення селектора.
У кожної гілки оператора CASE на місці будь-якого варіанту може стояти або одне селектора значення, або кілька таких значень комами, або значення селектора у вигляді відрізка.
У кожної гілки оператора C ASE за замовчуванням може виконуватися тільки 1 оператор. Якщо ж нам необхідно виконати декілька операторів, то їх укладають у «операторні дужки» BEGIN ... END.
У будь-якому випадку в операторі CASE повинні бути перераховані всі можливі значення селектора або їх зазначення в явному вигляді у варіантах від 1 до N - 1, або віднесенням до пункту ЕLSE в неявному вигляді.
Case X of
1: Y: = X + 1;
2, 3, 4: Y: X + 2;
5 .. 10: Y: = X + 3;
else Y: = 0;
end;
Приклад:
Перевірка чисел від 1 до 10 на парність
Program Chet;
Uses Crt;
Var X: Integer;
Begin
Clrscr;
Write (`Введіть Х від 1 до 10`);
Readln (x);
Case X of
1, 3, 7, 9: Writeln (`Це непарне число`);
2, 4, 6, 8, 10: Writeln (`Це парне число`);
else Writeln (`Введення невірний!`);
end;
Readkey;
End.

3. Оператори циклічних процесів
У багатьох програмах доводиться багато разів повторювати деякі їхні ділянки. Такі повтори реалізуються за допомогою циклічних процесів (циклів)
3.1 Оператор циклу з параметром FOR
Дозволяє багаторазово виконувати в програмі будь-якої оператор заздалегідь відоме число разів.
Існує 2 різновиди циклу FOR:
1. Цикл FOR з збільшується параметром:
FOR <i>: = <st> TO <F> DO <оператор>
2. Цикл FOR з зменшуваним параметром:
FOR <i>: = <F> DOWNTOWN <St> DO <оператор>
I - індекс або параметр циклу, який представляє собою вираження порядкового циклу (Integer, Char).
St і F - відповідно, початкове і кінцеве значення параметра циклу.
For i: = 1 to Y: = x + i
For i: = 5 down to 0 do writeln (`ЗВФ`);
Якщо в циклі FOR необхідно виконати декілька операторів, то їх укладають у «операторні дужки" BEGIN ... END.
У циклі FOR не можна задавати крок, відмінний від 1 (тому що програма за замовчуванням в цьому циклі змінює індекс циклу на 1)
Приклад:
Скласти програму для знаходження середнього арифметичного розміру у деталей в партії.
Program Sr__rasmer;
Uses Crt;
Var i, N: Integer;
S, r, Sr: Real,
Begin
Clrscr;
Write (`Кількість деталей в партії: _ _`);
Readln (N);
S: = 0;
For i: = 1 to N do
Begin
Write (`Введіть розмір`, i `-тої деталі: _ _`);
Readln (r);
S: = S + r;
End;
Sr: = S / N;
Writeln (`Sr =`, Sr: 5:3);
Readkey; End.
3.2 Оператор циклу з передумовою While
Дозволяє багаторазово виконувати в програмі якої-небудь один оператор заздалегідь невідоме число разів.
Структура циклу WHILE:
WHILE <умова> DO <оператор>;
Умова - логічне умова, істинність якого перевіряється перед кожним заходом на цикл. Якщо перевіряється умова вірна, то цикл WHILE виконується знову. Як тільки умова стає помилковим, ми виходимо з циклу. Якщо умова ніколи не стає помилковим, то програма зациклюється.
Для виходу з зациклення необхідно натиснути комбінацію клавіш:
Ctrl + Break
Якщо в циклі WHILE необхідно виконати декілька операторів, то їх укладають у «операторні дужки» BEGIN ... END.
Приклад:
Модернізувати програму з розрахунку середнього арифметичного розміру деталей в партії (див. вище) за допомогою циклу WHILE.
Program Sr__rasmer1;
Uses Crt;
Var i, N: Integer;
S, r, Sr: Real;
Begin
Clrscr;
Write (`Кількість деталей в партії: _ _`);
Readln (N);
S: = 0; i: = 1;
While (I <= N) do
Begin
Write (`Введіть розмір`, i `-тої деталі: _ _`);
Readln (r);
S: = S + r;
I: = I + 1;
End;
Sr: = S / N;
Writeln (`Sr =`, Sr: 5:3);
Readkey;
End.
3.3 Оператор циклу з наступною умовою Repeat
Дозволяє багаторазово виконувати будь-яку кількість операторів заздалегідь невідоме число раз.
Структура:

REPEAT <оператор 1>;
<Оператор 2>;
<Оператор 3>;
- - - - - - -
<Оператор N>;
UNТIL <умова>;
У циклі REPEAT умова перевіряється на виході з циклу, тому цей цикл виконується хоча б 1 раз в будь-якому випадку.
Вихід з циклу REPEAT здійснюється в тому випадку, коли перевіряється умова стає істинним.
Якщо воно не стає істинним ніколи, то програма зациклюється.
Для виходу з зациклення необхідно натиснути комбінацію клавіш: Ctrl + Break
Приклад:
Модернізувати програму з розрахунку середнього арифметичного розміру за допомогою циклу REPEAT.
Program Sr__rasmer2;
Uses Crt;
Var i, N: Integer;
S, r, Sr: Real,
Begin
Clrscr;
Write (`Кількість деталей в партії: _ _`);
Readln (N);
S: = 0; i: = 1;
Repeat
Write (`Введіть розмір`, i, `-тієї деталі: _ _`);
Readln (r);
S: = S + r;
I: = I + 1;
Until (I> N);
Sr: = S / N;
Writeln (`Sr =`, Sr: 4:2);
Readkey; End.
Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Реферат
48.6кб. | скачати


Схожі роботи:
Типи даних алгоритмічної мови TURBO Pascal Стандартні функції і оператори роботи з рядками
Основні відомості про алгоритмічну мову Turbo Pascal Графіка Pascal
Turbo Pascal
Записи у мові Turbo Pascal
Модульне програмування Turbo Pascal
Файли в мові Turbo Pascal
Процедури та функції в Turbo Pascal
Програми в середовищі Turbo Pascal
Типи даних в Turbo Pascal
© Усі права захищені
написати до нас