** паскале У второклассников очень популярна следующая задача: 101=1 8181515=4 1111112=0...

0 голосов
112 просмотров

На паскале

У второклассников очень популярна следующая задача:

101=1

8181515=4

1111112=0

8888888=14

1010101=3

7000007=?

Преподавателю программирования в некоем Центре для одаренных детей так понравилась эта задачка, что он решил именно ее использовать для проверки знаний математики 2-го класса у своих учеников.

Пусть первое число x, а соответствующее ему n

Входные данные
Единственное неотрицательное число x, не превышающее 101001.

Выходные данные
Выведите n.


Информатика (269 баллов) | 112 просмотров
0

Из вас, видимо, плохой получился второклассник.

0

Да из меня, видимо, тоже.

0

Сейчас попробую помочь.

0

Я правильно понимаю, что n - это просто количество "замкнутых областей" в десятичной записи x? (0 - 1, 4 - 1?, 6 - 1, 8 - 2, 9 - 1)

0

По сути, да

0

Но несовсем

0

101 = 1

0

8181515 = 4

0

секунду

0

всё

Дано ответов: 2
0 голосов
Правильный ответ

{тоже как вариант}

const
  v: array [0..9] of integer = (1,0,0,0,1,0,1,0,2,1);
var
  x,n: integer;
begin
  read(x);
  n := 0;
  repeat
    n := n + v[x mod 10];
    x := x div 10;
  until x = 0;
  write(n)
end.

(8.5k баллов)
0

Ну... Можно и так...

0 голосов

Var
  x: string;
  n, i: integer;
 
begin
  readln(x);
  for i := 1 to length(x) do
    case x[i] of
    '0', '4', '6', '9': inc(n);
    '8': inc(n, 2);
    end;
  writeln(n);
end.