3. Укажите набольшее и наименьшее пятизначное число x, при вводе которого метод

3. Укажите набольшее и наименьшее пятизначное число x, при вводе которого метод печатает поначалу 3, а позже 4.
var x, y, a, b: longint;
begin
a := 0;
b := 0;
readln(x);
while x gt; 0 do begin
y := x mod 10;
if y gt;2 then a := a + 1;
if y lt; 8 then b := b + 1;
x := x div 10
end;
writeln(a);
writeln(b)
end.

Задать свой вопрос
Настя Гармиза
да у меня тоже в ответе пусто, что-то в программе не так, ищу
Максим Лихоглядов
мне кажется ошибка в условии где а и b определяются
Костя
цикл вертится 5 раз непременно, при этом быстрее всего а и b набирают значения больше 3 и 4
Кирюха
Я проверил по программе все хорошо, но по значения a и b не очень
Нина Мисилина
я без условия принт запустила- нули напечатал один раз и все
Адушев Сергей
означает ошибка в логике программки
Катюша Курыпина
То есть получается таких x нет)
Семик Скогорев
выходит а а и b ничего так и не положили
Darina Hatuleva
если вы с for инспектировали- то возможно переменная этого цикла не рассчитана на таковой тип, без него печатает при х=10000 и ч=99999
Егор Хирман
без проверки критерий а и b ...
1 ответ
Добил её)

//PascalABC.NET
//Версия 3.3, сборка 1611 (06.01.2018)

var x, y, a, b: longint;
begin
var ax:=new Listlt;integergt;;
for var i:=10000 to 99999 do begin
x:=i;
while x gt; 0 do begin
y := x mod 10;
if y gt;2 then a := a + 1;
if y lt; 8 then b := b + 1;
x := x div 10;
end;
If (a=3) and (b=4) then begin ax.add(i); end;
a:=0; b:=0;
end;
Println('Малое x-gt;',ax.min); Println('Максимальное x-gt;',ax.max);
end.

Итог:
Минимальное x-gt; 10338 
Наибольшее x-gt; 97722 
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт