Информатика (Анализ программы с циклами и условными операторами)


1
2
3
4
5
6
7
8
9
10
  • 1
  • 2

Вопрос 20

Ниже записана программа. Получив на вход число x , эта программа печатает два числа, L и M. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 10. 

БейсикPython
DIM X, L, M AS INTEGER
 INPUT X
 L = 0
 M = 0
 WHILE X > 0
 L = L + 1
 IF M < x THEN
    M = (X MOD 10) * 2
 ENDIF
 X = X  10
 WEND
 PRINT L
 PRINT M

x = int(input())

L = 0

M = 0

while x > 0:

    L += 1

    if M < x:

        M = (x % 10) * 2

    x = x // 10

print(L)

print(M)

 

 

ПаскальАлгоритмический язык
var x, L, M: integer;
begin
    readln(x);
    L := 0;
    M := 0;
    while x > 0 do
    begin
        L := L + 1;
        if M < x then
            M := (x mod 10) * 2;
        x := x div 10;
    end;
    writeln(L);
    writeln(M);
end.
алг
нач
    цел x, L, M
    ввод x
    L := 0
    M := 0
    нц пока x > 0
        L := L + 1
        если M < x
            то
                M := mod(x,10)*2
        все
        x := div(x,10)
    кц
    вывод L, нс, M
кон
Си++
 
#include <iostream>
using namespacestd;
int main()
{
    int x, L, M;
    cin >> x;
    L = 0;
    M = 0;
    while (x > 0){
        L = L + 1;
        if(M < x){
            M = (x % 10) * 2;
        }
        x = x / 10;
    }
    cout << L << endl << M  <<endl;
}