Напишите программу, которая получает с клавиатуры трёхзначное число и записывает в логическую переменную значение «да» (True), если это все его цифры одинаковы. После этого на экран выводится ответ на вопрос: «Верно ли, что все цифры введённого числа одинаковы?». Паскаль!) С логической переменной
Ответы на вопрос
Ответил аыыа
0
program znanija;
var
answer: boolean;
a,b,c,d: integer;
begin
readln(a);
b := a mod 10;
c := a div 100;
d := a div 10 mod 10;
if (b=c) and (c=d) then
answer := true;
if answer = true then
writeln ('Да, верно')
else
writeln ('Нет, не верно');
end.
Ответил ingr
0
var
a : integer;
d : boolean;
begin
write('Введите трехзначное число -- ');
readln(a);
write('Верно ли, что все цифры введённого числа одинаковы? -- ');
if a mod 10 and a div 10 mod 10 = a div 100 then d := true else d := false;
if d then writeln('ДА') else writeln('НЕТ');
end.
Ответил Ziorar
0
Хотел тоже покороче написать, но как всегда опоздал.
P.S. логическое выражение как то так выглядит:
var
a: integer;
b: boolean;
begin
Write('Введите трёхзначное число: ');
read(a);
b := (a div 100 = a div 10 mod 10) and (a div 100 = a mod 10);
Writeln('Вопрос: Верно ли, что все цифры введённого числа одинаковы?');
Write('Ответ: ');
if b then Write('Верно') else Write('Неверно');
end.
P.S. логическое выражение как то так выглядит:
var
a: integer;
b: boolean;
begin
Write('Введите трёхзначное число: ');
read(a);
b := (a div 100 = a div 10 mod 10) and (a div 100 = a mod 10);
Writeln('Вопрос: Верно ли, что все цифры введённого числа одинаковы?');
Write('Ответ: ');
if b then Write('Верно') else Write('Неверно');
end.
Ответил ingr
0
писал между делом и машинально IF влепил. Ваш вариант конечно же предпочтительнее.
Ответил Ziorar
0
Если ещё не поздно редактировать, то можно и у вас поправить. Просто текущий вариант ( if a mod 10 and a div 10 mod 10 = a div 100 then... ) не работает- не даёт истину при всех одинаковых цифрах.
Ответил ingr
0
не правится :( блин тупанул и скобки нужные убрал. Там так должно было быть if a mod 10 and (a div 10 mod 10) = a div 100 then d := true else d := false;
Ответил ingr
0
ну или в идеале так d := a mod 10 and (a div 10 mod 10) = a div 100;
Новые вопросы
Русский язык,
2 года назад
Математика,
7 лет назад
Физика,
7 лет назад
Математика,
9 лет назад
Математика,
9 лет назад