Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2012, 12:27   #1
-=Nexon=-
Новичок
Джуниор
 
Регистрация: 25.03.2012
Сообщений: 3
Вопрос одномерный массив

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

1)произведение положительных элементов массива;
2)сумму элементов массива,расположенных до минимального элемента.

Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах.
-=Nexon=- вне форума Ответить с цитированием
Старый 25.03.2012, 14:35   #2
-=Nexon=-
Новичок
Джуниор
 
Регистрация: 25.03.2012
Сообщений: 3
По умолчанию

есть текст программы,не могу разобраться с сортировкой,посмотрите помогите что не так
-=Nexon=- вне форума Ответить с цитированием
Старый 25.03.2012, 14:36   #3
-=Nexon=-
Новичок
Джуниор
 
Регистрация: 25.03.2012
Сообщений: 3
По умолчанию

вот код:
Код:
#include <iostream>

using namespace std;

void sort(float *m, int n, bool chet);
void main(){
        int n_size;
        cout << "Vvedite kolichestvo elementov: ";
        cin >> n_size;
        float *m = new float [n_size];

        cout << "Vvedite elementi massiva:\r\n";
        for(int i = 0; i < n_size; i++){
                cin >> m[i];
        }

        float min = m[0];
        float div = 1;
        int tmp = 0;
        for(int i = 0; i < n_size; i++){
                if(m[i] > 0) div *= m[i];
                if(m[i] < min){
                        min = m[i];
                        tmp = i;
                }
        }

        float sum = 0;
        for(int i = 0; i < tmp; i++){
                sum += m[i];
        }

        cout << "Proizvedenie: " << div << endl << "Summa: " << sum << endl;

        sort(m, n_size, true); //четные
        sort(m, n_size, false); //нечетные
        cout << "masiv: ";
        for(int i = 0; i < n_size; i++)
                cout << m[i] << " ";



}

void sort(float *m, int n, bool chet){
        float a;
        int i = chet? 1 : 0;

        for(; i < n - 1; i+=2){
                int imin = i;
                for(int j = i; j < n; j+=2)
                        if(m[j] < m[imin]) imin = j;
                a = m[i];
                m[i] = m[imin];
                m[imin] = a;

        }
         cout << (char)cin.get();
 cin.get();

 return ;
}

Последний раз редактировалось ACE Valery; 25.03.2012 в 14:39.
-=Nexon=- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одномерный массив Vitalya_1993 Помощь студентам 0 18.12.2011 15:40
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17
Одномерный массив , двухмерный массив Woxx Паскаль, Turbo Pascal, PascalABC.NET 0 10.09.2010 09:28
Одномерный массив. Q basic - Построить новый массив из элементов исходного ,которые больше P. Marishkaa Помощь студентам 2 12.01.2010 16:54
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40