![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
Есть вот такая функция, которая проверяет, является ли число нарцисстическим. Т.е. сумма степеней цифр из которых оно состоит (степень равна количеству цифр в числе), равна самому числу.
Console.WriteLine - все используются для поиска ошибки Все примеры выполняю на сайте sololearn во встроенном code playground Задача с сайта Codewars sum += (int) Math.Pow(i, degree); // в этой строке ошибка Точнее даже так. // sum += i; - я использовал эту строку для дебага. i принимает правильное значение, а вот sum - какое-то вообще рандомное число, не понятно откуда берется. // Получаю вот такой вывод: // value = 1634 i = 1 sum = 49 i = 6 sum = 103 i = 3 sum = 154 i = 4 sum = 206 False = 206 == 1634 False // Или вот ещё пример // value = 153 i = 1 sum = 49 i = 5 sum = 102 i = 3 sum = 153 True = 153 == 153 True Код:
Последний раз редактировалось Никоалй; 04.03.2020 в 11:33. |
![]() |
![]() |
![]() |
#2 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
![]()
К Int додаете Char?
49 - ASCII код "1"
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. Последний раз редактировалось Aleksandr H.; 04.03.2020 в 11:52. |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
Я пробовал писать по разному:
Код:
Код:
Код:
Последний раз редактировалось Никоалй; 04.03.2020 в 11:51. Причина: опечатки |
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
А ещё попробовал написать так:
Код:
i = 1 sum = 49 i = 6 sum = 54 i = 3 sum = 51 i = 4 sum = 52 False = 52 == 1634 False Т.е. после работы этого оператора получается число около 50+- Это так и должно быть вообще? Или это проблема компиллятора, встроенного в сайт? Последний раз редактировалось Никоалй; 04.03.2020 в 11:54. Причина: Дополнительный вопрос |
![]() |
![]() |
![]() |
#5 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]() Код:
from dark to light)
|
![]() |
![]() |
![]() |
#6 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
![]()
и так пробовали?
Код:
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
![]() |
![]() |
![]() |
#7 |
t45t
Участник клуба
Регистрация: 20.03.2012
Сообщений: 1,849
|
![]()
По факту добавил переменную степени текущей итерации цикла, и сумму которая запоминает сумму всех степеней отдельной цифры
i-48 - это преобразование символа в число, иначе будет некорректный счет, посмотрите как выводится sum при суммировании с i, будет на 48 больше всегда Код:
Код:
вот общий код работы всей программы функцию вызываем в main, но перед этим делаем искусственный контроль ввода так же для более легкого просмотра можно разукрасить данные в консоли в чередующийся цвет при выводе, а так же цвет подведения итога в отличный от них цвет Код:
from dark to light)
Последний раз редактировалось Алексей_2012; 04.03.2020 в 15:23. |
![]() |
![]() |
![]() |
#8 | |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
Aleksandr H.,
Цитата:
Вот только я не до конца понял, почему именно так? Может сможете объяснить? Или есть ссылка на статью? Последний раз редактировалось Никоалй; 04.03.2020 в 15:51. Причина: Вставил цитату |
|
![]() |
![]() |
![]() |
#9 |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
Спасибо! Я думал о таком способе решения, после Вашей подсказки попробовал в своем коде вставить "i-48" и всё успешно сработало! Решение было зачтено!
В принципе я попробовал ещё способ, предложенный Александром Код:
Спасибо! |
![]() |
![]() |
![]() |
#10 |
Новичок
Джуниор
Регистрация: 04.03.2020
Сообщений: 7
|
![]()
Мой вопрос считаю решённым. Тему можно закрывать.
Выражаю благодарность Александру и Алексею за предложенные решения! Оба способа оказались рабочими! |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Убрать папки "Pictures", "Music", "Видео", "Downloads" из "МОЙ КОМПЬЮТЕР" | Бахтиёр1916 | Windows | 1 | 05.04.2017 12:53 |
Нужно пояснить/прокомментировать код программы, или коды функций "Добавить" "Удалить" "Обновить(редактировать" "Поиск" "Период") | ZIRASS | PHP | 4 | 15.06.2016 14:23 |
Ошибка "Expecting a valid name" для оператора "<" в JScript | Ратибор Редоран | JavaScript, Ajax | 0 | 15.12.2011 14:38 |