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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2011, 23:37   #1
PROkaZZZniK
Форумчанин
 
Регистрация: 21.10.2011
Сообщений: 121
Вопрос одномерный массив. Произведение положительных элементов массива

Добрый вечер. Прошу вашей помощи с заданием.
Заранее благодарен, нужно помочь доделать.
Задание :
В одномерном массиве,состоящем из n вещественных элементов вычислить:
1. Произведение положительных элементов массива;
2.Сумму элементов массива, расположенных до минимального элемента.
Упорядочить по возрастанию отдельно элементы, стоящие на четных местах, и элементы, стоящие на нечетных местах. (n вводится с клавиатуры)

1 и 2 задание я сделал, не как не могу разобраться с 3 помогите пожалуйста.

вот мой код для 1 и 2 задания
Код:
static void Main(string[] args)
        {
            Double[] aMassiv;
            Console.WriteLine("Введите количество элементов n=");
            int n = Convert.ToInt32(Console.ReadLine());
            aMassiv = new Double[n];
            Random rnd = new Random();
            
            for (int i = 0; i < aMassiv.Length; i++)
                aMassiv[i] = ((rnd.Next(100)>50)?-1:1)*rnd.NextDouble()*100;

            Double p1 = 1;//1
            foreach (Double i in aMassiv)
                if (i > 0) p1 *= i;
            
            Console.WriteLine("Произведение положительных элементов массива = " + p1);

            Double min = aMassiv.Min(); //находим мин элемент
            Double p2 = 0;//2
            foreach (Double i in aMassiv)

                if (i != min) p2 += i;
                else break;
            Console.WriteLine("Сумма элементов массива, расположенных до минимального элемента = " + p2);
            foreach (var i in aMassiv)
            {
                Console.Write(string.Format("{0:f3}\t\t", i )); 
            }

            Console.ReadKey();
        }
PROkaZZZniK вне форума Ответить с цитированием
Старый 10.12.2011, 00:34   #2
viron
Форумчанин
 
Аватар для viron
 
Регистрация: 02.12.2011
Сообщений: 110
По умолчанию

Код:
#include "stdafx.h"
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	cout << "Enter size of array: ";
	int ArrSize;
	cin >> ArrSize;

	double *arr = new double[ArrSize];
	int i;

	double multPlus = 1.0;	// произведение положительных элементов

							// заполняем массив
	for (i=0; i<ArrSize; i++)
	{
		cout << "arr[" << i << "] = ";
		cin >> arr[i];
		
		if (arr[i] > 0)
			multPlus *= arr[i];
	}

	double min = arr[0];	// минимальный элемент массива
	int minCol;

	for (i=1; i<ArrSize; i++)
		if (arr[i] < min)
		{
			min = arr[i];
			minCol = i;
		}

	double summ = 0.0;		// сумма элементов массива до минимального

	for (i=0; i<minCol; i++)
		summ += arr[i];


	bool t = true;
	double temp;

	// сортировка на нечетных местах
	while (t)
	{
		t = false;
		for (i=1; i<ArrSize-2; i += 2)
			if (arr[i] > arr[i+2])
			{
				temp = arr[i];
				arr[i] = arr[i+2];
				arr[i+2] = temp;

				t = true;
			}
	}

	// сортировка на четных местах
	t = true;
	while (t)
	{
		t = false;
		for (i=0; i<ArrSize-2; i += 2)
			if (arr[i] > arr[i+2])
			{
				temp = arr[i];
				arr[i] = arr[i+2];
				arr[i+2] = temp;

				t = true;
			}
	}

	for (i=0; i<ArrSize; i++)
		cout << arr[i] << "  ";




	delete [] arr;

	cin.get();
	cin.get();
	return 0;
}
viron вне форума Ответить с цитированием
Старый 10.12.2011, 01:02   #3
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

с++ detected, но суть я думаю ясна.
rUs_LAN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
(С/С++) Сформировать новый массив из положительных нечетных элементов заданного массива Р(20) Chak1483 Помощь студентам 2 02.12.2011 12:05
(С/С++) Сформировать новый массив из положительных нечетных элементов заданного массива Р(20) Chak1483 Общие вопросы C/C++ 0 01.12.2011 22:05
Ргр.Одномерный массив.Произведение,среднее арифметическое элементов. d-ranged Паскаль, Turbo Pascal, PascalABC.NET 0 16.11.2011 15:16
Одномерный массив. Вывод номеров отрицательных элементов массива. RomashkaGT Помощь студентам 3 25.02.2011 08:44
C++ Массив 4х веществ элементов произведение положительных чисел anr Помощь студентам 1 14.01.2009 18:43