Для решения этой задачи в Pascal используется встроенная функция Random для генерации числа и арифметические операции для выделения разрядов:
div(целочисленное деление) — отсекает лишние цифры справа.mod(остаток от деления) — позволяет получить последнюю цифру числа.
Текст программы pascal
program SplitDigits; var number, digit1, digit2, digit3: integer; begin // Инициализируем генератор случайных чисел Randomize; // Генерируем случайное число в диапазоне от 100 до 999 // random(900) дает 0..899, прибавляем 100 для получения 100..999 number := Random(900) + 100; writeln('Случайное число: ', number); // 1. Получаем первую цифру (сотни) // Делим на 100 без остатка digit1 := number div 100; // 2. Получаем вторую цифру (десятки) // Сначала убираем сотни (mod 100), затем берем целую часть от деления на 10 digit2 := (number mod 100) div 10; // 3. Получаем третью цифру (единицы) // Берем остаток от деления на 10 digit3 := number mod 10; // Вывод цифр через запятую writeln('Цифры числа: ', digit1, ', ', digit2, ', ', digit3); readln; end. Use code with caution.Разбор логики работы Допустим, программа сгенерировала число 456:- Первая цифра: . Вторая цифра:
- Сначала избавляемся от сотен: . Затем выделяем десятки: .
Как запустить программу
- Скопируйте код в редактор (например, PascalABC.NET или Free Pascal).
- Запустите выполнение (клавиша F9).
- Программа сама выберет число и мгновенно выведет результат в консоль.
Хотите, чтобы я добавил в код проверку на то, является ли число четным, или расчет суммы этих трех цифр?
Форма ответа
Ответы и вопросы пользователей