Сумма цифр трехзначного числа

  • 6
  • Недоступна
Вашему вниманию предлагается задачка, над которой придется немного помозговать. Или погуглить, если не слишком любите математические головоломки. Но в любом случае будет полезно понять, почему, что и как. Так вот, вам нужно реализовать метод, который принимает на вход трехзначное число, а выдает на выходе — сумму его цифр.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (328)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Инна4 уровень
понедельник, 23:20
Нашла решение: return ((number%10) + (number/10%10) + (number/100)); Понимаю, как высчиталась цифра 5 (546/100 = 5,46) Объясните, пожалуйста, как взялись 4 и 6? И почему знак "%" ставится перед числом? Каким образом этот модуль разделяет трехзначное число на составляющие? Или где я могу почитать об этом?
Инна4 уровень
четверг, 19:18
С горем пополам и при содействии старых и новых богов - я это поняла.
Инна4 уровень
вчера, 19:47
Спасибо, добрый человек.💗
Инна4 уровень
28 июня, 21:10
Все условия соблюдены, кроме последнего. Бред. int a = 5; int b = 4; int c = 6; return a + b + c;
Dmitry Sysoev5 уровень, Москва
понедельник, 20:04
ХЗ, возможно, при проверке подставляется еще 1 дополнительное число, и в Вашем случае выходит неверный ответ для другого числа. Я решал через деление по модулю.
Инна4 уровень
понедельник, 22:58
Как это?
Dmitry Sysoev5 уровень, Москва
среда, 20:23
Вы жестко зафиксировали сравнение числа 546, а система может подставить любое другое число. Необходимо рассматривать задачу с точки зрения, что вместо "546" может быть передано любое число в формате XYZ и решать на основе неизвестных входных данных.
Инна4 уровень
четверг, 19:18
Да, я уже допетрила, спасибо.
Юрий8 уровень, Москва
24 июня, 08:35
Из String берем первый символ (читай про charAt). Дальше преобразуешь char в String , далее преобразуешь String в int, записываешь значение в переменную. Можно использовать конструкцию while, для перебора всех символов в строке - но это для тех, кто понимает. Формулы по поводу деления - весело, но если у вас будет 2000 знаков?
Dmitry Sysoev5 уровень, Москва
понедельник, 20:05
в данной задаче указано ограничение на 3 числа, поэтому проще применить деление по модулю, чем изучать charAt
Dator15 уровень, Киев
24 июня, 03:01
А преобразованием типов никто не сделал? Инт в стринг, стринг в массив чаров, потом новый стринг на каждый чар из массива, потом инты из этих новых стрингов... Нормальная такая порнография..
Vaha4 уровень, Москва
26 июня, 15:07
У меня эта мысль первым делом родилась, это решение универсально для любых чисел. Но тут конкретно трехзначное, значит это неспроста.
Dmitry Sysoev5 уровень, Москва
понедельник, 20:07
Геморно очень. Хотя многие не ищут легких путей)).
Олег4 уровень, Калуга
вторник, 05:36
ничего геморного. в 6 строк кода. число в строку, строку в масив чаров. + цикл
for (int i = 0; i < numbersArr.length; i++) {
 result+=Integer.parseInt(String.valueOf(numbersArr[i]));
}
Как бонус - получается метод не только на трехзначное число, да хоть на двести знаков
Dmitry Sysoev5 уровень, Москва
среда, 20:26
Вот это кракозябля, Тили-тили, трали-вали, это мы не проходили, это нам не задавали)))
Andrey10 уровень, Москва
10 июня, 16:45
Надеюсь кому-то поможет мое решение))
return(number/100 + (number/10) % 10 + number % 10);
Zoman7 уровень, Днепр
6 июня, 09:38
Книга (школьное программирование очень помола ) вот вам подсказка от этого и пляшите. например а = 32145 % 10 = 5(оставляет последний знак) так же и деление по модулю 100(2 знака),1000(3 знака) и т.д. например а = 32145 / 10 = 3214(убирает последний знак). так же и деление на 100(2 знака),1000(3 знака)и т.д
Musa Muradzade8 уровень, Санкт-Петербург
28 мая, 20:41
На Stepic.org полно интересных задач наподобие "Сумма цифр трехзначного числа", рекомендую параллельно проходить
Рустам4 уровень, Leninsk
26 мая, 10:09
Чем не устроило программу моё решение подскажите может я что-то не понимаю? number = 5 + 4 + 6; return numer;
Виктория Петрашко6 уровень, Львов
26 мая, 15:13
В даном случае у вас число 546. Но по логике оно может быть какое угодно. тогда результат по вашему методу будет неверен.
Рустам4 уровень, Leninsk
28 мая, 17:00
Спасибо, Виктория) не сразу дошло просто)
Александр Аршавский11 уровень, Минск
25 мая, 08:54
Среднее кол-во попыток 1.66!!! 1.66, Карл
Екатерина5 уровень, Москва
12 июня, 19:52
просто все научились уже сперва компилировать, проверять свой ответ ,перед отправкой на проверку, начали вникать в то , что от них хотят, чую так и останусь я infrostraktion manager ибо ЗП почти как у middle , а конкуренция по ходу большая будет ...... да и у junior ЗП в два - три раза меньше , ну хоть под учусь , PS правда уже на ура знаю , даже не задумываяясь пишу автоматизацию процессов , но благодаря link тут сделал собственную программу учета техники для работодателя, по аналогии с учетом экспонатов музея, премия окупила оплату курсуов, но курсы затягивают и сидишь пол ночи вместо XBOX one тут ))))) хорошего вечера Коллега)
Михаил Никитюк5 уровень, Харьков
23 мая, 21:01
ну теперь я знаю что % записывают в переменную остаток было сложно но это видео очень помогло https://www.youtube.com/watch?v=vSQwURYY84E ему бы тут писать лекции...
Natalya4 уровень, Москва
час назад
Спасибо