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

В одномерном массиве, состоящем из n вещественных элементов, вычислить - C++

Восстановить пароль Регистрация
 
Любитель классики
0 / 0 / 0
Регистрация: 26.04.2013
Сообщений: 6
27.06.2013, 15:44     В одномерном массиве, состоящем из n вещественных элементов, вычислить #1
В одномерном массиве, состоящем из n вещественных элементов, вычислить:

1. Минимальный элемент массива;
2. Сумму элементов массива, расположенных между первым и последним положительными элементами;
3. Преобразовать массив таким образом, что бы сначала располагались все элементы, равные нулю, а потом - все остальные.

Определите позиции положительного элемента, оформить через функцию.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2013, 15:44     В одномерном массиве, состоящем из n вещественных элементов, вычислить
Посмотрите здесь:

В одномерном массиве, состоящем из n вещественных элементов, вычислить... C++
C++ В одномерном массиве, состоящем из n вещественных элементов, вычислить:
C++ [C++]в одномерном массиве, состоящем из 10 вещественных элементов, вычислить:
C++ В одномерном массиве, состоящем из n вещественных элементов, вычислить:
В одномерном массиве, состоящем из n вещественных элементов, вычислить: C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Khelleos
37 / 37 / 7
Регистрация: 13.05.2010
Сообщений: 283
Записей в блоге: 1
27.06.2013, 16:24     В одномерном массиве, состоящем из n вещественных элементов, вычислить #2
Цитата Сообщение от Fuckarias Посмотреть сообщение
Определите позиции положительного элемента, оформить через функцию.
Нужно определить позицию каждого положительного элемента или нужно передать ф-ии число и найти первое вхождение, вернув позицию?
Любитель классики
0 / 0 / 0
Регистрация: 26.04.2013
Сообщений: 6
27.06.2013, 16:31  [ТС]     В одномерном массиве, состоящем из n вещественных элементов, вычислить #3
Нужно определить позицию каждого положительного элемента
Khelleos
37 / 37 / 7
Регистрация: 13.05.2010
Сообщений: 283
Записей в блоге: 1
27.06.2013, 16:46     В одномерном массиве, состоящем из n вещественных элементов, вычислить #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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#include <iostream>
#include <ctime>
 
using namespace std;
 
double get_min(double *A, int size)
{
    double min = A[0];
    for(int i = 1; i < size; i++)
        if (min > A[i]) min = A[i];
    return min;
}
 
double get_sum_between_first_and_last_number(double *A, int size)
{
    double sum = 0;
    int firstIndex = 0, lastIndex = 0;
 
    for(int i = 0; i < size; i++)
        if (A[i] > 0) 
        {
            firstIndex = i;
            break;
        }
    
    for(int i = size - 1; i >= 0; i--)
        if (A[i] > 0) 
        {
            lastIndex = i;
            break;
        }
 
    for(int i = firstIndex; i <= lastIndex; i++)
        sum += A[i];
 
    return sum;
}
 
double *zero_to_begin(double *A, int size)
{
    int j = 0;
    double *temp = new double [size];
    for(int i = 0; i < size; i++)
        if (A[i] == 0)
        {
            temp[j] = 0;
            j++;
        }
    for(int i = 0; i < size; i++)
        if (A[i] != 0)
        {
            temp[j] = A[i];
            j++;
        }
    return temp;
}
 
int *get_posititon_plus_elements(double *A, int &size)
{
    int count = 0;
    for(int i = 0; i < size; i++)
        if (A[i] > 0)
            count++;
 
    int *B = new int [count];
    int j = 0;
    for(int i = 0; i < size; i++)
        if (A[i] > 0)
            B[j++] = i;
    
    size = count;
    
    return B;
}
 
int main()
{
    const int size = 10;
    double *A = new double [size];
 
    for(int i = 0; i < size; i++)
    {
        A[i] = rand() % 25  - rand() % 20;
        cout << " " << A[i];
    }
    cout << endl;
 
    cout << get_min(A, size) << endl;
    cout << get_sum_between_first_and_last_number(A, size) << endl;
    A = zero_to_begin(A, size);
    for(int i = 0; i < size; i++)
        cout << " " << A[i];
    cout << endl;
    int sizePos = size;
    int *pos = get_posititon_plus_elements(A, sizePos);
    for(int i = 0; i < sizePos; i++)
        cout << " " << pos[i];
    cout << endl;
 
    delete [] A;
    delete [] pos;
    system("pause");
    return 0;
}
Yandex
Объявления
27.06.2013, 16:46     В одномерном массиве, состоящем из n вещественных элементов, вычислить
Ответ Создать тему
Опции темы

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