Практика 1 задание. 2. Дано целое число a и натуральное число n. Написать программу вычисления
Скачать 223.86 Kb.
|
1. Написать программу, которая проверяет, делится ли заданное натуральное число на 19, используя следующий признак делимости: число делится на 19 тогда и только тогда, когда число его десятков, сложенное с удвоенным числом единиц, делится на 19. 2. Дано целое число a и натуральное число n. Написать программу вычисления Р = a n a) как произведение числа а; b) используя алгоритм быстро возведения в степень: Повторять пока n ≠ 0 3. Написать программу умножения двух натуральных чисел (алгоритм аль-Хорезми): a) Первое число делится нацело пополам; b) Второе число умножается в 2 раза; c) Если первый сомножитель – число четное, то соответствующая строка вычеркивается. d) Если первый сомножитель = 1, то вычисляется результат как сумма значений второго сомножителя в оставшихся строках. А В 12 25 6 50 3 100 1 200 Результат 300 4. Написать программу нахождения всех трехзначных чисел, равных сумме факториалов своих цифр. 5. Написать программу, которая находит наименьшее трехзначное число кратное 3 так, чтобы первая цифра его была 6, и все цифры были бы различны. 6. Написать программу, которая находит все числа, состоящее из трех различных цифр, каждое из которых делится на квадрат суммы своих цифр. (Ответ: 162, 243, 324, 392, 45, 512, 65, 648, 810, 972). 7. Обращенным числом называется число, записанное теми же цифрами, но в обратном порядке. Например, 3805, обращенное - 5083. Палиндромическим числом называется число, равное обращенному. Например, 121,5995 - палиндромические числа. Написать программу нахождения нескольких палиндромических чисел меньших 10001. 8. Натуральное число называют совершенным, если оно равно сумме всех своих делителей, не считая его самого (например, 6=1+2+3 - совершенное число). Написать программу, проверяющую, является ли заданное число совершенным. 9. Написать программу, возвращающую значение N, если N - простое число, и "ничего не делающую" в противном случае (N-нечетное). Число называется простым, если оно не имеет других делителей, кроме 1 и самого себя. 10. Написать программу, реализующую следующий алгоритм (Решето Эратосфена). Постарайтесь оптимизировать число шагов. Запишем натуральные числа, начиная от 2 до N (например, 19) в ряд: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Первое простое число в списке – 2. Зачеркнем все числа кратные 2: − = − = − = = нечетное n если a P P n n четное n если a a a div n n , ; 1 , ; 2 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Следующее простое число – 3. . Зачеркнем все числа кратные 3: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Следующее простое число – 5. Зачеркнем все числа кратные 3: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19. 11. Гольдбахом было высказано предположение, что каждое четное число, большее или равное 4, представимо в виде суммы двух простых. Это предположение до сих пор не доказано и не опровергнуто. Написать программу проверки этой гипотезы для данного четного числа N. Результатом выполнения программы должен быть вывод самого числа, если не удалось найти пару простых слагаемых, и вывод пары соответствующих простых чисел, если таковая пара найдена. 12. Написать программу поиска среди чисел n, n+1, ..., 2n так называемых близнецов, т.е. двух простых чисел, разность которых равна 2. 13. Написать программу нахождения наименьшего натурального числа, большее 2, являющегося одновременно суммой двух квадратов натуральных чисел и суммой двух кубов натуральных чисел. (Ответ: 65=8 2 +1 2 =4 3 +1 3 ) 14. Некоторые натуральные числа могут быть представлены в виде суммы кубов целых неотрицательных чисел: например 9=2 3 +1 3 , 27=3 3 +0 3 . Составить алгоритм, отыскивающий наименьшее натуральное число, имеющее два разных таких представления. (Представления 9=2 3 +1 3 и 9=1 3 +2 3 считаются одинаковыми). 15. Написать программу, которая определяет, сколько среди чисел от 1 до 1000 таких, которые делятся на 4, но не имеют цифры 4 в своей записи? (Ответ: 162) 16. Написать программу нахождения по данному целому числу n > 7 пары целых неотрицательных чисел a и b таких, что n=3a+5b. 17. Написать программу, которая определяет, является ли заданное натуральное число степенью пятерки. 18. Написать программу, которая находити наименьшее натуральное число, большее 2, являющееся одновременно суммой двух квадратов натуральных чисел и суммой двух кубов натуральных чисел. (Ответ: 65=8 2 +1 2 =4 3 +1 3 ) 19. Написать программу, в результате выполнения которой определяется номер члена последовательности Фибоначчи с наперед заданным собственным делителем. (Никакой формулы, позволяющей непосредственно вычислять номера членов с наперед заданным собственным делителем p, пока не известно!) 20. Дан фрагмент программы. Предложите вариант оптимизации циклов (сокращение количество вычислительных операций в цикле). For i =1 to 20 For j =1 to 20 B[ j ] = B[ j ] + A[ i ]/ D^3 Next j Next i 21. Дан фрагмент программы. Предложите вариант оптимизации циклов (сокращение количество вычислительных операций в цикле). Min = Max_int For i =1 to n If A[ i ] < Min Then Min = A[ i ] Next i 22. Дан фрагмент программы. Предложите вариант оптимизации циклов (сокращение количество вычислительных операций в цикле). k = 0 For i =1 to n If A[ i ] = Min Then k = k + 1 Next i For i =1 to N If i < C then A [ i ] = B [ i ] Next i |