Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Общие теоретические сведения. Циклическим является алгоритм, если определенная последовательность шагов выполняется некоторое целое число раз




Циклическим является алгоритм, если определенная последовательность шагов выполняется некоторое целое число раз. Рис. 1 иллюстрирует циклические алгоритмы.

а) б) в)
Рисунок 1 – Циклические алгоритмы: а – цикл с предусловием, б – с постусловием, в – с параметром  

У каждого из операторов цикла имеются особенности в их использовании (табл. 1): условные циклы выполняются пока условие истинно, а цикл с параметром работает, пока управляющая переменная цикла (так называемый параметр) не достигнет своего конечного значения.

Таблица 1 – Операторы циклов

Условные циклы while (условие) { операторы }
do { операторы } while (условие)
С параметром for ( переменная = нач_знач; переменная <= кон знач; шаг)   { операторы }

 

Пример. Написать программу, которая преобразует введенное десятичное число в двоичное.

Текстуальная форма алгоритма задачи:

1. Ввести число dec с клавиатуры в ЭВМ.

2. В цикле делятся целые части числа на 2, остатки от деления выводятся на экран.

 

Ниже представлена программа этой задачи.

#include < iostream.h >

#include < math.h >

#include < conio.h >

main()

{ int d; // десятичное число

int b; // формируемый разряд

int n; // номер формируемого разряда

cout << ” Введите целое число от 0 до 255 ”; cin >> d;

cout << ” Десятичному числу ”>> d >> “ соответствует двоичное : “;

b = 128; // старший (восьмой) разряд

for (n = 1; n <= 8; n++)

{ if ( d >= b )

{ cout <<” 1 “; d -= b; }

else cout <<” 0 “;

b = b / 2;

}

cout << ”Для завершения нажмите <Enter>” << endl;

getch();

}

 

Варианты заданий

Задание. Составить алгоритм, написать программу на языке программирования С++, отладить программу на ПК. Написать тест программы. Все результаты предъявить преподавателю. Подготовить ответы на контрольные вопросы.

1. Найти натуральное число из интервала от a до b, у которого количество делителей максимально.

2. Составить программу нахождения цифрового корня. Цифровой корень данного числа получается, если сложить все цифры этого числа, затем все цифры найденной суммы и повторять этот процесс пока в результате будет получено однозначное число (цифра), которая и называется цифровым корнем.

3. Дано натуральное число n. Напечатать разложение этого числа на простые множители.

4. Найти все трехзначные простые числа (простым называется число, большее 1, не имеющее других делителей, кроме единицы и самого себя, например, число 7 простое, число 6 не простое).

5. Найти размеры всех прямоугольников, площадь которых равна заданному натуральному числу s и стороны которых выражены натуральными числами.

6. Найти все совершенные числа, меньшие 100 000 (натуральное число называется совершенным, если оно равно сумме своих делителей, включая 1 и исключая это самое число, например, число 6 совершенное 6=1+2+3).

7. Найти все пары натуральных дружественных чисел, меньших 50 000 (два натуральных числа называются дружественными, если каждое из них равно сумме всех делителей другого, само другое число в качестве делителя не рассматривается).

8. Составить программу для нахождения всех натуральных решений уравнения, где лежат в интервале от 1 до 30.

9. Дано натуральное число n (n ≤ 27). Найти все трехзначные числа, сумма цифр которых равна n.

10. Найти наименьшее натуральное число n, которое можно представить двумя различными способами в виде суммы кубов двух натуральных чисел.

11. Дано натуральное число n. Получить все натуральные числа, меньшие n и взаимно простые с ним (два натуральных числа называются взаимно простыми, если их наибольший общий делитель равен 1).

12. Напечатать в возрастающем порядке все трехзначные числа, в десятичной записи которых нет одинаковых цифр.

13. Составить таблицу умножения всех чисел от 1 до 9.

14. Дано натуральное число n. Вычислить арифметическую Arifm и геометрическую Geom прогрессию. Узнать, что является наибольшим результатом.

15. Дано натуральное число n. Вычислить факториал этого числа S = n! всеми известными циклами. Вычислить факториал этого числа S1 = n!, используя только оператор условия.

 







Дата добавления: 2014-11-10; просмотров: 577. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2020 год . (0.006 сек.) русская версия | украинская версия