Задачи по Pascal. Найти произведение цифр заданного четырехзначного числа.

Условие задачи: Найти произведение цифр заданного четырехзначного числа. (Язык Pascal)

Сложность: легкая.

Решение задачи

Для начала продумаем наше решение. Введем число. Проверим является ли оно четырехзначным. Дальше с помощью цикла while будем отрывать по 1 цифре от числа и будем это число заносить в произведение.

Для того чтобы решить задачу нам понадобятся следующие переменные :

  • Переменная number — для нашего четырехзначного числа
  • Переменная figure — для последней цифры числа
  • Переменная proiz — для произведения
  • Начнем мы с каркаса нашей программы

    var

    number, figure, proiz :
    integer
    ;
    // объявляем переменные
    begin

    write
    (
    'Введите четырехзначное число : '
    );readln(number);
    // вводим число

    proiz :=
    1
    ;
    // присваиваем произведение 1, чтобы у нас не получался 0
    end
    .

    Тут мы попросили пользователя ввести число, а присвоили переменной proiz один, если это не сделать то произведение всегда будет равно нулю.

    Дальше проверим является ли введенное число пользователя четырехзначным. Пишем условие :

    if
    ((number <
    1000
    )
    or
    (number >
    9999
    ))
    then
    // проверяем является ли число четырехзначным

    writeln
    (
    'Введенное число не четырехзначное'
    )
    // выводим сообщение
    else
    // иначе

    Т.е. если мы введем не четырехзначное число, то программа выполняться не будет.

    Ну а теперь будем искать произведение. Чтобы это сделать нам нужно число разбить на цифры, тут нам поможет операция mod, которая ищет остаток от деления.

    Допустим у нас есть число number := 1343 и нам нужно отделить последнюю цифру и занести её в переменную, мы пишем :

    figure := number
    mod
    10
    ;

    И это занесет в нашу переменную число 3, т.е. последнее число. Дальше чтобы найти следующую цифру числа, нам нужно из числа убрать последнюю. Тут нам уже поможет операция div, которая ищет целую часть от деления. Мы пишем:

    number := number
    div
    10
    ;

    Теперь у нас в переменной number будет число 134, т.е. без последней цифры. Вот таким образом мы будем искать произведение и всё это будем делать в цикле. Пишем :

    while
    (number >
    0
    )
    do
    // делаем цикл, пока число больше 0

    begin

    figure := number
    mod
    10
    ;
    // заносим в переменную последнюю цифру числа

    proiz := proiz * figure;
    // заносим эту цифру в произведение

    number := number
    div
    10
    ;
    // и убираем последнюю цифру числа

    end
    ;

    Т.е. мы пускаем цикл пока число имеет какие-то цифры. В цикле мы берем последнюю цифру числа, заносим её в переменную, обновляем произведение и убираем последнюю цифру числа. Вот и вся хитрость. Потом просто выводим результат.

    Всё решение задачи Pascal

    var

    number, figure, proiz :
    integer
    ;
    // объявляем переменные
    begin

    write
    (
    'Введите четырехзначное число : '
    );readln(number);
    // вводим число

    proiz :=
    1
    ;
    // присваиваем произведение 1, чтобы у нас не получался 0


    if
    ((number <
    1000
    )
    or
    (number >
    9999
    ))
    then
    // проверяем является ли число четырехзначным

    writeln
    (
    'Введенное число не четырехзначное'
    )
    // выводим сообщение

    else
    // иначе

    begin

    while
    (number >
    0
    )
    do
    // делаем цикл, пока число больше 0

    begin

    figure := number
    mod
    10
    ;
    // заносим в переменную последнюю цифру числа

    proiz := proiz * figure;
    // заносим эту цифру в произведение

    number := number
    div
    10
    ;
    // и убираем последнюю цифру числа

    end
    ;

    writeln
    (
    'Произведение цифр числа равна '
    , proiz);
    // выводим результат

    end
    ;

    readln;
    // чтобы программа не закрывалась
    end
    .
    Предыдущая
    ПрограммированиеЗадачи по Pascal. Найти сумму целых чисел от A до B, которые делятся на пять.
    Следующая
    ПрограммированиеЗадачи по Pascal. Подсчитать, сколько элементов массива А1,А2...А40 больше среднего арифметического всех его элементов и сколько элементов меньше.
    Помогли? Поставьте оценку, пожалуйста.
    Плохо
    0
    Хорошо
    0
    Супер
    0
    Спринт-Олимпик.ру
    Мы в ВК, подпишись на нас!

    Подпишись на нашу группу в ВКонтакте, чтобы быть в курсе выхода нового материала...

    Вступить
    ×