Требуется написать программу, которая находит сумму и произведение цифр четырёхзначного числа x. Формат входных данных Входной поток содержит одно целое число x (1000≤x≤9999). Формат выходных данных Требуется в одной строке вывести два числа — сумму и произведение цифр числа x.
Отслеживать
задан 12 окт 2019 в 21:28
31 2 2 бронзовых знака
И что именно у вас не получается?
12 окт 2019 в 21:31
input() получаете число, с помощью int в число приводите, print выводите, сумму и произведение посчитать сможете
12 окт 2019 в 21:39
не получается полностью решить задачу ,сделал так x=int(input()) L=x % 1000 // 10 + 10 K=x % 1000 // 100 * 2 print(L,K) ответ не правильный частично
12 окт 2019 в 21:40
map(int, list(str(input_number))) — так получите список из цифр
12 окт 2019 в 21:40
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
расписал чтоб было понятно, но на будущее, прилагайте свои попытки, а то это выглядит будто вы просите решить что-либо за вас, а не просите помочь исправить ошибку
Сумма и произведение цифр числа. Решение задачи на Python
number = input() digits, sum, multiply = [i for i in number], 0, 1 for digit in digits: sum += int(digit) multiply *= int(digit) print(sum, multiply)
Отслеживать
ответ дан 12 окт 2019 в 21:42
2,376 10 10 серебряных знаков 29 29 бронзовых знаков
решение правильное ,но так мы еще не проходили))
12 окт 2019 в 21:47
Вместо того, чтобы называть переменную именем встроенной функции, лучше бы эту самую функцию использовать — sum(digits).
Ну и перед этим [int(i) for i in number].
12 окт 2019 в 21:49
12 окт 2019 в 22:04
12 окт 2019 в 22:06
Источник: ru.stackoverflow.com
Найти произведение цифр числа — PascalABC.NET
Вот условие: Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число A, не превосходящее 109, и выводится произведение его цифр. Программист торопился и написал программу неправильно.
var A: longint; cnt: integer; begin readln(A); cnt := 0; while A > 1 do begin cnt:=cnt + A mod 10; A := A div 10; end; writeln(cnt); end.
Последовательно выполните следующее. 1. Напишите, что выведет эта программа при вводе числа 111. 2. Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки: а) выпишите строку, в которой сделана ошибка; б) укажите, как исправить ошибку: приведите правильный вариант строки.
Обратите внимание на то, что требуется найти ошибки в имеющейся программе, а не написать свою, возможно, использующую другой алгоритм решения. Исправление ошибки должно затрагивать только строку, в которой находится ошибка. Я решила так: 1.2 2.а) cnt := 0; cnt:=cnt + A mod 10; while A > 1 do б) cnt := 1; cnt:=cnt * A mod 10; while A > 0 do Правильный ответ: Решение использует запись программы на Паскале.
Сумма цифр трехзначного числа. Решение задачи на Python
Допускается использование программы на трёх других языках. 1. Программа выведет число 2. 2. Первая ошибка. Неверное условие продолжения цикла. Программа не будет рассматривать старшую цифру числа, если она равна 1. Строка с ошибкой: while A > 1 do Возможные варианты исправления: while (A >= 1) do или while (A > 0) do При этом замена на while (A >= 0) do корректной не является. 3. Вторая ошибка.
Неверный подсчёт количества цифр (переменная cnt). Вместо количества цифр числа программа считает их сумму. Строка с ошибкой: сnt := cnt + A mod 10; Возможный вариант исправления: сnt := cnt + 1; Вопрос: почему вторая ошибка — неверный подсчёт количества цифр? По условию ведь надо вывести произведение цифр Пожалуйста, помогите разобраться, буду очень благодарна)
Код к задаче: «Найти произведение цифр числа»
Листинг программы
var A: longint; cnt: integer; begin readln(A); cnt := 1; //не 0, а 1 while A > 0 do//не 1, а 0 begin cnt:=cnt*(A mod 10); /не + а * A := A div 10; end; writeln(cnt); end.
Источник: studassistent.ru
Сумма и произведение цифр числа
Найти сумму и произведение цифр, введенного натурального числа. Например, если введено число 325, то сумма его цифр равна 10 (3+2+5), а произведение 30 (3*2*5).
- Присвоить переменной, в которой будет накапливаться сумма цифр, значение 0, а переменной для накопления произведения — значение 1 (если присвоить 0, то при умножении результат обнулится).
- Пока введенное число не уменьшится до нуля выполнять следующие действия:
- В переменную для суммы цифр добавлять последнюю цифру числа, извлеченную при нахождении остатка от деления на 10.
- Значение переменной для хранения произведения цифр умножить на последнюю цифру числа.
- Избавиться от последней цифры числа, разделив его нацело на 10.
Pascal
Сумма цифр числа паскаль
var
n, sum: word;
mult: longint;
begin
readln(n);
sum := 0;
mult := 1;
while n > 0 do begin
sum := sum + n mod 10;
mult := mult * (n mod 10);
n := n div 10;
end;
writeln(‘Sum: ‘, sum);
writeln(‘Mult: ‘, mult);
end.
462
Sum: 12
Mult: 48
Язык Си
#include
main() int n, s, m;
scanf(«%d»,
s = 0;
m = 1;
while (n>0) s += n%10;
m *= n%10;
n = n/10;
>
printf(«Сумма: %dnПроизведение: %dn», s, m);
>
245
Сумма: 11
Произведение: 40
Python
Сумма цифр числа python (питон)
n = int(input())
s = 0
m = 1
while n>0:
s += n%10
m *= n%10
n = n//10
print(«Сумма:», s)
print(«Произведение:», m)
567
Сумма: 18
Произведение: 210
КуМир
алг сумма цифр
нач
цел n, s, m
ввод n
s := 0
m := 1
нц пока n>0
s := s + mod(n,10)
m := m * mod(n,10)
n := div(n,10)
кц
вывод s, нс, m
кон
2932
16
108
Basic-256
input n
sum = 0
mult = 1
while n > 0
sum = sum + n%10
mult = mult * (n%10)
n = n10
endwhile
print «Сумма: » + sum
print «Произведение: » + mult
567
Сумма: 18
Произведение: 210
Источник: gospodaretsva.com