ВУЗ:
Составители:
Рубрика:
130
Упражнения:
1. Выполните трассировку фрагмента 57.
2. Установите сколько существует двузначных чисел, сумма квадратов цифр
которых делится на 13.
3. Найдите все трехзначные числа, каждое из которых в 19 раз больше суммы
своих цифр.
4. Найдите все пятизначные числа вида 67m1n (m и n - цифры!), которые
делятся на 36.
5. Сколько слагаемых нужно взять, чтобы в сумме 1+2+3+... получить
наименьшее трехзначное число,
состоящее из одинаковых цифр?
6. Замените буквы цифрами так, чтобы равенство ab·ck=bbb оказалось верным.
7. Найдите все пятизначные числа, равные кубу числа, образованного двумя их
последними цифрами.
Пример 10.55. Любую целочисленную сумму денег большую 7 рублей можно
выплатить без сдачи трешками и пятерками. По заданному целому
положительному n определить пару целых неотрицательных чисел a и b, таких, что
n=3·a+5·b.
Решение. Эта задача решалась нами раньше. Для ее решения было построено
два ветвящихся алгоритма, которые выдавали два разных решения. Получим
сейчас с помощью перебора все решения этой задачи. Заметим, что значение
количества выданных троек не может превысить n div 3, а значение количества
выданных пятерок не может превысить n div 5. Исходя из этого, организуем циклы
перебора:
{ фрагмент 58 }
repeat
write('Введите значение n>7 ');
readln(n);
until n>7;
for a:=0 to n div 3 do
for b:=0 to n div 5 do
if n=3*a+5*b
then writeln('3*',a,'+5*',b,'=',n).
Для n=128 получаем следующие решения, причем только два из них могли
быть получены ранее с помощью построенных ветвящихся алгоритмов:
3* 1+5*25=128, {решение получено ветвящимся алгоритмом}
3* 6+5*22=128,
3*11+5*19=128,
3*16+5*16=128,
3*21+5*13=128,
3*26+5*10=128,
3*31+5* 7=128,
3*36+5* 4=128,
3*41+5* 1=128. {решение получено ветвящимся алгоритмом}
130
Упражнения:
1. Выполните трассировку фрагмента 57.
2. Установите сколько существует двузначных чисел, сумма квадратов цифр
которых делится на 13.
3. Найдите все трехзначные числа, каждое из которых в 19 раз больше суммы
своих цифр.
4. Найдите все пятизначные числа вида 67m1n (m и n - цифры!), которые
делятся на 36.
5. Сколько слагаемых нужно взять, чтобы в сумме 1+2+3+... получить
наименьшее трехзначное число, состоящее из одинаковых цифр?
6. Замените буквы цифрами так, чтобы равенство ab·ck=bbb оказалось верным.
7. Найдите все пятизначные числа, равные кубу числа, образованного двумя их
последними цифрами.
Пример 10.55. Любую целочисленную сумму денег большую 7 рублей можно
выплатить без сдачи трешками и пятерками. По заданному целому
положительному n определить пару целых неотрицательных чисел a и b, таких, что
n=3·a+5·b.
Решение. Эта задача решалась нами раньше. Для ее решения было построено
два ветвящихся алгоритма, которые выдавали два разных решения. Получим
сейчас с помощью перебора все решения этой задачи. Заметим, что значение
количества выданных троек не может превысить n div 3, а значение количества
выданных пятерок не может превысить n div 5. Исходя из этого, организуем циклы
перебора:
{ фрагмент 58 }
repeat
write('Введите значение n>7 ');
readln(n);
until n>7;
for a:=0 to n div 3 do
for b:=0 to n div 5 do
if n=3*a+5*b
then writeln('3*',a,'+5*',b,'=',n).
Для n=128 получаем следующие решения, причем только два из них могли
быть получены ранее с помощью построенных ветвящихся алгоритмов:
3* 1+5*25=128, {решение получено ветвящимся алгоритмом}
3* 6+5*22=128,
3*11+5*19=128,
3*16+5*16=128,
3*21+5*13=128,
3*26+5*10=128,
3*31+5* 7=128,
3*36+5* 4=128,
3*41+5* 1=128. {решение получено ветвящимся алгоритмом}
Страницы
- « первая
- ‹ предыдущая
- …
- 126
- 127
- 128
- 129
- 130
- …
- следующая ›
- последняя »
