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

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

Войти
Регистрация
Восстановить пароль
 
law1993
0 / 0 / 0
Регистрация: 28.12.2012
Сообщений: 28
#1

Массив: номер минимального и максимального по модулю элемента массива - C++

10.06.2013, 19:22. Просмотров 710. Ответов 3
Метки нет (Все метки)

В одномерном массиве состоящем из n вещественных элементов вычислить:1) номер минимального и максимального по модулю ялемента массива 2) сумму элементов массива, расположенных после первого положительного элемента . Сжать массив,удалив из него ,меньших некоторого заданного числа a.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2013, 19:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив: номер минимального и максимального по модулю элемента массива (C++):

Найти номер минимального по модулю элемента массива и сумму модулей после первого отрицательного элемента - C++
1.В одномерном массиве, состоящем из n вещественных элементов, вычислить: а)номер минимального по модулю элемента массива; б)сумму...

Найти номер минимального по модулю элемента массива - C++
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) номер минимального по модулю элемента массива; 2) сумму...

Вычислить номер минимального по модулю элемента массива - C++
Привет!Кто то может помочь с программой( срочно надо plz)!Программа на одномерный массивы на Си но надо ещё добавить ввод с файла! В...

Найдите номер минимального по модулю элемента массива - C++
В одномерном массиве состоящем из n вещественных элементов (размерность массива задается пользователем), найдите номер минимального по...

Вычислить номер максимального по модулю элемента массива - C++
с преобразованием проблемы, не могу ввести вещественные числа В одномерном массиве, состоящем из n вещественных элементов, вычислить: ...

Вычислить номер максимального по модулю элемента массива - C++
В одномерном массиве, состоящем из n вещественных элементов, вычислить: - номер максимального по модулю элемента массива; - сумму...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Doctor_
234 / 234 / 71
Регистрация: 03.02.2011
Сообщений: 1,431
10.06.2013, 20:20 #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
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#define N 15
 
using namespace std;
 
void min_and_max(int vec[], const int size);
void del(int a, int vec[], const int size);
 
int main() {
    srand(time(NULL));
    int vec[N], a;
    cout << "Generated array: " << endl;
    for(int i=0; i<N; i++) {
            vec[i] = 5 - rand()%10;
            cout << vec[i] << "  ";
    }
    min_and_max(vec,N);
    cout << "Input a: ";
    cin >> a;
    del(a,vec,N);
    getche();
}
 
void min_and_max(int vec[], const int size) {
    int max = vec[0], min = vec[0];
    for(int i=0; i<size; i++) {
            if(vec[i] > max) max = vec[i];
            if(vec[i] < min) min = vec[i];
    }
    cout << endl << "Min: " << min << ", max: " << max << endl;   
}
 
void del(int a, int vec[], const int size) {
     cout << "Processed array: " << endl;
     for(int i=0; i<size; i++) {
             if(vec[i] > a) printf("%3d",vec[i]);
     }
}
1
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 831
10.06.2013, 20:29 #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
#include <iostream>
#include <vector>
#include <algorithm>
#include <iomanip>
#include <random>
#include <chrono>
#include <iterator>
#include <cmath>
 
using namespace std;
 
int main()
{
    default_random_engine gen(chrono::system_clock::now().time_since_epoch().count());
    uniform_real_distribution<double> distribution(-99, 99);
    const int vector_size = 10;
    vector<double> vec(vector_size);
    generate_n( begin(vec), vector_size, [&]{ return distribution(gen); } );
 
    cout << fixed << setprecision(1);
    copy( begin(vec), end(vec), ostream_iterator<double>(cout, ", ") );
 
    auto absComp = [](double a, double b){ return abs(a) < abs(b); };
    auto max = max_element( begin(vec), end(vec), absComp );
    cout << "\n(by absolute) max elements is " << *max << " at pos " << distance( begin(vec), max );
 
    auto min = min_element( begin(vec), end(vec), absComp );
    cout << "\n(by absolute) min elements is " << *min << " at pos " << distance( begin(vec), min );
 
    auto after_first_positive = begin(vec);
    while (*after_first_positive++ < 0.0 && after_first_positive != end(vec));
    double sum = accumulate( after_first_positive, end(vec), 0.0 );
    cout << "\nsum of elements after the first positive element is " << sum;
 
    const double a = 10.0;
    cout << "\nerasing elements less than " << a << endl;
    vec.erase(remove_if( begin(vec), end(vec), bind2nd( less<double>(), a ) ), end(vec));
 
    copy( begin(vec), end(vec), ostream_iterator<double>(cout, ", ") );
    return 0;
}
http://ideone.com/ocbULX
0
Sid1057
5 / 5 / 2
Регистрация: 22.02.2013
Сообщений: 174
10.06.2013, 20:41 #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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
int n,r;
cout<<"size: ";
cin>>n;
cout<<"min a: ";
cin>>r;
int a[n];
cout<<"vvedite chisla"<<endl;
for(int i=0;i<n;i++){
        cin>>a[i];}
int mini=0,maxi=0,sum=0,f=0;
 
for(int i=0; i<n; i++){
        
if(a[i]>0){f=1;}
if(a[i]<0){a[i]*=-1;}
if(a[i]>a[maxi]){maxi=i;}
if(a[i]<a[mini]){mini=i;}
if(f){sum+=a[i];}
}
for(int i=0;i<n;i++){
if(a[i]<r){
           for(int j=i; j<n-1;j++){a[j]=a[j+1];}
           n--;
           i--;}
}
cout<<"sum :"<<sum<<endl;
cout<<"min num: "<<mini+1<<". max num: "<<maxi+1<<endl<<"new array:"<<endl;
for(int i=0; i<n;i++){
        cout<<a[i]<<endl;}
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
P.S. Я сам новичок, извини если не очень оптимизированный код, проверял на dev c++, все тесты прошел.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2013, 20:41
Привет! Вот еще темы с ответами:

Вычислить номер максимального по модулю элемента массива - C++
Помогите пожалуйста решить! В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1)номер максимального по модулю...

Вычислить номер максимального по модулю элемента массива - C++
В одномерном массиве состоящей из n действительных элементов, вычислить: 1) Номер максимального по модулю элемента массива; 2) Сумму...

Найти номер максимального по модулю элемента массива - C++
Найти номер максимального по модулю элемента массива;

Вычислить номер максимального по модулю элемента массива - C++
Задача: Ввести и обработать два одномерных массива, содержащие соответственно n и m целых компонентов. Вычислить: 1) номер...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
10.06.2013, 20:41
Ответ Создать тему
Опции темы

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