Страницы: 1
RSS
Просуммировать числа между собой
 
Здравствуйте. Есть выборка 2,4,8,16,32,64,128,256. Нужно пересуммировать все числа между собой (все возможные варианты). Например 2+4=первое число. 2+8=второе число, 2+4+8+16=третье число и так далее. Помогите, пожалуйста, это сделать
 
Rdaz,
от 6 до 510 с шагом 2.
Могу макросом, надо?
 
Да, если можно
 
Хотя погорячился. Из этих чётных нужно исключить сами числа ряда - их суммой не представить.
Сейчас нарисуем.
 
Наверно так?
Код
Sub main()
Dim E&, I&, R&
E = 2
For I = 2 To 512 Step 2
  If I = E Then
    E = E + E
  Else
    R = R + 1
    Cells(R, "A") = I
  End If
Next I
End Sub
 
Попробую, спасибо) А ну подскажите, куда вставлять этот код?Я с макросами не работала ещё
 
См. вложение.
Кстати - разложение на слагаемые нужно?
 
Доброе время суток
Цитата
Rdaz написал:
макросами не работала ещё
А если прочитать?
 
Обязательно это сделаю) Просто так было бы понятнее)
 
674136196258318378438498
1076138198260320380440500
1278140200262322382442502
1480142202264324384444504
1882144204266326386446506
2084146206268328388448508
2286148208270330390450510
2488150210272332392452
2690152212274334394454
2892154214276336396456
3094156216278338398458
3496158218280340400460
3698160220282342402462
38100162222284344404464
40102164224286346406466
42104166226288348408468
44106168228290350410470
46108170230292352412472
48110172232294354414474
50112174234296356416476
52114176236298358418478
54116178238300360420480
56118180240302362422482
58120182242304364424484
60122184244306366426486
62124186246308368428488
66126188248310370430490
68130190250312372432492
70132192252314374434494
72134194254316376436496
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Спасибо)
 
Цитата
Апострофф написал:
См. вложение.Кстати - разложение на слагаемые нужно?
Нужно) Опять же, если Вам не тяжело)Заранее огромное спасибо)
 
Найдёте теперь, куда вставить :)
Код
Sub main()
Dim E&, I&, R&, J&, D&, S$
E = 2
For I = 2 To 512 Step 2
  If I = E Then
    E = E + E
  Else
    R = R + 1
    Cells(R, "A") = I
    J = I
    D = 256
    S = ""
    While J
      If J >= D Then
        S = "+" & D & S
      End If
      J = J Mod D
      D = D \ 2
    Wend
    'Mid$(S, 1, 1) = "="
    Cells(R, "B") = S
  End If
Next I
End Sub
 
Спасибо, да, буду искать))) Если, вдруг, до меня туго дойдет)))) Можно спросить у Вас совета?
 
[Alt+F11] - подсказка.
Скрытый текст
Изменено: Апострофф - 13.01.2020 22:53:18
 
Все получилось, спасибо) буду теперь этот макрос хранить как зеницу ока)))
Изменено: Rdaz - 13.01.2020 23:50:05
Страницы: 1
Наверх