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

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

Войти
Регистрация
Восстановить пароль
 
_kod_
4 / 4 / 0
Регистрация: 24.10.2011
Сообщений: 84
#1

Создание функций для работы с массивами - C++

22.04.2012, 13:37. Просмотров 379. Ответов 1
Метки нет (Все метки)

Ситуация такая: Надо написать программу, которая создаст(первая функция), покажет(вторая функция) и вычислит среднее значение элементов... Проблема, в том, что надо сделать возможность досрочного завершения ввода... Я его сделал, но при расчете среднего возникает ошибка... В общем, смотрите код:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
//---------------------------------------------------------------------------
#include <iostream.h>
#include <string.h>
#include <vcl.h>
#pragma hdrstop
const int MAX = 10;
 
//---------------------------------------------------------------------------
int * vvod(void);
int show(const int *);
double srednee(int *, int);
#pragma argsused
int main(int argc, char* argv[])
{
 int *pi = vvod();
 int show( pi);
 cout<<endl;
 double sr = srednee(pi, times );
 cout<<"Srednee value all games is: ";
 cout<<sr<<endl;
 system("pause");
        return 0;
}
 
int * vvod()
 {
  int *p_arr = new int[MAX];
  cout<<"Enter value of game (q for exit): "<<endl;
   for( int i = 0;i<MAX;i++)
    {
     cin>>p_arr[i];
     if (cin.fail() == true )
      {
       break;
      }
 
    }
   cin.clear();
   return p_arr;
 }
  int show(const int *pi)
   {
    int i = 0;
 
    for( i =0;i<sizeof pi+1;i++)//Понял, что sizeof = 4 и слил эту затею :))
     cout<<pi[i]<<" ";
    return i;
   }
 
double srednee(int *pi, int times)
 {
  double sum;
    for(int i =0;i<times;i++)
     {
      sum+=pi[i];
     }
   return sum/times;
 }
//---------------------------------------------------------------------------
Надо бы узнать размер массива...Причем делать это динамически...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.04.2012, 13:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создание функций для работы с массивами (C++):

Использование функций для работы с одномерными и двухмерными массивами - C++
Привет всем!!!Помогите решить задачу=) Дано целое число N (&gt; 1), а также первый член A и знаменатель Q геометрической прогрессии....

Использование функций для работы с одномерными и двухмерными массивами - C++
Всем привет=) Помогите с решением! Плиз, очень надо! Условие: Дана матрица размера M × N. Поменять местами столбцы, содержащие...

Создание шаблонной функции для работы с массивами разных типов данных - C++
Здравствуйте. Столкнулся со следующей проблемой: не могу написать шаблонную функцию подсчета суммы элементов в массиве между первым и...

Функции для работы с массивами - C++
Драсьте, помогите плиз сделать лабу по C++ :) Необходимо написать функции для работы с одномерными массивами: 1) Отведение памяти под...

Создать класс для работы с массивами - C++
:resent: В с++ еще только плаваю и застряла на класах. Помогите плиз с решением, если не затруднит . Буду очень благодарна ! Для...

Есть ли готовая функция для работы с массивами? - C++
Подскажите, что за функция в cpp есть, для форматирования массивов? Вот в павне можно было сделать так: char str; format(str, 256,...

1
gray_fox
What a waste!
1522 / 1227 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
22.04.2012, 16:41 #2
Надо бы узнать размер массива...Причем делать это динамически...
Размер массива - столько, сколько выделили с помощью new[] (MAX). И где delete[]? делаете new[] - делайте delete[], или не работайте с дин. памятью. Аналогично new/delete.
C++
1
double sr = srednee(pi, times );
Непонятно, что за переменную 'times' вы передаёте в фунцию, ведь она ранее не объявлена.
C++
1
2
3
double srednee(int *pi, int times)
{
double sum;
В 'sum' будет мусор, т.к. не инициализировали, а потом ещё что-то к нему прибавляете.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.04.2012, 16:41
Привет! Вот еще темы с ответами:

Создать Библиотеку для работы с массивами целых чисел - C++
Создать библиотеку для работы с массивами целых чисел.. В библиотеку включить 1)метод поиска максимального элемента массива., 2)метод...

Выбор IDE C++ для работы/обработки с текстовыми массивами данных - C++
Добрый день. Нужна ваша консультация и ценные указания. Имеется программа написана на delphi XE7. Программа работает с текстовыми...

Какую библиотеку нужно подключить для работы с динамическими массивами - C++
Подскажите, пожалуйста, какую библиотеку нужно подключить, чтобы это заработало: cli::array&lt;array&lt;int&gt;^&gt;^ Str = gcnew...

Реализовать класс для работы с одномерными массивами указателей строк - C++
всем привет. помогите пожалуйста не могу написать прогу по заданию. реализовать класс для работы с одномерными массивами указателей...


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

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

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