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

Одномерный массив - C++

Восстановить пароль Регистрация
 
maksim@
0 / 0 / 0
Регистрация: 14.05.2012
Сообщений: 3
15.05.2012, 20:35     Одномерный массив #1
(помогите пожалуйста решить задачу)
в одномерном массиве состоящим из вещественных элементов,
вычислить
1)модуль максимального по модулю элемента массива
2)сумму элементов массива, расположенного после первого положительного элемента
примечание--преобразовать таким образом чтобы с начало располагались все элементы, целая часть которых лежит в интервале [a b] ,а потом все остальные
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2012, 20:35     Одномерный массив
Посмотрите здесь:

C++ Дан одномерный массив, состоящий из N вещественных элементов. 4.1. Заполнить массив случайными числами. 4.2. Найти минимальный положительный элемент.
Дан двумерный массив размерностью Н. сформировать одномерный массив из элементов заданного массива расположенных над главной диагональю. C++
Одномерный массив. Найти наименьшие среди элементов первого массива, которые не входят во второй массив. C++
Массив: Построить из динамического одномерный массив,каждый элемент, которого равен сумме элементов одной строки исходной матрицы. C++
C++ Двумерный массив. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца
Сформировать одномерный массив, удалить первый элемент с заданным значением, сдвинуть массив циклически C++
Как сложить массив чтоб получился одномерный массив? C++
C++ Дан двухмерный целочисленный массив . Составить одномерный массив В номеров строк этого массива

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,405
16.05.2012, 00:00     Одномерный массив #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
#include <iostream>
#include <iomanip>
#include <algorithm>
#include <iterator>
#include <random>
#include <cmath>
 
int main()
{
    const std::size_t N = 15;
    double arr[N];
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_real_distribution<> urd(-10., 10.);
    std::generate(arr, arr + N, [&urd, &gen] {return urd(gen); });
    std::copy (arr, arr + N, std::ostream_iterator<double>
        (std::cout<< std::fixed<< std::setprecision(2), " "));
    std::cout<< std::endl<< *std::max_element(arr, arr + N, 
        [](const double value1, const double value2) {return fabs(value1) < fabs(value2); } );
    std::cout<< std::endl<<std::accumulate(std::find_if (arr, arr + N, [](const double value) 
        {return value >= 0; } ) + 1, arr + N, 0.);
    return 0; 
}
maksim@
0 / 0 / 0
Регистрация: 14.05.2012
Сообщений: 3
18.05.2012, 13: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
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
#include <iostream>
#include <conio.h>
#include <clocale>
using namespace std;
bool input (double *a,int n);
void onput (double *a,int n);
//bool elotr (double *a,int n);
double prpol (double *a,int n);
double summa (double *a,int n);
void sortchet (double *a,int n);
void sortnechet (double *a,int n);
int main()
{ 
    setlocale(LC_CTYPE,"Russian");
    cout <<"Набор алгоритмов обработки\n ";
    cout <<"Ввести размер массива ";
    int n;
    cin >>n;
    if (cin.fail()) {cout<<"ошибка ввода!!!";goto EndOfProgram;}
    if (n<1) {cout<<"ошибка ввода!!!";goto EndOfProgram;}
    cout <<"Ввести эл массива ";
    double *a=new double [n];
    if (!input(a,n)) {cout<<"ошибка ввода!!!";goto Enddel;}
    cout <<"Вы ввели массив: ";
    onput (a,n);
    cout <<"\nПроизведение положительных элементов="<<prpol(a,n);
    cout <<"\nСумма всех элементов до минимального="<<summa(a,n);
    cout <<"\nМассив после сортировки нечетных элементов:";
    sortchet(a,n);
    onput (a,n);
    cout <<"\nМассив после сортировки четных элементов:";
    sortnechet(a,n);
    onput (a,n);
    Enddel:
    delete []a;
EndOfProgram:_getch();
        return 0;
}
bool input (double *a,int n)
{ 
    bool vvod=1;
    for (int i=0;i<n && vvod;i++) 
    cin >>a[i];
    if (cin.fail()) vvod=0;
    return vvod;
}
 
void onput (double *a,int n)
{
    for (int i=0;i<n;i++) 
    cout <<a[i]<<" ";
    return ;
}
/*bool elotr (double *a,int n)
{
    bool flag=1;
    for (int i=0;i<n;i++) 
        if (a[i]<
 
}*/
double prpol (double *a,int n)
{
    double p=1;
    for (int i=0;i<n;i++) 
        if (a[i]>0)
            p=p*a[i];
    return p;
}
double summa (double *a,int n)
{
    double s=0;
    int min=0;
    for (int i=1;i<n;i++) 
        if (a[i]<a[min]) min=i;
    for (int i=0;i<min;i++) 
        s+=a[i];
return s;
}
void sortchet(double *a,int n)
{
    
     for ( int i=0;i<n-1;i+=2)
     {
         int nn=i;
         for ( int j=i+2;j<n;j+=2) 
             if (a[j]<a[nn]) nn=j; 
            
                 double x=a[i];
                 a[i]=a[nn];
                 a[nn]=x;
         
     }
     
    return ;
}
void sortnechet(double *a,int n)
{
    
     for ( int i=1;i<n-1;i+=2)
     {
         int nn=i;
         for ( int j=i+2;j<n;j+=2) 
             if (a[j]<a[nn]) nn=j; 
            
                 double x=a[i];
                 a[i]=a[nn];
                 a[nn]=x;
         
     }
     
    return ;
}
podobnay
Yandex
Объявления
18.05.2012, 13:02     Одномерный массив
Ответ Создать тему
Опции темы

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