Как найти сумму цифр пятизначного числа

Формулировка задачи:

Входные данные:
Во входном потоке задано единственное целое положительное пятизначное число

Выходные данные:
В выходной поток вывести единственное целое число.

Пример входного файла (input.txt):
49626
Пример выходного файла (output.txt):
27

Вот что у меня:

Как исправить?

Код к задаче: «Вычислить сумму цифр пятизначного числа»

textual

var n,s:integer;
begin
writeln('Введите 5-значное число n=');
readln(n);
s:=n div 10000+n div 1000 mod 10+n div 100 mod 10+n div 10 mod 10+n mod 10;
wtite('Сумма цифр=',s);
end.

Полезно ли:

7   голосов , оценка 4.143 из 5

0 / 0 / 0

Регистрация: 22.09.2017

Сообщений: 20

1

Вычислить сумму цифр пятизначного числа

08.10.2017, 18:17. Показов 8219. Ответов 3


Студворк — интернет-сервис помощи студентам

в) вввесты пятизначное целое число их. Вычислить сумму его цифр.



0



Megageorgio

79 / 81 / 66

Регистрация: 03.04.2017

Сообщений: 216

08.10.2017, 19:51

2

St1ko, всё зависит от фантазии

C
1
2
3
4
5
6
7
8
9
#include <stdio.h>
int main() {
    int n;
    scanf("%d", &n);
    int sum = 0;
    for(int i = 5; i; i--) sum += n%10, n/=10;
    printf("%dn", sum);
    return 0;
}
C
1
2
3
4
5
6
7
#include <stdio.h>
int main() {
    int n;
    scanf("%d", &n);
    printf("%dn", n % 10 + n / 10 % 10 + n / 100 % 10 + n / 1000 % 10 + n / 10000);
    return 0;
}
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <conio.h>
int main() {
    char n[5], i = 0;
    while(1) {
        int c = getche();
        if(c > 47 && c < 58) n[i] = c - 48, i++;
        else if(c == 8) putch(32), putch(8), i--;
        else if(c == 13) break;
    }
    _cprintf("n%d", n[0] + n[1] + n[2] + n[3] + n[4]);
    return 0;
}



0



no swear

192 / 166 / 82

Регистрация: 01.07.2016

Сообщений: 942

08.10.2017, 19:56

3

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using std::cin;
using std::cout;
 
int main()
{
    int n, sum = 0;
    cin >> n;
 
    while(n)
    {
        sum += n % 10;
        n /= 10;
    }
 
    cout << sum;
}



0



Fixer_84

1505 / 968 / 812

Регистрация: 30.04.2016

Сообщений: 3,334

08.10.2017, 22:09

4

St1ko, здравствуйте. Вот еще (с использованием рекурсии):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <bits/stdc++.h>
 
using namespace std;
 
int F(int N)
{
    if (N < 10)
        return N;
    else
        return (N % 10) + F(N / 10);
}
 
int main()
{
    int N;
    cout << "Enter a number:" << "n";
    cin >> N;
    cout << "Digits sum: " << F(N) << "n";
    system("pause");
    return 0;
}



0



// — комментарии, можешь не писать, это пояснение для тебя

var z,a,b,c,d,e,f: integer;
begin
Write(‘Введите пятизначное число’); read(z);
a:=a div 10000;                      // число десятков тысяч
b:=a mod 10000 div 1000;     // число тысяч 
c:=a mod 1000 div 100;         // число сотен
d:=a mod 100 div 10;             // число десятков 
e:=a mod 10;                         // число единиц
f:=a+b+c+d+e;                      // сумма цифр
Writeln(‘Цифры: ‘, a,b,c,d,e);
Write(‘Сумма цифр: ‘,f);
end.

Решим задачу перебором. Заметим, что:


1. Ни одна из цифр не должна быть равна (displaystyle 0{small.})


2. Чисел будет не очень много, так как все цифры не могут быть очень большими. Иначе произведение будет больше суммы.

Отметим, что если взять пятизначное число со всеми цифрами (displaystyle geqslant 2{small,}) то их сумма будет меньше их произведения.

Значит, чтобы сумма и произведение были равны, среди цифр числа должна быть (displaystyle 1{small.})

Если единица ровно одна, то сумма все равно будет меньше произведения.

Значит, среди чисел, содержащих две (displaystyle 1{small,}) точно будет хотя бы один ответ к задаче.

   3. Перебираем четные пятизначные числа, не оканчивающиеся нулем. Это уменьшает количество возможных чисел больше чем в (displaystyle 2) раза.


