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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2012, 06:36   #1
inmanika
Пользователь
 
Регистрация: 17.11.2011
Сообщений: 18
По умолчанию Одномерный динамический массив

С++ Ввести одномерный динамический массив из 10 чисел. Найти среднее значение элементов массива, расположенных до максимального по значению элемента массива, и найти произведение элементов расположенных до минимального по значению элемента массива.

Все, что смогла придумать..
Код:
#include "stdafx.h"
#include <iostream>
using namespace std; 

int main()
{
 int a[10], i, n, max, imax, min, imin, b, c, d;
 double mid;
 d=[]
    cout << "Vvedite n:";
 cin >> n;
 max = min = a[0];
    imax = imin = 0;
    for (i=0; i < n; i++) 
    cout << "Vvedite a[i]";
 cin >> a[i];
 if (a[i] > max)
    
 {
 max=a[i];
 imax=i;
 }
 cout << "max =" << max << "i ="<< imax << endl;
    
 else if (a[i]<min)

 {
 min=a[i];
        imin=i;
    }
 cout << "min =" << min << "i2 =" << imin  << endl;
 b=a[i]
 c=a[i]
 for (i=0; i<n; i++)
 if (c<max)
 {
 sum+=a[i];
 mid=sum/n;
 }
 cout << "Srednee znachh:" << mid << endl;
 else if (b<min)
 {
    int s = b*a[i];


 }

 cout << "Result:" << s << endl;
 return 0;
}
Подскажите, что нетак? Или все неправильно..?
inmanika вне форума Ответить с цитированием
Старый 18.01.2012, 11:34   #2
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Цитата:
Код:
 d=[]
Это что?
Цитата:
Код:
int a[10]
Это _не_ динамический массив.
Далее. Максимум и минимум ты, по идее, находишь правильно, а вот потом начинается какой-то бред... Все остальное надо выносить за пределы цикла нахождения min и max.
Тебе надо в одном цикле от 0 до imax просуммировать элементы и разделить полученную сумму на imax -- получишь среднее значение элементов массива, расположенных до максимального по значению элемента массива, а во втором -- от 0 до imin перемножить элементы для выполнения второй части задачи.

Итого:
1. Запрашиваешь размер массива, объявляешь _динамический_ массив и заполняешь его.
2. Находишь индексы минимального и максимального значений элементов массива.
3. В цикле до индекса максимального суммируешь элементы и после цикла делишь их на индекс максимального.
4. В цикле до индекса минимального перемножаешь элементы.
5. Выводишь результат.
6. _Освобождаешь выделенную под динамический массив память_.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамический массив, массив указателей alexalisa Паскаль, Turbo Pascal, PascalABC.NET 4 22.04.2011 21:33
Динамический массив - или всё таки не динамический? vedro-compota Общие вопросы C/C++ 30 10.12.2010 23:22
Динамический массив vvv-091 Фриланс 4 01.06.2010 00:31
Одномерный массив. Q basic - Построить новый массив из элементов исходного ,которые больше P. Marishkaa Помощь студентам 2 12.01.2010 16:54
Одномерный динамический массив anybkarnak Общие вопросы C/C++ 5 11.12.2009 20:18