Розв'язання.
(найпростіший варіант - два вкладених цикли)...
k:=0;
for i:=1 to 9 do
begin
for j:=0 to 9 do
if i+j=s then k:=k+1;
end;
...
(другий варіант - з одним циклом)
...
k:=0;
for i:=1 to 9 do
begin
j:=s-i {Обчислюємо можливе значення другої цифри}
if (j>=0) and (j<=9)
then k:=k+1;
end;
...
Ще швидший алгоритм розв'язання задачі можна отримати після аналітичного дослідження розв'язків:
Сумма цифр Варіанти чисел Кількість варіантів
0 - 0
1 10 1
2 11, 20 2
3 12, 21, 30 3
4 13, 22, 31, 40 4
... ... ...
9 18, 27, 36, 45, 54, 63, 72, 81, 90 9
10 19, 28, 37, 46, 55, 64, 73, 82, 91 9
11 29, 38, 47, 56, 65, 74, 83, 92 8
12 39, 48, 57, 66, 75, 84, 93 7
... ... ...
17 89, 98 2
18 99 1
19 - 0
Закономірність, виявлену під час аналізу задачі, можна подати алгоритмом:
...
if s<1 then k:=0 else
if s<10 then k:=s else
if s<19 then k:=19-s else k:=0;
...
Немає коментарів:
Дописати коментар