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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.88
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
#1

Ввести последовательность из n целых чисел - C++

26.10.2011, 21:05. Просмотров 3808. Ответов 10
Метки нет (Все метки)

Всем доброго времени суток.

Требуется помощь по такой задаче:

1. ввести последовательность из N целых чисел,
2. последовательность заканчивается вводом нуля,
3. посчитать a1*N+a2(N-1)+...+an.

Массивы использовать нельзя.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2011, 21:05     Ввести последовательность из n целых чисел
Посмотрите здесь:

Вводится последовательность из N целых чисел. Сформировать последовательность, C++
ввести последовательность чисел C++
C++ Дана последовательность целых чисел а1, а2, …, an. Выяснить, является ли она симметричной последовательностью простых чисел
Вводится последовательность целых чисел,0 –конец последовательности. Определить, содержит ли последовательность хотя бы три отрицательных четных числа C++
C++ С помощью генератора псевдослучайных чисел образовать последовательность целых чисел в диапазоне от 140 до 220 (см)
C++ Заданная последовательность целых чисел. Найти количество чисел, делящихся на 3 и 5 без остатка
Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры. В С++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
x1Mike7x
215 / 128 / 6
Регистрация: 06.11.2010
Сообщений: 234
26.10.2011, 21:12     Ввести последовательность из n целых чисел #2
Цитата Сообщение от Xibrand Посмотреть сообщение
Массивы использовать нельзя.
Ок, а если размер вводимой последовательность хрен знает сколько, то как мы узнаем N?
Но ок, без массива
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <queue>
 
using namespace std;
 
int main()
{
    queue < int > Q;
    int R = 0, X;
    cin >> X;
    while ( X )
    {
        Q.push( X );
        cin >> X;
    }
    while ( !Q.empty() )
    {
         R += Q.front() * Q.size();
         Q.pop();
    }
    cout << R << endl;
    return 0;
}
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:17  [ТС]     Ввести последовательность из n целых чисел #3
Проблема в том,что прошли только do while,while,for,if и #include <iostream>
Петррр
5939 / 3376 / 335
Регистрация: 28.10.2010
Сообщений: 5,926
26.10.2011, 21:24     Ввести последовательность из n целых чисел #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <list>
 
using namespace std;
 
int main(int argc, char **argv)
{
    list<int> _list;
    int val;
    cout << "Enter number: ";
    cin >> val;
    while (val)
    {
        _list.push_back(val);
        cout << "Enter number: ";
        cin >> val;
    }
    int s = 0;
    int n = _list.size();
    list<int>::iterator it = _list.begin();
    for(; it != _list.end(); ++it)
        s += *it * n--;
    cout << "S: " << s << endl;
    system("pause");
    return 0;
}
Добавлено через 1 минуту
Массивы использовать нельзя, а queue еще не прошли. И как тогда делать?
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:27  [ТС]     Ввести последовательность из n целых чисел #5
Массивы использовать нельзя, а queue еще не прошли. И как тогда делать?
Какая-то олимпиадная задача.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
26.10.2011, 21:32     Ввести последовательность из n целых чисел #6
Цитата Сообщение от Петррр Посмотреть сообщение
Массивы использовать нельзя, а queue еще не прошли. И как тогда делать?
тогда что-нибудь такое:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main()
{
    int tmp=1, sum=0, tmp1=0;
    while(tmp)
    {
        cin>>tmp;
        if(tmp)
        {
            tmp1+=tmp;          
            sum+=tmp1;
        }
    }
    cout<<sum;
  
    return 0;
}
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:36  [ТС]     Ввести последовательность из n целых чисел #7
Благодарю.Осталось разобраться как это работает.
Петррр
5939 / 3376 / 335
Регистрация: 28.10.2010
Сообщений: 5,926
26.10.2011, 21:39     Ввести последовательность из n целых чисел #8
valeriikozlov, а N?
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:43  [ТС]     Ввести последовательность из n целых чисел #9
Только не понял как он выходит из цикла?
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
26.10.2011, 21:44     Ввести последовательность из n целых чисел #10
Цитата Сообщение от Петррр Посмотреть сообщение
valeriikozlov, а N?
в моем коде правильно вычисляется:
Цитата Сообщение от Xibrand Посмотреть сообщение
a1*N+a2(N-1)+...+an.
причем с заранее неизвестным N (как и дано по условию задачи).
Объяснить подробнее?

Добавлено через 32 секунды
Цитата Сообщение от Xibrand Посмотреть сообщение
только не понял как он выходит из цикла?
когда введут 0
Цитата Сообщение от Xibrand Посмотреть сообщение
последовательность заканчивается вводом нуля
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2011, 21:46     Ввести последовательность из n целых чисел
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:46  [ТС]     Ввести последовательность из n целых чисел #11
Всё разобрался как работает.Спасибо большое.
Yandex
Объявления
26.10.2011, 21:46     Ввести последовательность из n целых чисел
Ответ Создать тему
Опции темы

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