pryvalovo48
?>

2 теста из 3-ёх ошибочны. Найти и исправить ошибки.

Информатика

Ответы

Tselyaritskaya Yurevich
1. В приведенном коде ошибка. Не хватает ";" в третьей строке снизу.
2. Немного изменим ваш код и получим искомое значение x
Искомое число х = 16293

var
  x, y, a, b, k: integer;

begin
  k:=10000;
  repeat
    x:=k;
    a := 0; b := 0; y := 1;
    while x > 0 do
    begin
      if (x mod 10) mod 2 = 0
        then
        a := a * 10 + x mod 10
      else begin
        y := y * 10;
        b := b * 10 + x mod 10
      end;
      x := x div 10
    end;
    a := a * y + b;
    k := k + 1;
    until a = 26391;
    writeln(a:8, k-1:8); 
end.

 
mail5

55:5=11

365:11≈33(34) берём "34", чтобы перехлестнуть 365.

Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:

34*10=340 (340+34=374) - подходит, но это не максимум!

365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.

В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).

Проверка:

34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.

ответ: d=34. 

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

2 теста из 3-ёх ошибочны. Найти и исправить ошибки.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

matveevaev81
di-bobkov1985
Letajushaya362
Константиновна
gorbunova188
Melsan19914239
okasnab
Матвеев
fshevxuzheva313
tribunskavictory
namik120939
samogon-mozhaisk
retropluse832
Tanyamitia
Виктор Попова