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

Нужно переделать код под функции (одномерный массив)

20.01.2013, 22:15. Просмотров 482. Ответов 1
Метки нет (Все метки)

«Однoмерные маcсивы», оформить каждый пункт задания в виде функции. Все необходимые данные для функций должны передаваться им в качестве параметров. Использование глобальных переменных в функциях не допускается.
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
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
 
int main()
{
 
 
 
const int N=10;
int i,i_1, i_2;
double s,min,massiv[N]={-4.0, -5.3, 3, 7, 9.8, 1, 1, -2.4, -6, 3};    //Описание массива
 
 
for(i=0;i<N;i++)    //Вывод массива
cout<<"\n massiv["<<i<<"] = "<<massiv[i];  
 
 
min=massiv[0];
 
for(i=0; i<N; i++)
{
 if(massiv[i]<min)
 min=massiv[i];
}
cout<<"\n  Min="<<min<<'\n';
 
for(i=0;i<N;i++)
{
 if(massiv[i]>0)
 {
  i_1=i;break;
 }
}
 
for(i=N-1;i>=0;i--)
{
 if(massiv[i]>0)
 {
  i_2=i;break;
 }
}
cout<<i_1<<" "<<i_2<<endl;
s=0;
for(i=i_1+1;i<i_2;i++)
 {
 s+=massiv[i];
 }
 cout<<"Sum="<<s;
 
_getch();
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.01.2013, 22:15
Ответы с готовыми решениями:

Переделать одномерный массив под функцию
помогите переделать под функцию, пожалуйста. #include &lt;iostream&gt; #include...

Фрагмент кода обработки двумерного массива переделать под одномерный массив
Здравствуйте форумчане хочу разобраться как написать такую же прог-му только...

Нужно переделать под 2х мерный массив
задача следующая, используя функции сортировки масcива, отсортировать строки...

Переделать код под динамический массив
Необходимо переделать данный код, под динамический массив используя функции...

Как переделать код?. Нужно сделать через функции пользователя
#include &lt;string.h&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt; using...

1
Sergey_B
163 / 163 / 57
Регистрация: 08.01.2013
Сообщений: 335
21.01.2013, 10:49 2
Посмотрите:
Кликните здесь для просмотра всего текста
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#include <iostream>
#include <locale.h>
 
using namespace std;
 
void main()
{
    setlocale(LC_ALL, "Russian");
 
    double* InputMas(int n); //ф-ция ввода массива 
    void ShowMas(int n, double *mas); //ф-ция вывода массива на дисплей
    double MinValue(int n, double *mas); //ф-ция поиска минимального значения в массиве
    double MaxValue(int n, double *mas); //ф-ция поиска максимального значения в массиве
    int IndexOfTheFirstPositiv(int n, double *mas); //ф-ция возвращающая индекс первого положительного элемента
    int IndexOfTheLastPositiv(int n, double *mas); //ф-ция возвращающая индекс последнего положительного элемента
    double Sum(int n, double *mas); //ф-ция вычисляющая сумму эл-ов массива
 
    int n=0; //количество элементов массива
    while (n<=0)
    {
        cout<<"Введите размерность маcсива:\n";
        cin>>n;
    }
    double* arr = InputMas(n); //исходный массив
    
    cout<<"\nИсходный маcсив: ";
    ShowMas(n, arr);
 
    double min = MinValue(n, arr);
    cout<<"\nМинимальное значение в маcсиве: "<<min;
 
    double max = MaxValue(n, arr);
    cout<<"\nМаксимальное значение в маcсиве: "<<max;
 
    int first = IndexOfTheFirstPositiv(n, arr);
    cout<<"\nИндекс первого положительного элемента в массиве: "<<first;
 
    int last = IndexOfTheLastPositiv(n, arr);
    cout<<"\nИндекс последнего положительного элемента в массиве: "<<last;
 
    double sum = Sum(n, arr);
    cout<<"\nСумма элементов массвива:"<<sum<<endl;
 
   
            
}
//ф-ция ввода массива 
 double* InputMas(int n)
 {
     double *mas = new double[n];
     for (int i=0; i<n; i++)
     {
         cout<<"\nВведите "<<i<<" элемент: ";
         cin>>mas[i];
     }
 
     return mas;
 }
 //ф-ция вывода массива на дисплей
  void ShowMas(int n, double *mas)
    {
        for(int i=0;i<n;i++)
        {           
            cout<<mas[i]<<" ";
        }
        cout<<endl;
    }
  //ф-ция поиска минимального значения в массиве
  double MinValue(int n, double *mas)
  {
      double min = mas[0];
      for (int i=0; i<n;i++)
      {
          if (mas[i]<min)
          {
              min=mas[i];
          }
      }
      return min;
  }
 
  //ф-ция поиска максимального значения в массиве
    double MaxValue(int n, double *mas)
  {
      double max = mas[0];
      for (int i=0; i<n;i++)
      {
          if (mas[i]>max)
          {
              max=mas[i];
          }
      }
      return max;
  }
 
    //ф-ция возвращающая индекс первого положительного элемента
    int IndexOfTheFirstPositiv(int n, double *mas)
    {
        int index=-1;
        for (int i=0; i<n; i++)
        {
            if (mas[i]>0)
            {
                index=i;
                break;
            }
            
        }
 
        return index;
    }
 
 //ф-ция возвращающая индекс последнего положительного элемента
    int IndexOfTheLastPositiv(int n, double *mas)
    {
        int index=-1;
        for (int i=n-1; i>=0; i--)
        {
            if (mas[i]>0)
            {
                index=i;
                break;
            }
            
        }
        return index;
    }
    //ф-ция вычисляющая сумму эл-ов массива
    double Sum(int n, double *mas)
    {
        double result = 0.0;
        for (int i=0; i<n; i++)
        {
            result+=mas[i];
        }
        return result;
    }
2
Миниатюры
Нужно переделать код под функции (одномерный массив)  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2013, 10:49

Код написан в Dev C. Не работает в Visual. Как нужно переделать код?
Здравствуйте. Столкнулась с такой проблемой: код был написан в Dev C, но в...

Под С++ нужно переделать
while pos(' ',s)&gt;0 do{пока есть пробелы} begin s1:=copy(s,1,pos('...

Переделать код под c++
Есть код Pascal, нужно его переделать под c++. Но поскольку в этом не особо...


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

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

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