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

Одномерный массив -созд. функции - C++

Восстановить пароль Регистрация
 
jenya5455
1 / 1 / 0
Регистрация: 07.11.2012
Сообщений: 53
15.02.2013, 20:54     Одномерный массив -созд. функции #1
Всем привет, у мня задачка очень простая , суть понел, всё написал ост последний момент. Я созд. функцию , она значит забивает массив float числами, далее находит max и min, а задание значит такое 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
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <math.h>
#include <stdlib.h>
 
using namespace std;
 
const int N=6;
 
int massiv1(float masiv[N], int i,float max,float min){
    
    for (i=0; i<N; i++){
        masiv[i]=(rand()%10)/2.33;            //Заполняем массив
        }
    for (int i=0;i<N;i++){
    masiv[i]=i*pow(sin(i),3);                   // делаем вычисления по заданной формуле
    cout <<"\tMASSIV["<<i<<"]= "<<masiv[i]<<"\n"<<endl;
        }    
      min=masiv[0];                              // Находим max и min
      max=masiv[0];
        for (int i=1;i<N;i++){
         if (min>masiv[i]){
             min=masiv[i];}
         if (max<masiv[i]){
             max=masiv[i];}
        }
     cout<<"min= "<<min<<"\nmax= "<<max<<endl;    
     return 0;
     }
    int main (){               // Основная функция 
        const int N=6;
        float sd[N];
        int i;
        float max,min;
        massiv1(sd, i, max, min);   // Передаём значения
        
        system ("pause");
        return 0;
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2013, 20:54     Одномерный массив -созд. функции
Посмотрите здесь:

Создать одномерный массив, протестировать функции сортировки C++
C++ Разбить на функции работающий одномерный массив
Нужно переделать код под функции (одномерный массив) C++
При попытке вернуть одномерный массив чисел из функции, данные искажаются C++
оформить в виде функции одномерный массив C++
C++ Одномерный динамический массив, передача в функции, добавление и удаление элемента
C++ Одномерный массив, функции
C++ Как ввести и вывести одномерный массив через функции?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sergey_B
163 / 163 / 14
Регистрация: 08.01.2013
Сообщений: 335
15.02.2013, 21:32     Одномерный массив -созд. функции #2
Я чтото не совсем понял, что вы хотите, но вот пример программы где создаются 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
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
#include <iostream>
 
 
using namespace std;
 
 
//ф-ция ввода массива
int *InputArray(int N)
{
    int *arr = new int[N];
    for (int i=0; i<N; i++)
    {
        cout<<"Введите "<<i+1<<" элемент массива: ";
        cin>>arr[i];
    }
    
 
    return arr;
}
//ф-ция вывода массива
void OutputArray(int *arr, int N)
{
    for (int i=0; i<N; i++)
    {
        cout<<arr[i]<<" ";
    }
    cout<<endl;
}
//ф-ция поиска мин. элемента
int MinElem(int *arr, int N)
{
    int min = 0;
 
    for ( int i = 0; i < N; i ++ )
    {
        if ( arr[min] > arr[i] ) min = i;
    }
    return arr[min];
}
int main ()
{
    setlocale( LC_ALL,"Russian" );
    int *InputArray(int N);
    void OutputArray(int *arr, int N);
    int MinElem(int *arr, int N);
 
    int n=0;
    while (n<=0)
    {
        cout<<"Введите размерность массива: ";
        cin>>n;
    }
    cout<<"Заполните первый массив: "<<endl;
    int *arr1 = InputArray(n); //заполнение массива 1
    cout<<"Заполните второй массив: "<<endl;
    int *arr2 = InputArray(n); //заполнение массива 2
    cout<<"Заполните третий массив: "<<endl;
    int *arr3 = InputArray(n); //заполнение массива 3
    cout<<"Заполните четвертый массив: "<<endl;
    int *arr4 = InputArray(n); //заполнение массива 4
     
    //вывод 1 массива
    cout<<"Первый массив: "<<endl;
    OutputArray(arr1, n);
     //вывод 2 массива
    cout<<"Второй массив: "<<endl;
    OutputArray(arr2, n);
     //вывод 3 массива
    cout<<"Третий массив: "<<endl;
    OutputArray(arr3, n);
     //вывод 4 массива
    cout<<"Четвертый массив: "<<endl;
    OutputArray(arr4, n);
    int *resArr = new int[4];
    resArr[0] = MinElem(arr1, n);
    resArr[1] = MinElem(arr2, n);
    resArr[2] = MinElem(arr3, n);
    resArr[3] = MinElem(arr4, n);
    cout<<"Массив из минимальных элементов: "<<endl;
    OutputArray(resArr, 4);
 
 system ("pause");
 delete[] arr1;
 delete[] arr2;
 delete[] arr3;
 delete[] arr4;
 delete[] resArr;
 return 0;
}
что касается вашего кода, я его не собирал, но чтобы искать только мин. значения в массивах, нужно просто убрать строчку:
C++
1
2
 if (max<masiv[i]){
             max=masiv[i];}
Yandex
Объявления
15.02.2013, 21:32     Одномерный массив -созд. функции
Ответ Создать тему
Опции темы

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