Сумма и произведение цифр числа

Задача

Найти сумму и произведение цифр трехзначного числа, которое вводит пользователь.

Пояснение к задаче и алгоритм решения

Если трехзначное число нацело разделить на 100, то получим число сотен, т.е. первую цифру этого числа.

Если найти остаток от деления на 10 любого целого числа, то этот остаток покажет число единиц в этом числе. Таким образом извлекается последняя цифра числа.

Чтобы извлечь среднюю цифру трехзначного числа (показывающую количество десятков), можно выполнить два действия:

  1. Разделить число нацело на 10. Тем самым избавиться от последней цифры трехзначного числа, превратив его в двузначное.
  2. Найти остаток от деления полученного двузначного числа на 10. Этот остаток и будет средняя цифра первоначального трехзначного числа.

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

Исходный код на языке программирования Pascal

var
        n: integer;
        a,b,c: byte;
begin
        readln(n);
        a := n div 100;
        b := n div 10 mod 10;
        c := n mod 10;
        writeln('Сумма: ',a+b+c);
        writeln('Произведение: ',a*b*c);
end.

Исходный код на языке программирования C

#include <stdio.h>
 
main() {
    int n,a,b,c;
    scanf("%d", &n);
    a = n / 100;
    b = n / 10 % 10;
    c = n % 10;
    printf("Сумма: %d\n", a+b+c);
    printf("Произведение: %d\n", a*b*c);
}

Пример(ы) выполнения программы на языке C

349
Сумма: 16
Произведение: 108

Особенности решения на языке программирования C

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

Исходный код на языке программирования Python

n = input("Введите трехзначное число: ")
n = int(n)
 
d1 = n % 10
d2 = n % 100 // 10
d3 = n // 100
 
print("Сумма цифр числа:", d1 + d2 + d3)
print("Произведение цифр числа:", d1 * d2 * d3)

Пример(ы) выполнения программы на языке Python

Введите трехзначное число: 742
Сумма цифр числа: 13
Произведение цифр числа: 56

Исходный код на языке программирования КуМир

алг сумма цифр
нач
  ввод n
  a := div(n,100)
  b := mod(div(n,10),10)
  c := mod(n,10)
  вывод "Сумма: ", a+b+c, нс
  вывод "Произведение: ", a*b*c, нс
кон

Исходный код на языке программирования Basic

input n
 
a = n \ 100
b = n \ 10 % 10
c = n % 10
 
print a+b+c
print a*b*c

Особенности решения на языке программирования Basic

Обратите внимание на знак целочисленного деления. Это обратный слэш (\), в то время как обычное деление обозначается обычным слэшем (/).

Тема

Линейные алгоритмы

Уровень сложности

Средний

Дата публикации