4. Перебор чисел от меньших к большим.

Число Сумма цифр Произведение цифр Итог (displaystyle 11112) (displaystyle 1+1+1+1+2=6) (displaystyle 1cdot1cdot1cdot1cdot2=2) (displaystyle 6,color{red}{cancel{=}},2) (displaystyle 11114) (displaystyle 1+1+1+1+4=8) (displaystyle 1cdot1cdot1cdot1cdot4=4) (displaystyle 8,color{red}{cancel{=}},4) (displaystyle 11116) (displaystyle 1+1+1+1+6=10) (displaystyle 1cdot1cdot1cdot1cdot6=6) (displaystyle 10,color{red}{cancel{=}},6) (displaystyle 11118) (displaystyle 1+1+1+1+8=12) (displaystyle 1cdot1cdot1cdot1cdot8=8) (displaystyle 12,color{red}{cancel{=}},8) (displaystyle 11122) (displaystyle 1+1+1+2+2=7) (displaystyle 1cdot1cdot1cdot2cdot2=4) (displaystyle 7,color{red}{cancel{=}},4) (displaystyle 11124) (displaystyle 1+1+1+2+4=9) (displaystyle 1cdot1cdot1cdot2cdot4=8) (displaystyle 9,color{red}{cancel{=}},8) (displaystyle 11126) (displaystyle 1+1+1+2+6=11) (displaystyle 1cdot1cdot1cdot2cdot6=12) (displaystyle 11,color{red}{cancel{=}},12) (displaystyle 11128) (displaystyle 1+1+1+2+8=13) (displaystyle 1cdot1cdot1cdot2cdot8=16) (displaystyle 13,color{red}{cancel{=}},16) (displaystyle 11132) (displaystyle 1+1+1+3+2=8) (displaystyle 1cdot1cdot1cdot3cdot2=6) (displaystyle 8,color{red}{cancel{=}},6) (displaystyle 11134) (displaystyle 1+1+1+3+4=10) (displaystyle 1cdot1cdot1cdot3cdot4=12) (displaystyle 10,color{red}{cancel{=}},12) (displaystyle 11136) (displaystyle 1+1+1+3+6=12) (displaystyle 1cdot1cdot1cdot3cdot6=18) (displaystyle 12,color{red}{cancel{=}},18) (displaystyle 11138) (displaystyle 1+1+1+3+8=14) (displaystyle 1cdot1cdot1cdot3cdot8=24) (displaystyle 14,color{red}{cancel{=}},24) (displaystyle 11142) (displaystyle 1+1+1+4+2=9) (displaystyle 1cdot1cdot1cdot4cdot2=8) (displaystyle 9,color{red}{cancel{=}},8) (displaystyle 11144) (displaystyle 1+1+1+4+4=11) (displaystyle 1cdot1cdot1cdot4cdot4=16) (displaystyle 11,color{red}{cancel{=}},16) (displaystyle 11146) (displaystyle 1+1+1+4+6=13) (displaystyle 1cdot1cdot1cdot4cdot6=24) (displaystyle 13,color{red}{cancel{=}},24) (displaystyle 11148) (displaystyle 1+1+1+4+8=15) (displaystyle 1cdot1cdot1cdot4cdot8=32) (displaystyle 15,color{red}{cancel{=}},32) (displaystyle 11152) (displaystyle 1+1+1+5+2=10) (displaystyle 1cdot1cdot1cdot5cdot2=10) (displaystyle 10color{red}{=}10)

Тогда число (displaystyle 11152) является одним из возможных ответов к задаче.

Составить алгоритм и программу поиска всех цифр пятизначного числа нахождение, произведение и суммы всех цифр!

Заранее спасибо).

На этой странице находится ответ на вопрос Составить алгоритм и программу поиска всех цифр пятизначного числа нахождение, произведение и суммы всех цифр?, из категории
Информатика, соответствующий программе для 5 — 9 классов. Чтобы посмотреть
другие ответы воспользуйтесь «умным поиском»: с помощью ключевых слов
подберите похожие вопросы и ответы в категории Информатика. Ответ, полностью
соответствующий критериям вашего поиска, можно найти с помощью простого
интерфейса: нажмите кнопку вверху страницы и сформулируйте вопрос иначе.
Обратите внимание на варианты ответов других пользователей, которые можно не
только просмотреть, но и прокомментировать.

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как найти кладку перегородок
  • Как найти сумму бесконечной геом прогрессии
  • Как составить формулу для окрашивания волос
  • Как составить пропорцию белки жиры углеводы
  • Как найти косинусы углов гранями пирамиды

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии