Дано четырехзначное число. Напишите программу на языке pascal, которая определяет есть, ли среди цифр заданного числа одинаковые и является ли число палиндромом, т.е. числом, десятичная запись которого читается одинаково слева направо и справа налево.
Ответы
Ответ дал:
0
uses School; // PascalABC.NET версия после 14.04.2020
begin
var a := Digits(ReadInteger('Введи число:'));
if a.Length = a.Distinct.Count then
Println('Нет одинаковых цифр, не палиндром')
else
begin
Println('Есть одинаковые цифры');
if (a[0] = a[3]) and (a[1] = a[2]) then
Print('Палиндром')
else
Print('Не палиндром')
end
end.
pomogitepozhalusta1:
что за digits?
Функция, возвращающая массив с цифрами числа. Из состава библиотеки School
Библиотека, специально разработанная для школьных задачек
я не знаю такого, чем заменить? мы это не проходили
Скопировать функцию из библиотеки в код
function Digits(n: int64): array of integer;
begin
var St := new Stack;
n := Abs(n);
if n = 0 then
Result := Arr(0)
else
begin
while n > 0 do
begin
St.Push(n mod 10);
n := n div 10
end;
Result := St.ToArray
end
end;
begin
var St := new Stack;
n := Abs(n);
if n = 0 then
Result := Arr(0)
else
begin
while n > 0 do
begin
St.Push(n mod 10);
n := n div 10
end;
Result := St.ToArray
end
end;
На будущее: "мы это не проходили" на этом сайте не катит.
Дающий решение не обязан знать, что именно вы там проходили.
Вас заинтересует
1 год назад
1 год назад
1 год назад
8 лет назад
8 лет назад