Лекция: Лабораторна робота №4

Програмування циклічних алгоритмів (продовження)

Приклад. На проміжку від 1 до M знайти всі числа Армстронга. Натуральне число з n цифр називається числом Армстронга, якщо сума його цифр, зведених у n-ю степінь, дорівнює самому числу.

Етапи рішення задачі:

1. Математична модель:,

2. Складемо блок схему програми:

 

Опишемо блок «Підраховуємо кількість цифр у числі i»

Опишемо блок «Перевіряємо, чи є i числом Армстронга»

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

Program example4; var i,k,s,p,n: Integer; begin Write('Уведіть M '); Readln(m); For i:=1 to M do begin s:=0; k:=i; n:=0; While k<>0 do begin k:=k DIV 10; n:=n+1 end; k:=i; While k<>0 do begin p:=k MOD 10; k:=k DIV 10; If p<>0 then s:=Trunc (s+Exp(n*Ln(p))) end; If s=f then WriteLn (f) end; end.

Контрольні питання

1. Як записується і як працює оператор FOR?

2. Для організації яких циклів застосуємо оператор FOR?

3. У чому відмінність оператора WHILE від оператора REPEAT?

4. Як програмуються циклічні алгоритми з явно заданим числом повторень?

5. Як програмуються циклічні алгоритми з заздалегідь невідомим числом повторень?

6. Напишіть оператор циклу, що не виконується жодного разу.

7. Напишіть оператор циклу, що виконується необмежене число разів.

8. Заміните оператор «Repeat A Until B» рівносильним фрагментом програми з оператором While.

еще рефераты
Еще работы по информатике