Очень безотлагательно. Вопрос по программированию по Паскалю. Задачка: Даны 3 числа.

Очень безотлагательно. Вопрос по программированию по Паскалю. Задачка: Даны 3 числа. Функцией проверить, есть ли такое число в которой подряд идут 2 либо больше схожих цифр. Почему данная программка выводит в любом случае, что нет такового числа.
Program lul;
Var a,b,c:Integer;
Function qq (chislo:Integer):Integer;
Var n,n1,k:Integer;
Begin
n:=0;
n1:=0;
k:=0;
While (chislo*10 div 10 lt;gt; 0) do begin
n:=chislo mod 10;
chislo:=chislo div 10;
n1:=chislo mod 10;
If n=n1 then
k:=1;
break;
end;
qq:=k;
end;
begin
ReadLn(a,b,c);
If qq(a)=1 then WriteLN('Да, 1-ое число походит');
If qq(b)=1 then WriteLn('Да, 2-ое число подходит');
If qq(c)=1 then WriteLN('Да, третье число подходит') else WriteLn('Никакое число не подходит');
end.

Задать свой вопрос
1 ответ

Какая дикая дичь. Вот до чего доводит знакомство с Pascal неокрепших умов.

В принципе, ты бы увидел ошибку даже сам, если бы отступы расставлял. Дело в скобках begin-end - у тебя итерация цикла всегда заканчивается break, а не по условию n=n1.

P. S. *10 div 10 - эту примечательную операцию можешь ещё тыщу раз написать в проверке числа на ноль.

Витек
Ни в одном всераспространенном алгоритмическом языке не подразумевается исполненье в условном операторе более одной аннотации языка, так что Паскаль здесь не при чем, если нет разума указать, что выполнить необходимо не одну аннотацию, а больше.
, оставишь ответ?
Имя:*
E-Mail:


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

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

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

Войти на сайт