Задание#T799

Ниже на пяти языках программирования записан алгоритм. Получив на вход натуральное десятичное число xx, этот алгоритм печатает два числа: LL и MM.
Укажите наибольшее число x,x, при вводе которого алгоритм печатает сначала 2121, а потом 33.

Бейсик

DIM X, L, M AS INTEGER
INPUT X
L = 1
M = 0
WHILE X > 0
 M = M + 1
 IF X MOD 2 <> 0 THEN
  L = L * (X MOD 8)
 END IF
 X = X \ 8
WEND
PRINT L
PRINT M

Python

x = int(input())
L = 1
M = 0
while x > 0:
 M = M + 1
 if x % 2 != 0:
  L = L * (x % 8)
 x = x // 8
print(L)
print(M)

Алгоритмический язык

алг
нач
 цел x, L, M
 ввод x
 L := 1
 M := 0
 нц пока x > 0
  M := M + 1
  если mod(x,2) <> 0 то
   L := L * mod(x,8)
  все
  x := div(x,8)
 кц
 вывод L, нс, M
кон

Паскаль

var x, L, M: integer;
begin
 readln(x);
 L := 1;
 M := 0;
 while x > 0 do
 begin
  M := M + 1;
  if x mod 2 <> 0 then
   L := L * (x mod 8);
  x := x div 8
 end;
 writeln(L);
 writeln(M)
end.

С++

#include <iostream>
using namespace std;

int main(){
 int x, L, M;
 cin >> x;
 L = 1;
 M = 0;
 while (x > 0) {
  M = M + 1;
  if(x % 2 != 0) {
   L = L * (x % 8);
  }
  x = x / 8;
 }
 cout << L << endl << M << endl;
 return 0;
}
Показать ответ
Это задание взято из демоварианта ФИПИ 2019
Яндекс.Репетитор пришёл на смену сервису Яндекс.ЕГЭ, и мы активно собираем отзывы пользователей. Пожалуйста, пишите нам через форму обратной связи.