|
Ниже на пяти языках программирования записан алгоритм. Получив на вход натуральное десятичное число
x
, этот алгоритм печатает два числа:
L
и
M
. Укажите
наименьшее
число
x
, при вводе которого алгоритм выводит сначала 8, а потом 3.
|
Бейсик
|
Python
|
|
DIM X, L, M AS INTEGER
INPUT X
L = 0
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
|
x = int(input())
L = 0
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
:= 0
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 := 0;
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 = 0;
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;
}
|
|