Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/231: Рейтинг темы: голосов - 231, средняя оценка - 4.71
 Аватар для Deyeneris
0 / 0 / 0
Регистрация: 27.03.2013
Сообщений: 26

Подсчитать сумму цифр в целом числе

14.04.2013, 17:37. Показов 43729. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как написать программу, которая подсчитывает сумму цифр в целом числе?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.04.2013, 17:37
Ответы с готовыми решениями:

Подсчитать количество цифр в заданном целом числе n
Подсчитать количество цифр в заданном целом числе n

Рекурсия, подсчитать количество цифр в заданном целом числе
Подсчитать количество цифр в заданном целом числе n

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

11
 Аватар для dr_yand
157 / 138 / 15
Регистрация: 13.03.2013
Сообщений: 321
Записей в блоге: 3
14.04.2013, 17:53
Java
1
2
3
4
5
6
7
8
9
10
11
12
public class B{
public static void main (String[] args){
    String s="1234";
    String[] a = s.split("");
    int m=0;
    for(int i=1;i<a.length;i++){
        m+=Integer.parseInt(a[i]);
    }
    System.out.println(m+"");
}
 
}
1
 Аватар для Deyeneris
0 / 0 / 0
Регистрация: 27.03.2013
Сообщений: 26
14.04.2013, 17:56  [ТС]
Спасибо вам.
0
6 / 6 / 3
Регистрация: 25.03.2013
Сообщений: 56
15.04.2013, 15:34
Может такой вариант Вам больше подойдет
Java
1
2
3
4
5
6
7
8
9
10
11
12
public class demo {
    public static void main(String[] args) {
        int k = 12345; int x =k;
        int s = 0;
        while (x != 0 ){
            s +=x%10;
            x /=10;
        }
        System.out.println("Сумма цифр в числе " + k + " = " + s);
    }
 
}
1
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
15.04.2013, 19:44
Вариант для выпендрёжа
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.Scanner;
 
class DigitsCounter {
    private static int digitsCount(int n) {
        return ( n < 0 ) ? digitsCount(-n) : ( n == 0 ) ? 1 : (int)Math.log10(n) + 1;
    }
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while ( true ) {
            System.out.print("Number: ");
            if ( ! sc.hasNextInt() )
                break;
            int n = sc.nextInt();
            System.out.println(digitsCount(n) + " digits");
        }
    }
}
Не так задание прочитал. Так количество цифр в числе считается.
1
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
15.04.2013, 20:38
Цитата Сообщение от easybudda Посмотреть сообщение
Вариант для выпендрёжа
Не работает ваш вариант. Падает со StackOverflowError при n = -2147483648
0
любитель покушать
 Аватар для Севак
687 / 641 / 248
Регистрация: 25.09.2011
Сообщений: 1,313
15.04.2013, 20:38
easybudda,

Не по теме:

оригинальный способ, я обычно в строку и ее длину :)

0
 Аватар для Deyeneris
0 / 0 / 0
Регистрация: 27.03.2013
Сообщений: 26
15.04.2013, 21:55  [ТС]
Спасибо всем большое
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
16.04.2013, 01:10
turbanoff, а как Вы себе это число представляете положительным 32-битным целым? Да и выпендрёжные варианты исключительно для выпендрёжа, а не чтобы во всех маргинальных случаях работали...
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
16.04.2013, 06:57
Цитата Сообщение от easybudda Посмотреть сообщение
turbanoff, а как Вы себе это число представляете положительным 32-битным целым?
А зачем это делать? Вы же считаете только количество цифр, вам не нужно его "представлять" в каком-либо другом виде.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
16.04.2013, 14:13
turbanoff, то есть нужно было написать комментарий с той частью курса математики, в которой объясняется, почему не бывает числа, в степень которого нужно возвести число 10, чтобы получить отрицательное число, или хотябы ноль. Добавить небольшой трактат на тему машинного представления целых чисел. И всё ради того, чтобы сказать - да, таки эта функция с числом -2147483648 не справится.

Вот вариант с подсчётом суммы цифр в числе, снова выпендрёжный и снова при вводе -2147483648 приводящий к аццкой рекурсии, валящей программу с этим самым Stack... ну Вы в курсе
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.util.Scanner;
 
class DigitsSum {
    private static int digitsSum(int n) {
        return ( n < 0 ) ? digitsSum(-n) : ( n == 0 ) ? 0 : n % 10 + digitsSum(n / 10);
    }
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while ( true ) {
            System.out.print("Number: ");
            if ( ! sc.hasNextInt() )
                break;
            
            int n = sc.nextInt();
            System.out.println("Sum of digits: " + digitsSum(n));
            
        }
    }
}
1
Vadim4
07.12.2013, 18:15
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
 *Колбасный метод. Без применения классов и приведения значений. Черновик
 * @author Admien
 */
public class Summa {
 
public static void main(String[] args) {
 long f=0;
 long i;
 long a=0;
 long w=1;
 long b=0;
 long n=10;
 long x=1821897198; //Вводим число сюда, только int
 long c=0;
 long y=0;
for (i=1;x/n >0; i++ ) {
 c = (x/n);
 
 a=(x%n); 
 b=(a/w);
 f=b+f;
 w=w*10;
 n=(n*10);
 
 System.out.println("Сумма " +i+ " цифр равна  " + "c= " + c+ "   a= "+a + "  b= "+b + " f= "+f);  
 
   
 
    
}
  y=(f+c);
  System.out.println("Сумма всех " +i+ " цифр равна  " + y);  
 
} 
    }
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.12.2013, 18:15
Помогаю со студенческими работами здесь

Подсчитать количество цифр в заданном числе n, сумму цифр числа n, и выяснить, входит ли цифра 3 в его запись
Задано натуральное число n. Составить программу, которая подсчитывает количество цифр в числе n, сумму цифр числа n и выясняет, входит...

Подсчитать количество 3 в целом числе
Доброво вечера форумчани)! Помогите решить пример: &quot;Подсчитать количество 3 в целом числе&quot; Вот program zavd2; var ...

Определите функции: nd(n) - вычисляющую количество цифр в числе; d (n,k) - вычисляющую k цифру справа в целом числе
Дано натуральное число k. Напечатать k - цифру в последовательности 11235813213455.... в которой Bыписаны все числа Фибоначчи. (Определите...

Подсчитать количество нулей в заданном целом числе
Подсчитать количество нулей в заданном числе. P.S. Число целое.

Подсчитать число сотен в заданном целом числе
Подсчитайте число сотен в заданном целом числе.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru