Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Вкладені цикли

Цикли

Якщо які-небудь оператори необхідно виконати кілька разів, то їх не переписують кожного разу наново, а організовують цикл.

Приклад 1. Підрахувати кількість непарних цифр в записі натурального числа n.

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

 
1. Ввести число n 2. K := 0 {підготуватилічильник} 3. Якщоn = 0, переход к п. 7 4. Якщоn mod 10 mod 2 = 1, то K := K +1 5. n := n div 10 6. Перехідк п. 3 7. ВивестиK 8. Кінець

Завдання вирішене двома способами. Зліва рішення оформлене з використанням циклу з передумовою, справа — з постумовою.

Приклад 2. Дана послідовність, загальний член якої визначається формулою

 

Обчислити при n>2 суму тих її членів, які більше заданого числа e.

При рішенні задачі знаходиться черговий член послідовно і, якщо він більше e, додається до суми.

  1. Ввести  2. S := 0 3. A := 1/4 4. n := 3 5. ПорівнятиА з. ЯкщоA>=, перейти доп. 10 6. S := S + A 7. A := (n-1)/(n*n) 8. n := n + 1 9. Перехіддоп. 5 10. ВиведенняS 11. Кінець

У розглянутих вище прикладах кількість повторень заздалегідь невідома. У першому воно залежить від кількості цифр в записі натурального числа, в другому — від числа e.

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

Приклад 3. Знайти добуток перших к натуральних чисел, кратних трьом.

При складанні алгоритму врахуємо, що перше натуральне число, кратне 3, є трійка, а всі подальші більші попереднього на 3.

  1. Введенняk 2. P := 1 {тутнакопичуємдобуток} 3. T := 0 {тутбудутьчисла, кратні3} 4. I := 1 5. ЯкщоI >k, перейтидо п. 10 6. T := T + 3 7. P := P * T 8. I := I + 1 9. Перейти до п. 5 10. Виведення P 11. Кінець

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

Можливі випадки, коли усередині тіла циклу необхідно повторювати деяку послідовність операторів, тобто організувати внутрішній цикл. Така структура отримала назву циклу в циклі або вкладених циклів. Глибина вкладення циклів (тобто кількість вкладених один в одного циклів) може бути різною.

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

Приклад вкладених циклів «для»

Обчислити суму елементів заданої матриці А(5,3).

МатрицяА   S:= 0; пцдляi от1 до5 пцдляj от1 до3 S:=S+A[i,j] кц кц

Приклад вкладених циклів «поки»

Обчислити добуток тих елементів заданої матриці A(10,10), які розташовані на перетині парних рядків і парних стовпців.

  i:=2; P:=1 пцпокаi <= 10 j:=2 пцпокаj <= 10 P:=P*A[i,j] j:=j+2 кц i:=i+2 кц

Читайте також:

  1. V. Економічні цикли.
  2. Алгоритмічна конструкція повторення та її різновиди: безумовні цикли, цикли з після умовою та з передумовою.
  3. Арифметичні цикли. Оператор циклу For – Next
  4. В. З одноразовою зміною хазяїна (диксенні цикли) та ендогенною агломерацією
  5. Вкладені запити.
  6. Гамільтонові цикли
  7. Гетероциклические ароматические соединения
  8. Другий закон термодинаміки. Цикли Карно.
  9. Економічний розвиток та економічні цикли.
  10. Економічні цикли і їх структура. Індикатори циклічних коливань
  11. Економічні цикли та їх фази. Теорія «довгих хвиль» в економіці.




Переглядів: 1488

<== попередня сторінка | наступна сторінка ==>
Розвилка | Достоїнства і недоліки машинних мов

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.002 сек.