Тема: Програмування. Основні етапи розробки прикладних програм
Вид материала | Документы |
СодержаниеBegin For a:=false to true do Begin |
- Текст програми це набір інструкцій (команд), які можуть бути виконані комп'ютером., 221.57kb.
- Тема: Робота в середовищі програмування. Запуск програм на виконання, 202.65kb.
- 1. Мови програмування (процедурні, візуальні, специфікацій). Концепція інструментального, 757.76kb.
- Програма Комплексного вступного іспиту на окр «Спеціаліст», 814.3kb.
- Називається комплекс програмних та мовних засобів, які використовуються для створення, 149.17kb.
- План лекції Тема І основні питання. Актуальність теми Лекційний матеріал Педіатрія, 473.4kb.
- Тема. Основні етапи розв’язування прикладної задачі з використанням комп’ютера. Інформаційна, 85.92kb.
- Розробка програми (робочого плану) моніторингу світового ринку готельних та ресторанних, 33.83kb.
- Структуризація програми. Поле, метод, класс, файл, проект. Об’єктне програмування., 327.95kb.
- Рекомендації з розробки навчальних та робочих програм (зі змінами І доповненнями) львів, 500.26kb.
Var
i, S:integer;
S:=0;
For i:=1 to 10 do S:=S+i;
Writeln(S);
End.
- Програма друкування символів ‘a’..’z’.
Var c:char;
Begin
For c:=’a’ to ‘z’ do write(c:3);
End.
- Програма побудови таблиці істинності для and.
Var a,b: Boolean;
Begin
For a:=false to true do
Begin
For b:=false to true do
Write (a and b :6);
Writeln
End;
End.
Цей оператор циклу ще називають оператором циклу з параметром for to, він передбачає повторення із збільшенням параметру. Оскільки в Turbo Pascal не можна керувати кроком зміни параметра, то для реалізації повторення із зменшенням параметра використовують інший варіант циклу for downto.
FOR<параметр> : = <початкове значення> DOWNTO <кінцеве значення> DO <тіло циклу>;
Після виконання кожного етапу циклу параметр зменшується на 1 одиницю типу.
Зауваження. У випадку необхідності вийти з тіла циклу достроково, тобто до досягнення параметру кінцевого значення не бажано користуватися оператором безумовного переходу, а також аналітичним йому підпрограм типу exit, halt(1).
Для виконання виходу краще змінити значення параметру в тілі циклу.
б) Оператор циклу з передумовою. Якщо кількість повторень деякої послідовності команд алгоритму не є визначеною наперед, або повторення повинні припинитися у різних випадках, то оператор циклу з параметром не завжди дозволяє виконати це. Також можливі ситуації, коли алгоритм взагалі не оперує якимось параметром, а повторення продовжується до певної логічної умови. В таких випадках використовується інший варіант циклу. Фактично їх два. Один із них називається циклом з передумовою.
WHILE <логічний вираз> DO <тіло циклу> ;
Поки значення логічного виразу в заголовку є істинним, виконується тіло циклу, коли значення виразу хибне, цикл припиняється. Якщо логічний вираз є хибним відразу, то цикл не виконується жодного разу.
Очевидно, що тіло циклу повинно містити якісь дії, що приводять до зміни логічного виразу від true до false.
Наприклад
Дано мішок картоплі, яка вся різної маси. Найменша картоплина важить 50 г. Крок маси 5 г . Скільки картоплин вміститься в 10 кг відрі, якщо їх класти в порядку зростання маси.
Var m, dm, S: real;
i: integer;
begin
m:=0.05;
dm:=0.005;
S:=0; i:=0;
While S<=10 do
Begin
S:=S+m; i:=i+1;
m:=m+dm
end;
writeln(кількість картоплин‘’,i-1)
end.
в) Оператор циклу з післяумовою. Цикл з передумовою передбачає спочатку перевірку, а потім виконується. Деколи потрібно навпаки, спочатку виконати дію, а потім перевірити результат. Якщо результат незадовільняє, то повторити відповідні дії.
REPEAT <тіло циклу> UNTIL <логічний вираз> ;
Тіло циклу виконується до тих пір, поки значення логічної умови є хибною, як тільки істинне цикл припиняється.
Не потрібно об’єднувати тіло циклу операторними дужками.
Наприклад
Відрахувати кількість картоплин, що у відрі, якщо остання повинна важити не менше півкіло.
...
begin
m:= 0.05;
dm:= 0.005;
i:=0;
repeat i:=i+1;
m:=m+dm
until m>=0.5;
writeln(кількість картоплин‘’,i+1)
end.
Зауваження. Використання операторів циклу з передумовою і післяумовою дозволяє забезпечити достроковий вихід з циклу при певній умові без конструкції типу exit або goto. Для цього достатньо в логічний вираз включити складену умову, яка є кон’юнкцією, диз’юнкцією умов покорення та умови дострокового виходу.
Наприклад
Підрахувати кількість картоплин у відрі, поки не буде покладена 0.5 кг, якщо при цьому вони вміщатимуться у відро.
…
begin
m:=0.05;
dm:=0.005;
S:=0; i:=0;
While (S<=10) and(m<0.5) do
Begin S:=S+m; m:=m+dm; i:=i+1
End;
If S>10 then writeln(‘відро переповнилося’) else writeln(‘0ю5 кг картоплина під №’,i);
End.
- Оператор вибору варіанту. Оператор варіанту подібний до оператора розгалуження, оскільки передбачає виконання однієї з декількох послідовності команд в залежності від значення спеціального параметра.
Відмінність від оператора розгалуження полягає у тому, що кількість можливих альтернативних варіантів може бути значно більшою ніж 2. Вибір варіанту визначається не значенням логічного виразу, а значенням параметра, що є величиною одного із порядкових типів. Загальна структура:
CASE <параметр> OF
<значення1> : <оператор>;
<значення2> : <оператор2>;
...
<значення п> : <оператор п>
END
ELSE <оператор п+1> ;
Параметр може бути або константою, або змінною, або виразом деякого порядкового типу.
Значення 1, 2... – деякі можливі значення відповідного порядкового типу, яких може набувати параметр. В залежності від значень параметра виконується один з операторів.
Якщо реальне значення параметра не співпадає ні з жодним значенням, то виконується альтернативна частина else. Оскільки вона не обов’язкова, то її відсутність означає не виконання жодної дії.
Зафіксовані значення параметрів можуть бути не лише окремими зображеннями відповідного типу, а цілими, інтервальними або переліком декількох значень.
Наприклад
Вивести на екран повідомлення про вид символа, що вводиться з клавіатури.
Var c:char;