Програма записується в окремому exe-файлі. Таким чином, програма це алгоритм, який призначається для виконання комп'ютером. Двійкове подання команд комп'ютера називається
Вид материала | Урок |
СодержаниеПрограмування складних розгалужених алгоритмів. Оператор варіанта У короткій формі Цикл із передумовою Цикл із післяумовою |
- Комплекс програм, які використовуються для роботи з комп'ютером, називається програмним, 156.82kb.
- Програма курсу «Сходинки до інформатики» 2 клас, 66.29kb.
- Програма, яка призначена для відображення вмісту web-сторінок називається а сервер, 18.35kb.
- 5 операційні системи, 496.26kb.
- Програма курсу за вибором "основи комп’ютерної безпеки " для основної школи, 119.72kb.
- 1. Назва модуля, 79.93kb.
- 1. Назва модуля, 92.33kb.
- Робоча навчальна програма предмет Комп’ютери у фізичних дослідженнях, 98.31kb.
- Тема уроку, 27kb.
- Текст програми це набір інструкцій (команд), які можуть бути виконані комп'ютером., 221.57kb.
Програмування складних розгалужених алгоритмів. Оператор варіанта
Для зручного запису розгалужень з багатьма альтернативами в мову програмування Паскаль введено оператор варіанта. Існують дві форми оператора варіанта: повна і коротка. Повна форма має вигляд: case <вираз> of
<набір_значень_1> : <оператор1>;
<набір_значень_2> : <оператор2>;
<набір_значень_№> : <оператор№>;
else <оператор>;
end;
(case — у перекладі з англійської означає «випадок», «варіант»),
де <вираз> — це арифметичний вираз, значенням якого є величина цілого або символьного типу даних (іноді <вираз> називається селектором від англійського select — вибирати), <на-бір_значень> — це одна або декілька величин відповідного типу, розділених комами; у наборі можна також указувати діапазони значень через дві крапки,наприклад:
1, 2, 6. .9, 20 — до цього набору значень входять числа 1, 2, 6, 7, 8, 9, 20;
'a', .'d', 'x'. ,'z' - до цього набору значень входять символи «a», «b», «c», «d», «x», «у», « z ».
Значення з наборів мають бути унікальними, тобто в різних наборах не може бути двох збіжних значень.
Принцип роботи: значення <виразу> обчислюється і шукається серед <наборів_значень>. Якщо значення знаходиться у деякому <наборі_значень>, то виконується відповідний оператор, інакше виконується оператор, який стоїть після слова else. Оскільки значення в наборах не можуть збігатися, то виконується тільки один із операторів.
Для того, щоб виконувався не один, а декілька операторів, їх треба взяти в операторні дужки.
У короткій формі оператора варіанта else-гілка опускається, і, якщо значення <виразу> не збігається з жодним значенням із наборів, то відразу виконується оператор, який стоїть після оператора варіанта.
Приклади використання оператора варіанта:
a)case і of
0..9 : writeln ('Число однозначне/); 10.. 9 9 : writeln ('Число двозначне.'); 100.. 9 99 : writeln ('Число тризначне.'); 1000..9999 :
writeln ('Число чотиризначне.'); end;
б) write ('Котра.година?');
readln(h); case h of
6.. 11 : writeln ('Зараз ранок.');
12..17 : writeln ('Зараз день.');
18..22 : writeln ('Зараз вечір.');
23,0..5 : writeln ('Зараз ніч.');
else
writeln ('Неправильно введено час.'); end;
в) case c of
'а', 'о' /е' /і', У, 'й': writeln ('Буква голосна.'); else writeln('Буква приголосна.'); end;
Цикл із передумовою
Для програмування циклів з передумовою в мові програмування Паскаль застосовується оператор циклу з передумовою.
Оператор циклу з передумовою записується таким чином:
while <умова> do
<оператор>;
У перекладі з англійської while означає «поки», do — «робити».
Принцип роботи:
Перевіряється <умова>; якщо вона виконується, то виконується <оператор> і здійснюється повернення до перевірки <умови>. Якщо <умова> виявляється невиконаною, відбувається вихід з циклу. Оскільки <умова> перевіряється до початку виконання <оператора>, цикл може не виконуватися жодного разу.
<0ператор> називається тілом циклу. Якщо тіло циклу містить понад один оператор, їх треба взяти в операторні дужки begin ... end.
Некоректне використання оператора while може призвести до «зависання» комп'ютера. Це може статися у разі, коли виконання тіла циклу не буде впливати на <умову>.
Наприклад:
while a
Приклади циклів з передумовою:
а)і:=1;
while i<10 do
begin
write('*');
і:=і+1;
end;
Змінна і пробігає значення від 1 до 10, на екран буде виведено 9 зірочок (для і=10 зірочка не виводиться).
б)і:=1;
readln(m);
while i
i:=i*2;
writeln(i);
Змінна і множиться на 2 до тих пір, поки не перевищить значення заданого числа f. Інакше кажучи, наприкінці цього фрагмента програми .значення і дорівнюватиме найменшому степеню числа 2, що перевищує f. Наприклад, якщо f дорівнює 1000, то на екран виведеться число 1024 (210),
Цикл із післяумовою
Для програмування циклічних алгоритмів, в яких перевірка умови виконується після виконання тіла циклу, в мові програмування Паскаль використовується цикл з післяумовою. Оператор циклу з післяумовою записується так: repeat
<серія операторів>; until <:умова>;
. У перекладі з англійської repeat означає «повторювати», until — «до тих пір». Принцип роботи:
Виконується <серія оііераторів>, після чого перевіряється <умова>; Якщо <умова> виконується, відбувається вихід з циклу, інакше — повернення до виконання <серії операторів>.
Оскільки <умова> перевіряється після виконання <серії олераторів>, цикл буде виконано хоча б один раз.
Тілом циклу є саме серія, тобто послідовність операторів, і її (на відміну від циклу з передумовою) не треба брати в оператори! дужки, тому що роль дужок відіграють службові слова repeat — until.
Приклади використання оператора циклу з •післяумовою:
а)і:=1;
repeat write(.'*');
і:=і+1;
until i=11;
. Результат роботи: змінна і пробігає значення від 1 до 11, на екран буде виведено десять зірочок.
б) repeat
readln(n);
until (n>9) and (n<100);
Результат роботи: програма запрошуватиме введення цілого числа до тих пір, поки не буде введене двозначне число, воно і стане остаточним значенням змінної n.
10>