Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль - лекциии.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
1 Mб
Скачать

Додаткова інформація про оператор write (writeln)

Якщо використовується оператор Write то наступна величина друкується з того місця, де зупинився курсор. При використанні Writeln наступна величина друкується з початку нового рядка.

Наприклад:

Write(A);

Write(x); à Ax

Writeln(r); à г

В операторі Write (Writeln) можна робити більш докладніші описи та задавати, як повинні виводитись для друку цифри або друкований текст. Для прикладу розглянемо Write (А), де А=15. В результаті виконання цього оператора з'явиться число 15. Але де воно з'явиться? Якщо записати Write (А: 4), то ПЕОМ для друку використає 4 позиції, включаючи знак. Наше число складається із 2-ох позицій, то буде друкуватися проміжок, проміжок, а потім дане число. Якщо змінна А=46254, то ПЕОМ надрукує це число не повністю.

Для виведення цілих та дійсних чисел можна задавати формат в операторі Write. Формат задається через двокрапку після змінної. Для дійсних чисел формат складається із двох величин: перша означає загальне поле числа, яке виводиться, а друга - поле дробової частини. Загальне поле включає в себе знак або проміжок, кількість цифр цілої частини та кількість цифр дробової частини, а також крапку.

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

Перед введенням даних рекомендується давати пояснювальний текст за допомогою оператора Write. Цим самим здійснюється діалог користувача з машиною.

Приклад: Write ('Введіть значення х,у');

Read(xty);

Таким чином, перед введенням числових значень х,у на екрані з'явиться повідомлення 'Введіть значення х,у', після нього можливо здійснити введення 5_7 і натиснути клавішу Enter (Якщо пояснювальний текст не давати, то користувач часто забуває, значення яких змінних треба вводити).

Для виведення декількох проміжків, символ проміжка задається з форматом. (Наприклад: ' |__| ' :5 - друкує п'ять проміжків). Цим часто користуються для відокремлення однієї змінної від іншої.

Наприклад: Write('_':3,A:2, '__:3,В:2)}

Якщо формат відсутній для дійсних чисел, то воно друкується у формі з плаваючою крапкою - мантиса та порядок.

Умовні оператори.

Умовні оператори - це такі оператори, за допомогою яких можливо впливати на послідовність виконання операторів програми.

IF. . THEN (якщо.. то)

IF.. THEN.. ELSE (якщо ..то. . інакше)

Якщо перехід здійснюється при виконанні якої-небудь умови -це умовний оператор.

В операторі IF. . THEN між ними записується умова. Якщо ця умова виконується, то будуть вуконуватися і оператори, що йдуть після THEN.

Приклад: IF x<3 THEN Writeln(x);

Умовний перехід можливо відобразити графічно таким чином:

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

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

y= Ln x, якщо x>0

, якщо x0

Оператор, що реалізує ці обчислення для деякого значення аргументу х має вигляд :

IF x>0 THEN у: =1п(х)

ELSEy:=exp(x);

Якщо умовний оператор не має конструкції ELSE, то така форма оператора називається скороченою. Форма запису оператора IF з ELSE називається повною. Перед ELSE; ніколи не ставиться. На клавіатурі немає знаків #,.,. Замість них користуються < >,<=,>=.

Приклад: Якщо значення змінної t не дорівнює 0 і при цьому

котангенс від t<0.5,.moдi змінити знак t; якщо t=0, то присвоїти t=1.

if t<>0 then

if (cos(t)/sin(t))<0.5 then

t:= -t else t:=l;

Розглянемо приклади програм, що містять умовний оператор:

Приклад 1: Задана функція

0, якщо x0

y=

якщо x>0

Написати програму обчислення у по х.

Program PR1;

Var x,y: integer;

Begin

Read(x);

If x<=0 then y:=0

Else y:=sqr(x)*x;

Writeln(‘y= ',y:3);

End.

Приклад 2: Дано 2-а числа. Якщо перше більше другого по абсолютній величині, то необхідно зменшити перше в 5 разів. Інакше залишити числа без змін. Написати програму:

Program PR2;

Var x,y: real;

Веgin

Read (x,y);

If abs(x)>abs(y) then x: =x/5;

Write ('x= ',x:5:2, 'y= ',y:5:2);

End.

Приклад 3: Дано 3 нерівні числа А,В,С. Обчислити та надрукувати значений z = квадрату більшого з них. Побудувати блок-схему.

Program PR;

VarA,B,C: real;

Begin

Read(A,B,C);

If A>B then Z: =A else Z: =B;

If С>Z thenZ:=C;

Z:=SQR(Z);

Wrlteln('Z= ',Z:4;2);

End.

Д/3 1. Обчислити значення у в залежності від х.

0 при х0

y= х 0<x1

x інакше

2. Нехай у залежить від х. Написати програму обчислення значень у.