Мітки. Оператор переходу. Застосування оператора переходу для дострокового виходу з циклу.
⇐ ПредыдущаяСтр 3 из 3 Оператор переходу вказує, що подальша робота (виконання програми) повинна продовжуватись з іншої точки програми, а саме, з оператора, відміченого міткою. Оператор має вид: Goto < мітка > Мітка представляє собою ціле число без знака, що складається не більш ніж з 4 цифр. У розділі операторів кожна мітка може зустрічатися тільки перед одним оператором. Кожна мітка, що зустрічається в розділі операторів, повинна бути описана в розділі міток.
Розділ міток визначений наступною діаграмою:
Розділ міток
Після мітки, що відмічає оператор, треба ставити двокрапку. Наприклад: 1995: х:= х +I; 1: read(Y);
Увага! Дія оператора переходу усередину складного оператора ззовні не визначено.
Оператор переходу слід використати у незвичайних, виняткових ситуаціях, коли доводиться порушувати природну структуру алгоритму. Треба пам’ятати, що будь-який алгоритм може бути реалізований без застосування Goto без втрати ефективності. Цей факт має принциповий характер. Саме тому структурний стиль програмування іноді називають “Програмування без Goto ”. У якості єдиного приклада програми з Goto розглянемо задачу пошуку елемента в одномірному масиві.
Приклад 8. Program Search_in_Array; Label 1; Const n = 100; Var A: Array[1..n] of Real; b: Real; Flag: Boolean; i: Integer; Begin {Блок читання масиву A і елемента b} Flag:= true; For i:= 1 to n do If A[i] = b then begin Flag:= false; goto1 end; { переривання циклу } 1:If Flag then Writeln(‘ Елемент ‘,b,’ у масиві відсутній ’) else Writeln(‘ елемент ‘,b,’ стоїть на ’,i,’-тому місці ’); End. Вишуканий (елегантний) розв’язок цієї задачі без застосування Goto буде розглянуто нижче. Хід роботи.
1. Скласти програму табулювання функції z = f (x, y) в прямокутнику [a, b]x[c, d] з кроком табуляції h (див. завдання №1 – свій варіант).
2. Зберегти її. 3. Відкомпілювати її і запустити на виконання для кількох значень. У зошити записати текст програми, вихідні дані, та результати роботи програми. 4. Написати в редакторі програми (виконати свій варіант із завдання № 2). 5. Зберегти їх. 6. Відкомпілювати їх і запустити на виконання для кількох значень. У зошити записати текст програм, вихідні дані та результати роботи програми.
Контрольні питання.
1. Дати поняття оператору циклу з параметром. 2. Дати поняття операторів повторення While і Repeat. 3. Визначити поняття обмеженого типу. 4. Визначити складні типи даних. 5. Чим вiдрiзняються i що спiльного у циклiчних операторах? 6. Визначити поняття iтерацiйного циклу. 7. Описати структуру циклічних програм. 8. Визначити синтаксис оператору переходу. Застосування оператора переходу для дострокового виходу з циклу. Завдання 1. Скласти програму табулювання функції z = f (x, y) в прямокутнику [a, b]x[c, d] з кроком табуляції h.
Завдання 2.
5. Скласти програму обчислення суми парних чисел у інтервалі від 0 до 10 включно.
6. Підрахувати кількість цифр у десятинному запису цілого додатного числа. 7. Дано ціле число. Знайти всі його дільники. 8. Скласти програму обчислення суми непарних чисел у інтервалі від a до b. 9. Підрахувати n-й елемент арифметичної прогресії, перший елемент якої 1, а крок дорівнює 2.
11. Знайти суму перших n елементів геометричної прогресії, перший елемент якої 1, а крок дорівнює 2.
13. Знайти перший від'ємний член послідовності cos(ctg m), при m = n, n+1, n+2, n+3, …. Причому n вимірюється у градусах. Результат вивести у радіанах з точністю до тисячних.
15. Розробити програму, яка за даним натуральним числом N та дійсним числом x в єдиному арифметичному циклі обчислює суми C(N, x) = 1/0! - x2/2! + x4 /4!... + (-1)N* x 2N/(2N)!. S(N, x) = x/1! - x3/3! + x5 /5!... + (-1)N* x 2N+1/(2N+1)!. 16. Дано натуральне число n. Скласти програму обчислення значення виразу: . Результат округлити до тисячних.
Читайте также: IV. Циклдік оператор алгоритмдерін программалау Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|