Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
C++++++
0 / 0 / 1
Регистрация: 21.10.2011
Сообщений: 11
1

Нужна помощь, чтобы разобраться в несложной программе (последовательность)

21.10.2011, 16:53. Просмотров 399. Ответов 6
Метки нет (Все метки)

Вот задание:
Дана последовательность целых чисел, за которой следует 0. Найти среднее арифметическое этой последовательности.
Ну и вот собственно мой вариант кода программы:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <iostream.h>
void main(void)
{
int f,x,n,s;
n=1;
while (x!=0)
{
cout<<"vvedite elem. posled. #"<<n<<" ";
cin>>x;
s+=x;
n++;
}
f=s/n;
cout<<"srednee arifmeticheskoe="<<f;
getch();
}
При вычислении f проблема состоит в n. Для вычисления программа берет последнее значение суммы из цикла, но почему то не последнее значение n. Собственно впорос в том, как задать это последнее значение n..а может я вообще в корне неправильно делаю)

 Комментарий модератора 
Используйте теги форматирования кода.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2011, 16:53
Ответы с готовыми решениями:

не могу разобраться в несложной задаче
Задание: Даны целые числа a, b, c. Если числа не равны, то заменить каждое из...

народ срочно нужна ваша помощь,не могу разобраться с прогой
Сжать n мерный целочисленный массив,удалив из него все элементы,величина...

Вставить в последовательность действительное число b так, чтобы последовательность осталась неубывающей
Дана последовательность действительных чисел a1 &lt;= a2&lt;= ... &lt;=an вставить...

Массив: Вставить в последовательность действительное число b так, чтобы последовательность осталась неубывающей.
дана последовательность действительных чисел. вставить в нее действительное...

Помощь по программе
Пожалуйста, помогите! Расскажите мне о кодах объектах и функциях в ФАСМ. Я...

6
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
21.10.2011, 17:01 2
1. Выберите цикл с пост условием.
2. При подсчете проверяйте, что n > 0.
0
ViT(Vet@l)
29 / 28 / 7
Регистрация: 13.12.2010
Сообщений: 334
21.10.2011, 18:02 3
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
27
#include <iostream>
 
using namespace std;
 
int main()
{
    int massiv[100];
 
    cout << "Vvedite kolichestvo chisel" << endl;
 
    int a = 0, sum = 0;
 
    cin >> a;
 
    for(int i = 0; i < a; i++){
        cin >> massiv[i];
        sum+=massiv[i];
    }
 
    float sred = 0;
 
    sred =(float) sum / a;
 
    cout << sred;
 
    return 0;
}
0
C++++++
0 / 0 / 1
Регистрация: 21.10.2011
Сообщений: 11
21.10.2011, 18:12  [ТС] 4
Нужно использовать оператор предусловия, массив нельзя ;х но все равно спасибо)
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.10.2011, 18:41 5
Все проще, до цикла поставьте
C++
1
2
n = 0;
cin >> x;
Затем
C++
1
2
3
4
5
6
7
while (x != 0)
{
   n++;
   cout<<"vvedite elem. posled. #"<<n<<" ";
   cin >> x;
   s += x;
}
0
aeshes
442 / 205 / 21
Регистрация: 07.10.2011
Сообщений: 462
21.10.2011, 18:58 6
как-то так
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
#include <iostream>
using namespace std;
int main(void)
{
   int x,n,s;
   n=0;
   s=0;
   cout<<"Enter elem. #"<<n+1<<" of sequence: ";
   cin>>x;
   while (x!=0)
   {
      n++;
      s+=x;
      cout<<"Enter elem. #"<<n+1<<" of sequence: ";
      cin>>x;
   }
   if(n)
   {
      double f=(double)s/n;
      cout<<"Average="<<f<<endl;
   }
   else
      cout<<"Sequence is empty!\n";
   return 0;
}
0
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.10.2011, 19:07 7
Цитата Сообщение от Thinker Посмотреть сообщение
C++
1
2
3
4
5
6
7
while (x != 0)
{
   n++;
   cout<<"vvedite elem. posled. #"<<n<<" ";
   cin >> x;
   s += x;
}
Да, забыл строчки местами поменять:

C++
1
2
3
4
5
6
7
while (x != 0)
{
   n++;
   s += x;
   cout<<"vvedite elem. posled. #"<<n<<" ";
   cin >> x;
}
0
21.10.2011, 19:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2011, 19:07

Нужна помощь с программой
ПРограмма должна выполнять расчет коэффициентов характеристического полинома...

нужна помощь по л.р. (вопросы)
значит ниже задания, в 3. и 4. нужно найти ошибки а рядом написать правильный...

Нужна помощь с циклами
Помогите, пожалуйста, нету никаких идей. Пользователь вводит число. Показать...


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

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

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