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

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

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

одномерные массивы.решение есть но нужно пределать через функцию - C++

18.05.2011, 22:51. Просмотров 274. Ответов 0
Метки нет (Все метки)

вот задание
в одномерном массиве,состоящий из n целых элементов,вычислить :
1)минимальный по модулю элемент массива;
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
#include <iostream>
#include <iomanip>
#include <clocale>
 
using namespace std;
 
int main()  {
    setlocale(LC_ALL, "Russian_Russia.1251");
    int n;
    cout << "Введите количество элементов: ";
    cin >> n;
    int *arr = new int[n];
    float middle, temp;
    int *stackl = new int[n], *stackr = new int[n], sp=0;
    int i, j, left, right, imin=0, abssum=0;
    cout << "Введите элементы массива: ";
    for (i = 0; i < n; i++)
    cin >> arr[i];  
    int minmod;//минимальный по модулю элемент
    int numminmod; //номер минимального элемента
    if(arr[0]>0)  {
        minmod = arr[0];
        numminmod = 0;
        }
    else {
        minmod = -arr[0];
        numminmod = 0;
    }
    for(int i=1;i<n;i++)  {
        if(arr[i]<0&&-arr[i]<minmod)  {
            minmod = -arr[i];
            numminmod = i;
        }
        else if(arr[i]>0&&arr[i]<minmod)  {
            minmod=arr[i];
            numminmod = i;
        }
    }
    cout << "Минимум по модулю: " << minmod <<endl;
    
    int summ=0;
    for(int i=0;i<n;i++)  {
        if(arr[i]<0)
            summ += (-arr[i]);
        else
            summ += arr[i];
    }
    cout<< "Сумма по модулю: "<< summ << endl;
 
    sp = 1; stackl[1] = 0; stackr[1] = n-1;
    while (sp > 0)  {
        left = stackl[sp];
        right = stackr[sp];
        sp--;
        while (left < right)  {
            i = left; j = right;
            middle = arr[(left+right) / 2];
            while (i < j)  {
                while (arr[i] < middle) i++;
                while (middle < arr[j]) j--;
                if (i <= j)  {
                    temp = arr[i]; arr[i] = arr[j]; arr[j] = temp;
                    i++; j--;
                }
            }
            if (i < right)  {
                sp++;
                    stackl[sp] = i;
                    stackr[sp] = right;
            }
            right = j;
        }
    }
    cout << "Расположение элементов в массиве: ";
    for( i = 0; i < n; i++)
        cout << arr[i] << "  ";
    cout <<endl;
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2011, 22:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос одномерные массивы.решение есть но нужно пределать через функцию (C++):

Одномерные Массивы. Решение уже есть. Переделать через функции. - C++
Помогите решить задачу по одномерному массиву ПО ФУНКЦИЯМ. Задачи уже решены, надо их переделать по функциям. 1. Найти номер...

передача массивов в функцию (одномерные массивы) - C++
помогите пожалуйста. нахожу похожие коды, но все равно не получаеться... дан одномерный массив, состоящий из N вещественных элементов. ...

Передача массивов в функцию (одномерные массивы) - C++
Добрый вечер вы не моглибы помочь, написать програму, как для чайника, для меня. задание Передача массивов в функцию (одномерные...

Передача массивов в функцию (одномерные массивы) - C++
Кто-нибудь может сделать? Заранее блогодарю. Передача массивов в функцию (одномерные массивы) Определить функции, выполняющие действия...

Передача массивов в функцию (одномерные массивы) - C++
Определить функции, выполняющие действия 17. Дан одномерный массив, состоящий из N целочисленных элементов. 17.1. Найти максимальный...

Передача массивов в функцию (одномерные массивы) - C++
Дан одномерный массив, состоящий из N целочисленных элементов. 1.Найти максимальный элемент. 2.Вычислить среднеарифметическое нечетных...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2011, 22:51
Привет! Вот еще темы с ответами:

Передача массивов в функцию (одномерные массивы) - C++
1 Дан одномерный массив, состоящий из N вещественных элементов. -Найти минимальный элемент. -Вычислить произведение не нулевых...

Одномерные массивы. Найти есть ли в нем арифметическая прогрессия состоящая из трех элементов - C++
Здравствуйте! Помогите решить задачку: Дан одномерный массив. Найти есть ли в нем арифметическая прогрессия состоящая из трех элементов....

Одномерный массив. Решение через функцию - C++
Дали задание из одномерного массива, найти количество элементов больше C и произведение элементов массива, расположенных после...

Массивы: Нужно получить все элементе большого массива, что не есть в меньшому. - C++
Есть два целочисленных массива, состоящих из m and n элементов. Нужно получить все элементе большого массива, что не есть в меньшому. ...


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

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

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