Тема: Розробка програм з циклічною обробкою даних. Однопрохідні алгоритми.

Лабораторна робота № 3

З дисципліни «Основи програмування»

Тема: Розробка програм з циклічною обробкою даних. Однопрохідні алгоритми.

1. Зміст роботи

 

3.1. Проаналізувати завдання, скласти алгоритм рішення задачі.

3.2. У середовищі програмування набрати текст програми.

3.3. Здійснити компіляцію програми, виявити й усунути помилки компіляції.

3.4. Виконати програму в покроковому режимі й у режимі пуску. Переконатися в правильності реалізації завдання. У разі потреби - виправити помилки і повторити п. 3.3.

2. Завдання

Написати програму з циклічною обробкоювідповідно до індивідуального завдання.

Увага!

1)Передбачити можливість повторного виконання програми в залежності від вибору користувача.

2) Основне завдання виконати використовуючи 3 види циклів. Тобто повинно вийти 3 програми з різними видами циклів.

3) Передбачити контроль вводу даних.

 

3. Зміст звіту

1) Тема лабораторної роботи.

2) Короткі теоретичні відомості.

3) Завдання.

4) Схема алгоритму (блок-схема та схема Нассі).

5) Варіанти алгоритмів задачі з використанням циклів з передумовами та з посту мовами.

6) Текст програми.

7) Тестові приклади.

8) Результати виконання програми.

9) Аналіз результатів та висновки.

4. Варіанти завдань

 

1.Дано натуральні числа m, n. Знайти суму m останніх цифр числа n.

2.Послідовність чисел Фібоначчі утворюється за законом Дано натуральне число n>1. Отримати .

3.Отримати таблицю температур за шкалою Цельсія від 0 до 100 градусів (з кроком h) та їх еквівалентів за шкалою Фаренгейта використовуючи для переводу формулу

4.Розрахувати факторіал введенного користувачем числа.

5.Дано ціле число N (>0). Знайти суму 1 + 1/2 + 1/3 + ... + 1 / N

6.Напишіть програму, яка обчислює суму квадратів чисел т 1 до N. Число N програма повинна запитувати у користувача.

7.Нехай ,….Дано натуральне n. Знайти

8. Знайдіть суму непарних чисел від 1 до N. Число N програма повинна запитувати у користувача.

9. Почавши тренування, спортсмен в перший день пробіг N км. Кожен день він збільшував денну норму на 10% норми попереднього дня. Який сумарний шлях пробіжить спортсмен за 7 днів? Число N програма повинна запитувати у користувача

10. Розробити програму, що визначає, чи є дане число N простим

11. Напишіть програму, перемножуються цілі числа без використання операції «*». Наприклад, при множенні цілих чисел n * m число m треба скласти саме з собою n раз (m + m + ... + m).

12. Напишіть програму піднесення числа до ступеню. Число і ступінь запитуйте у користувача.

13. Знайти всі чотиризначні числа, сума цифр кожного яких дорівнює N (вводиться з клавіатури).

14. З клавіатури вводиться натуральне число N. Знайти найбільшу цифру цього числа.

15. Є відріз тканини довжиною M метрів. Від нього послідовно відрізають шматки однакової довжини L. Всі дані про використання тканини заносяться в програму. Програма повинна видати повідомлення про те, що матеріалу не вистачає, якщо буде запит на відріз, більшої довжини, ніж є.

16. У хлопчики Петрика m гривень. Морозиво коштує k гривень. Петрик вирішив наїстись донесхочу морозива. Для цього він купував по одному морозиву і їв його доти поки йому вистачало грошей. Як Петрику дізнатись скільки грошей залишиться в нього після цього? Петрик ще не може ділити та множити, тільки складати та віднімати. Скільки штук морозива він з’їсть?

17. Надрукувати ті із двозначних чисел із вказаного діапазону (а,b), які діляться на 4, але не діляться на 6.

18. Знайти послідовність Хеєса. Користувач вводить число і в результаті повинно з’явитись повідомлення із послідовністю, кількістю кроків, та вершиною послідовності (максимальне число послідовності). Послідовність Хеєса визначається так: якщо ввели число N, то якщо воно парне, то ділимо його на 2, якщо не парне, то множимо на 3 та додаємо 1, і так доти, поки не отримаємо число, що дорівнює 1.

Результат:

Послідовність : 9 28 14 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

Число кроків: 19.

Вершина 52.

19. Дано додатні числа A та B (A > B). На відрізку довжиною A знаходиться максимально можлива кількість відрізків довжини В(без накладення). Не користуючись операціями множення та ділення, знайти кількість відрізків В, які знаходяться на відрізку А.

20. Дано два цілих числа A та B (A <B). Знайти суму всіх цілих чисел від A до B включно.

21. Знайти кількість цифр, що є парними числами заданого з клавіатури натурального числа.

Теоретичні відомості

 

Можливість повторювати оператори дуже важлива в програмуванні. Цикли в мові Сі дозволяють програмісту визначити дії, які будуть повторюватися поки умова залишається істинною. Для повторення операторів певне число разів ваші програми використовують ператор C++ for.

За допомогою оператора C++ while програми повторюють оператори до тих пір, поки зазначена умова істинна.

Оператор C + + do while дозволяє програмам виконувати оператори принаймні один раз, а потім, можливо, повторювати оператори, грунтуючись на певній умові.