Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Pepsy
47 / 32 / 4
Регистрация: 05.01.2013
Сообщений: 307
#1

Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 - C++

16.11.2014, 15:58. Просмотров 479. Ответов 8
Метки нет (Все метки)

Есть последовательность - 1 1 2 3 3 4 5 5 6 7 7 8 9 9 и т.д. Нужно найти сумму элементов, начиная с 1 и заканчивая n. Каким образом это можно осуществить кроме перебора?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2014, 15:58     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7
Посмотрите здесь:

Сумма элементов n-ой последовательности - C++
Дана последовательность из n целых чисел. Найти сумму элементов с четными номерами из этой последовательности.

Сумма элементов с нечетными номерами последовательности - C++
Дана последовательность из n целых чисел. Найти сумму элементов с нечетными номерами из этой последовательности. #include <iostream.h> ...

Найти последовательности из трех элементов, сумма которых больше 10 - C++
В одномерном массиве (не менее 6 элементов) определите и выведите на экран, последовательности, состоящие из трех элементов, сумма которых...

Проверить, является ли сумма элементов последовательности четным числом - C++
Дано натуральное число n и целые числа а1,а2,а3.,аn. Верно, что их сумма является парным числом?

Сумма элементов между MIN и MAX последовательности без массива - C++
Всем привет! Препод дал задание: Найти в последовательности минимальный и максимальный элементы и сумму между ними, не используя...

Произведение и сумма отрицательных элементов последовательности, предшествующих первому положительному числу - C++
Найти произведение и сумму отрицательных элементов последовательности предшествующих первому положительному числу

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jewbacabra
Эксперт PHP
2186 / 1850 / 690
Регистрация: 24.04.2014
Сообщений: 5,380
16.11.2014, 16:11     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #2
Цитата Сообщение от Pepsy Посмотреть сообщение
Каким образом это можно осуществить кроме перебора?
можно выделить в данной последовательности 3 подпоследовательности, являющимися арифметическими прогрессиями, по n определить сколько членов каждой подпоследовательности входит в общую последовательность, и воспользовавшись формулой суммы получить результат.
Кот Ангенс
317 / 267 / 38
Регистрация: 24.05.2012
Сообщений: 629
16.11.2014, 16:12     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #3
Разбить последовательность на две арифметические прогрессии: { 1, 3, 5, ... } и { 2, 4, 6, ... }. Посчитать сумму второй вплоть до ((n + 1) / 3) члена и прибавить удвоенную сумму первой до (n - (n + 1) / 3 + 1) члена.
Pepsy
47 / 32 / 4
Регистрация: 05.01.2013
Сообщений: 307
16.11.2014, 20:40  [ТС]     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #4
Кот Ангенс, с второй прогрессией что-то не то - например, n=3, тогда нам нужно посчитать всё до 3-1+1=3 члена этой прогрессии: (4+2*3)/2*3=15, а это уже намного больше, чем нам нужно. (1+1+2=4)
zer0mail
2323 / 1949 / 192
Регистрация: 03.07.2012
Сообщений: 6,996
Записей в блоге: 1
16.11.2014, 21:08     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #5
Неужели трудно подобрать нужные выражения? Или только в готовую формулу можете подставить?

В условии неясно: n-это порядковый номер элемента или значение элемента. Если номер, то значение около 2n/3.
Pepsy
47 / 32 / 4
Регистрация: 05.01.2013
Сообщений: 307
16.11.2014, 21:14  [ТС]     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #6
zer0mail, n- порядковый номер, к сожалению 2n/3 - далеко не правильный ответ(

Не по теме:

я же не заставляю вас помогать, или я чего-то не знаю о киберфоруме?

Кот Ангенс
317 / 267 / 38
Регистрация: 24.05.2012
Сообщений: 629
16.11.2014, 21:42     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #7
Верно, какую-то глупость я написал. Нужно разбивать на три прогрессии, и формула имеет вид (n + 2) / 3 * ((n + 2) / 3) + (n + 1) / 3 * ((n + 1) / 3) + (n / 3 + 1) * (n / 3).
zer0mail
2323 / 1949 / 192
Регистрация: 03.07.2012
Сообщений: 6,996
Записей в блоге: 1
16.11.2014, 22:19     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #8
Цитата Сообщение от Pepsy Посмотреть сообщение
zer0mail, n- порядковый номер, к сожалению 2n/3 - далеко не правильный ответ(
А я и не писал, что это - ответ.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2014, 23:28     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7
Еще ссылки по теме:

Найти сумму тех элементов заданной последовательности, сумма цифр которых нечётна - C++
Дана последовательность из n целых чисел. Найти сумму элементов этой последовательности, сумма цифр которых нечетна. Написать программу...

Рекурсия: найти подпоследовательность подряд идущих элементов последовательности, сумма которых минимальна - C++
В данной последовательности чисел найти подпоследовательность подряд идущих элементов, сумма которых минимальна. Реализовать с помощью...

Вывести на экран m первых элементов последовательности так, чтобы их сумма оказалась меньше 1000 - C++
Вывести на экран m первых (a1, a2, …) элементов последовательности an=2+2n², так, чтобы их сумма оказалась меньше 1000, а сумма m+1 первых...

Цикл с предусловием: какое min число элементов последовательности нужно сложить, чтобы сумма превысила S - C++
Задача: Дана последовательность, состоящая из дробей: 1/1, 3/2, 5/3, 7/4, ... Какое минимальное ко-личество элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
16.11.2014, 23:28     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7 #9
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main()
{
    size_t n = 12 ;
    
    size_t t = n/3 ;
    std::cout << n-2*t+2*t*n-3*t*t << std::endl ;
}
Yandex
Объявления
16.11.2014, 23:28     Сумма элементов последовательности 1 1 2 3 3 4 5 5 6 7 7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru