Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2019, 10:20   #1
ts-alan
Форумчанин
 
Регистрация: 07.07.2010
Сообщений: 825
По умолчанию [РЕШЕНО] Задачка на собеседовании - Решить не используя циклы, массивы — найти сумму цифр числа, заданного в виде десятичной дроби

Решить не используя циклы, массивы
Код:
function calc() {
	???
}
calc(123.45) // 15
calc(111.1111) // 7
calc(123) // 6

Последний раз редактировалось Alex11223; 03.04.2019 в 17:20.
ts-alan вне форума Ответить с цитированием
Старый 14.03.2019, 10:55   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Рекурсивно суммируйте цифры пока не конец строки
p51x вне форума Ответить с цитированием
Старый 14.03.2019, 10:59   #3
ts-alan
Форумчанин
 
Регистрация: 07.07.2010
Сообщений: 825
По умолчанию

спасибо
ts-alan вне форума Ответить с цитированием
Старый 14.03.2019, 11:00   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

reduce еще можно.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.03.2019, 11:09   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Только проверку на число надо добавить.
p51x вне форума Ответить с цитированием
Старый 14.03.2019, 12:06   #6
ts-alan
Форумчанин
 
Регистрация: 07.07.2010
Сообщений: 825
По умолчанию

reduce по строке не проходит
ts-alan вне форума Ответить с цитированием
Старый 14.03.2019, 12:08   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Так превратите ее в массив.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 14.03.2019, 12:26   #8
ts-alan
Форумчанин
 
Регистрация: 07.07.2010
Сообщений: 825
По умолчанию

Массив использовать нельзя
ts-alan вне форума Ответить с цитированием
Старый 14.03.2019, 20:41   #9
Naive
Раздолбайских Дел
Старожил
 
Аватар для Naive
 
Регистрация: 22.05.2009
Сообщений: 3,828
По умолчанию

Код:
function calc(num) {
  return eval(
    num
      .toString()
      .replace(/\D/g,'')
      .replace(/(\d)(?=\d)/g,'$1+')
  )
}
Alar, верни репу!
Naive вне форума Ответить с цитированием
Старый 15.03.2019, 01:30   #10
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Ещё вариант, попроще
Код:
function f(n) {
	let s = 0;
	for (let i = 0; i < n.length; i++) {
		s += isNan( +n.charAt(i) ) ? 0 : +n.charAt(i);
	};
	return s;
}
Вадим Мошев вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти все правильные несократимые дроби, знаменатель которых меньше заданного числа. Александр Старцев Помощь студентам 1 21.12.2016 17:26
Найти сумму цифр заданного натурального числа ZigaBr0 Паскаль, Turbo Pascal, PascalABC.NET 3 29.08.2016 16:09
одномерный массив - найти сумму отрицательных меньше заданного числа и количество положительных больше заданного числа ALEXXELA Паскаль, Turbo Pascal, PascalABC.NET 2 02.12.2012 20:13
найти сумму цифр заданного натурального числа dima.m Microsoft Office Excel 6 06.12.2010 11:30
Паскаль. Из заданного числа найти сумму его цифр Matlashov Помощь студентам 8 26.11.2009 14:27