Имя: Пароль:
IT
 
Задачка. Сумма всех цифр чисел от одного до миллиона
0 1Сергей
 
02.02.21
16:56
Задачка для того чтобы размять мозги.
Посчитать сумму всех цифр чисел от одного до миллиона.

(я решил в уме)
1 Fish
 
02.02.21
16:57
(0) Что такое "сумма всех цифр чисел"?
2 Fragster
 
гуру
02.02.21
16:57
1 + 999999 = 1000000
2 + 999998 = 1000000
и чем тут гордиться?
3 1Сергей
 
02.02.21
16:58
(2) ответ?
4 Fragster
 
гуру
02.02.21
16:58
и не ты решил, а прочитал байку про десятилетнего гаусса, который эту формулу придумал
5 1Сергей
 
02.02.21
16:58
(1) например, сумма цифр числа 123 считается так: 1+2+3
6 1Сергей
 
02.02.21
16:59
(4) нет, я сам решил. И не так как там
7 Fragster
 
гуру
02.02.21
16:59
а, цифр чисел, а не чисел. тут надо подумать чуток, но тож не сложно
8 Fish
 
02.02.21
17:00
(5) Тогда ответ 27000001
9 Fragster
 
гуру
02.02.21
17:00
типа сумма от 1 до 9 = 55, единиц там будет 100000, десятков там 10000, и т.п.
получается 4999999, чтоли. мог девяткой промахнуться
10 1Сергей
 
02.02.21
17:01
(8) а решение?
11 1Сергей
 
02.02.21
17:02
(9) не только девяткой
12 Fragster
 
гуру
02.02.21
17:02
(11) ну да. но принцип такой. лень.
13 Fragster
 
гуру
02.02.21
17:04
да и через (2) можно
14 Fish
 
02.02.21
17:05
(10) 0+999999=1+999978=2+999997... и т.д. Таких пар 500000. Плюс сам 1000000. Ответ: 54*500000+1
15 Fragster
 
гуру
02.02.21
17:06
еще можно так - всего от 000000 до 999999 6 миллионов чисел от 0 до 9. каждая встречается по 600к раз, т.е. получается 45 * 600к = 27000000. ну еще  + 1 из 1000000 добавить,
16 1Сергей
 
02.02.21
17:07
(14) ок, правильно
17 1Сергей
 
02.02.21
17:08
(15) тоже правильно
18 1Сергей
 
02.02.21
17:08
я решал так

Представим все числа как шестизначные от 000000 до 999999 (миллион отбросим пока) выстроим в столбик. Сначала посчитаем все единицы 0+1+2+3+4+5+6+7+8+9... Эта последовательность повторяется 100'000 раз, значит 54*100'000 = 5'400'000. Далее десятки. Понятно что там тот же самый набор цифр, но немного в "растянутой" последовательности 0+0+0+0+0+0+0+0+0+0+1+1+1+1+1+1+1+1+1+1... но, количество нулей, единиц, двоек и т.д. такое же. Т.е., по сути, то же число 5'400'000. С сотнями всё то же самое, но более "растянуто". Далее понятно что сумма в каждом столбце одиннаковая, значит можно просто 6*5'400'000. И добавляем 1 отброшенного вначале миллиона. Ответ: 27'000'001
19 Вафель
 
02.02.21
17:13
n*(n+1)/2
20 Вафель
 
02.02.21
17:14
кмк эту формулу еще в школе проходят
21 1Сергей
 
02.02.21
17:18
(19) а n в нашем случае муллион?
22 Малыш Джон
 
02.02.21
17:37
(21) сумма арифметической прогрессии

S = n*(а1+а2)/2;
23 Малыш Джон
 
02.02.21
17:39
+(22) это не ответ к (0), это пояснение к (19)
24 Малыш Джон
 
02.02.21
17:39
(20) не сумму чисел, а сумму цифр из которых эти числа состоят
25 Gbpltw
 
02.02.21
17:39
буквами всякий сможет. а вычислить запросом?
26 Гений 1С
 
гуру
02.02.21
17:40
не глядя на подсказки 1 + 1000000 / 2
27 Гений 1С
 
гуру
02.02.21
17:40
т.е. 500000.5
28 Гений 1С
 
гуру
02.02.21
17:40
хотя стоп
29 Малыш Джон
 
02.02.21
17:41
(26) оригинально
30 Гений 1С
 
гуру
02.02.21
17:41
(1 + 1 млн) * 1 млн / 2, пардон
31 Гений 1С
 
гуру
02.02.21
17:41
500000500000
32 Fragster
 
гуру
02.02.21
17:41
(26) ты тз так же читаешь?
33 1Сергей
 
02.02.21
17:42
(30) Садись, два :)
34 Гений 1С
 
гуру
02.02.21
17:42
(32) посмотри, как я решаю ханойские башни
35 Fragster
 
гуру
02.02.21
17:42
(19), (21) см (32)
36 Fragster
 
гуру
02.02.21
17:42
в (35) не (21), а (22)
37 Гений 1С
 
гуру
02.02.21
17:43
а, он сумму цифер считает. ну ггг
38 Малыш Джон
 
02.02.21
17:45
(36) ты читай все подряд, а не только то, что нравится. в (22) - пояснение к (19)
39 Ненавижу 1С
 
гуру
02.02.21
17:47
[(1+9)*9/2]*10^5*6+1
40 1Сергей
 
02.02.21
17:48
(39) Правильно
41 Ненавижу 1С
 
гуру
02.02.21
18:01
(27) точно, складываем целые и получаем дробное
42 Ненавижу 1С
 
гуру
02.02.21
18:02
+(41) не ну иногда и вот так бывает https://habr.com/ru/post/53883/
43 mikecool
 
02.02.21
18:05
(18)  и это все у тебя в уме уложилось?
44 1Сергей
 
02.02.21
18:06
(43) да. нолики пририсовывать я могу в уме
45 mikecool
 
02.02.21
18:09
(44) что сказать - голова!
46 hhhh
 
02.02.21
18:51
(44) но что-то какое-то у вас странное решение. Во-первых, 6 * 5400000 = 32 400 000. Так, между нами.
47 hhhh
 
02.02.21
18:56
(44) во-вторых 0+1+2+3+4+5+6+7+8+9 = 45.
48 Жан Пердежон
 
02.02.21
19:04
как-то так:

4,5 * 6 * 1000000 + 1 = 27000001
49 1Сергей
 
02.02.21
20:19
(46) (47) ошибся когда записывал
50 Вася Теркин
 
03.02.21
07:07
(31) 500000500000 + КорректировкаНаГениальность1С
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший