Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
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. Просмотров 513. Ответов 8
Метки нет (Все метки)

Есть последовательность - 1 1 2 3 3 4 5 5 6 7 7 8 9 9 и т.д. Нужно найти сумму элементов, начиная с 1 и заканчивая n. Каким образом это можно осуществить кроме перебора?
0
Лучшие ответы (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 (C++):

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

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

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

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

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

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

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

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

Не по теме:

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

0
Кот Ангенс
318 / 268 / 38
Регистрация: 24.05.2012
Сообщений: 629
16.11.2014, 21:42 #7
Верно, какую-то глупость я написал. Нужно разбивать на три прогрессии, и формула имеет вид (n + 2) / 3 * ((n + 2) / 3) + (n + 1) / 3 * ((n + 1) / 3) + (n / 3 + 1) * (n / 3).
1
zer0mail
2373 / 2003 / 199
Регистрация: 03.07.2012
Сообщений: 7,192
Записей в блоге: 1
16.11.2014, 22:19 #8
Цитата Сообщение от Pepsy Посмотреть сообщение
zer0mail, n- порядковый номер, к сожалению 2n/3 - далеко не правильный ответ(
А я и не писал, что это - ответ.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
16.11.2014, 23:28 #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 ;
}
1
16.11.2014, 23:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2014, 23:28
Привет! Вот еще темы с ответами:

Найти сумму тех элементов заданной последовательности, сумма цифр которых нечётна - 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, ... Какое минимальное ко-личество элементов...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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