Вопрос по информатике:
Ниже записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 18.
var x, a, b: integer;
begin readln(x); a := 0; b := 1;
while x > 0 do begin a := a+1;
b := b*(x mod 100);
x := x div 100;
end;
writeln(a);
write(b);
end.
- 15.10.2016 10:04
- Информатика
- remove_red_eye 13350
- thumb_up 48
Ответы и объяснения 1
Procedure GetAB(x: integer; var a: integer; var b: integer);
begin
a := 0;
b := 1;
while x > 0 do
begin
a := a + 1;
b := b * (x mod 100);
x := x div 100;
end;
end;
var
x, a, b: integer;
begin
for x := 10000 to 2000000000 do
begin
GetAB(x, a, b);
if (a = 3) and (b = 18) then
Println(a, b, x);
end;
end.
выдает такие значения
3 18 10118
3 18 10209
3 18 10306
3 18 10603
3 18 10902
3 18 11801
3 18 20109
3 18 20303
3 18 20901
3 18 30106
3 18 30203
3 18 30302
3 18 30601
3 18 60103
3 18 60301
3 18 90102
3 18 90201
3 18 180101
Выделенное наибольшее
- 16.10.2016 07:33
- thumb_up 41
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.