Напишите программу на pascalabc.net, которая выводит на экран цифру, стоящую на средней позиции числа, если число имеет

Напишите программу на pascalabc.net, которая выводит на экран цифру, стоящую на средней позиции числа, если число имеет нечетное количество цифр.
Ольга

Ольга

Конечно! Вот решение данной задачи на языке PascalABC.NET:

pascal
program MiddleDigit;

var
number, middleDigit: integer;
digitsCount, middlePosition: integer;
numberStr: string;

begin
// Введите число
write("Введите число: ");
readln(number);

// Преобразуем число в строку
numberStr := IntToStr(number);

// Подсчитываем количество цифр в числе
digitsCount := Length(numberStr);

// Проверяем, имеет ли число нечетное количество цифр
if digitsCount mod 2 <> 0 then
begin
// Находим позицию средней цифры
middlePosition := (digitsCount + 1) div 2;

// Получаем среднюю цифру, преобразуя символ в число
middleDigit := StrToInt(numberStr[middlePosition]);

// Выводим результат
writeln("Средняя цифра числа ", number, " равна ", middleDigit);
end
else
begin
// Если количество цифр четное, выводим сообщение об ошибке
writeln("Ошибка! Количество цифр в числе должно быть нечетным.");
end;

end.


Данный код позволяет пользователю ввести число и выводит на экран цифру, которая находится на средней позиции числа. Если число содержит четное количество цифр, программа выдаст сообщение об ошибке.

Программа начинается с объявления переменных: `number`, `middleDigit`, `digitsCount`, `middlePosition` и `numberStr`. Затем пользователю предлагается ввести число с помощью команды `readln(number)`.

Далее число преобразуется в строку с помощью функции `IntToStr(number)`, чтобы мы могли подсчитать количество цифр в числе. Длина строки сохраняется в переменной `digitsCount`.

Затем мы проверяем, имеет ли число нечетное количество цифр, используя оператор `if digitsCount mod 2 <> 0 then`. Если условие выполняется, то переходим в блок кода `begin` и находим позицию средней цифры, используя формулу `(digitsCount + 1) div 2`.

Далее мы получаем среднюю цифру, преобразуя символ в число с помощью функции `StrToInt(numberStr[middlePosition])`. Результат выводится на экран с помощью команды `writeln` в формате `Средняя цифра числа X равна Y`, где X - введенное число, а Y - средняя цифра.

Если количество цифр в числе четное, программа переходит в блок кода `else` и выводит сообщение об ошибке с помощью команды `writeln("Ошибка! Количество цифр в числе должно быть нечетным.")`.

Таким образом, данная программа на языке PascalABC.NET решает задачу и выводит на экран среднюю цифру числа, при условии, что число содержит нечетное количество цифр.
Знаешь ответ?
Задать вопрос
Привет!
hello