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

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

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

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

26.10.2011, 21:05. Просмотров 4030. Ответов 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 целых чисел (C++):

Вводится последовательность из N целых чисел. Сформировать последовательность, - C++
Вводится последовательность из N целых чисел. Сформировать последовательность, каждый элемент которой равен сумме цифр исходной...

Вводится последовательность целых чисел,0 –конец последовательности. Определить, содержит ли последовательность хотя бы три отрицательных четных числа - C++
Составить алгоритм решения задачи и написать программу на языке С++. В алгоритме и программе массивов не использовать. ...

Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые завершаются цифрой5 - C++
Ввести некоторую последовательность чисел и создать динамический массив из чисел, которые завершаются цифрой 5.

Ввести массив из 10 целых чисел.Найти сумму чётных чисел - C++
Ввести массив из 10 целых чисел.Найти сумму чётных чисел. Обьясните что делать?

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

ввести последовательность чисел - C++
ввести последовательность из n чисел с клавы, произведение этих чисел.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
x1Mike7x
216 / 129 / 6
Регистрация: 06.11.2010
Сообщений: 234
26.10.2011, 21:12 #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  [ТС] #3
Проблема в том,что прошли только do while,while,for,if и #include <iostream>
Петррр
5949 / 3386 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
26.10.2011, 21:24 #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  [ТС] #5
Массивы использовать нельзя, а queue еще не прошли. И как тогда делать?
Какая-то олимпиадная задача.
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
26.10.2011, 21:32 #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  [ТС] #7
Благодарю.Осталось разобраться как это работает.
Петррр
5949 / 3386 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
26.10.2011, 21:39 #8
valeriikozlov, а N?
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:43  [ТС] #9
Только не понял как он выходит из цикла?
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
26.10.2011, 21:44 #10
Цитата Сообщение от Петррр Посмотреть сообщение
valeriikozlov, а N?
в моем коде правильно вычисляется:
Цитата Сообщение от Xibrand Посмотреть сообщение
a1*N+a2(N-1)+...+an.
причем с заранее неизвестным N (как и дано по условию задачи).
Объяснить подробнее?

Добавлено через 32 секунды
Цитата Сообщение от Xibrand Посмотреть сообщение
только не понял как он выходит из цикла?
когда введут 0
Цитата Сообщение от Xibrand Посмотреть сообщение
последовательность заканчивается вводом нуля
Xibrand
1 / 1 / 0
Регистрация: 26.10.2011
Сообщений: 31
26.10.2011, 21:46  [ТС] #11
Всё разобрался как работает.Спасибо большое.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2011, 21:46
Привет! Вот еще темы с ответами:

Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры. В С++ - C++
Запишите функцию для вычисления произведения целых чисел из диапазона от а до в. найдите произведение чисел, диапазон ввести с клавиатуры....

Проверить является ли заданная последовательность целых чисел перестановкой чисел натурального ряда - C++
Проверить, является ли заданная последовательность целых чисел перестановкой начального отрезка последовательности натуральных чисел

Вводится последовательность целых чисел. Определить среднее арифметическое простых чисел последовательности - C++
Использовать функции в программе Задание: Вводится последовательность целых чисел. Определить среднее арифметическое простых чисел...

Дана последовательность целых чисел, последнее из которых 0. Найти количество 3-значных чисел - C++
Дана последовательность целых чисел, последнее из которых 0. Найти количество 3-значных чисел. cout &lt;&lt; &quot;Dano: &quot; &lt;&lt; endl; cin...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
26.10.2011, 21:46
Ответ Создать тему
Опции темы

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