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

Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов - C++

Восстановить пароль Регистрация
 
Vadim_0107
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 30
12.02.2014, 18:41     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов #1
Нужно найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов.
Но без использования операции индексации!!
Вот написал только вывод массива, а как найти этот участок без индексации не знаю.

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
#include <iostream>
 
using namespace std;
 
#include <stdio.h>
#include <ctime>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#include <string.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <malloc.h>
int main(void)
{
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    int size;
    int *Ar;
    int *Cr, *Ir;
    int av, nn;
    srand(time(NULL));
    size=rand()%151+50;
    cout<<"size="<<size<<endl;
    Ar=(int  *)malloc(size*sizeof(int));
    cout<<"початковий масив"<<endl;
    for (Cr=Ar; Cr<Ar+size; Cr++)
    {
        *Cr=rand() %100;
        cout<<*Cr<<"\t";
    }
    putchar('\n');
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2014, 18:41     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов
Посмотрите здесь:

Найти непрерывный участок C++
Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов C++
C++ Действие с матрицей (Найти наименьшее из значений элементов столбца, который имеет наибольшую сумму модулей элементов)
C++ Определить номер подматрицы, среднее арифметическое элементов которой имеет наибольшее значение.
C++ Найти непрерывный участок из 10 элементов, сумма которых максимальна
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Looser13
 Аватар для Looser13
0 / 0 / 1
Регистрация: 09.01.2014
Сообщений: 10
12.02.2014, 19:35     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов #2
#include <stdio.h>
#include <ctime>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#include <string.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <malloc.h>

Зачем так много? stdio.h - не из СИ? iostream не хватает?
Vadim_0107
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 30
12.02.2014, 23:23  [ТС]     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов #3
Цитата Сообщение от Looser13 Посмотреть сообщение
#include <stdio.h>
#include <ctime>
#include <stdlib.h>
#include <malloc.h>
#include <conio.h>
#include <string.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <malloc.h>

Зачем так много? stdio.h - не из СИ? iostream не хватает?
Просто я скопировал библиотеки из примера и еще не удалил лишние.
Vadim_0107
1 / 1 / 0
Регистрация: 04.01.2014
Сообщений: 30
14.02.2014, 18:16  [ТС]     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов #4
Неужели никто не может помочь?
jurok_85
226 / 209 / 70
Регистрация: 21.02.2013
Сообщений: 494
14.02.2014, 20:18     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
ну во попотел немного, вроде работает:
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
# include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main ()
{
    int size;
    int *Ar;
 
 
    srand(time(NULL));
    size=rand()%20+10;
    cout<<"size="<<size<<endl;
    Ar=(int  *)malloc(size*sizeof(int));
    cout<<"початковий масив"<<endl;
    for (int i = 0; i != size; i++)
    {
        *(Ar + i)=rand() %100;
        cout<<*(Ar+i)<<"\t";
    }
    cout << endl;
    double max_average = 0,average;
    int sum = 0, m;
    for(int j = 0; j != size;j++)
    {
         m = j;
         while(m != j+ 10)
         {
             sum += *(Ar + m);
             m++;
         }
        average = (double)sum / 10;
        cout << average << endl;
        if(average > max_average)
        max_average = average;
 
 
        sum = 0;
        if(j+10 >= size) break;
 
    }
    cout << endl<< max_average << endl;
    for(int j = 0; j != size; j++)
    {
 
         m = j;
         while(m != j+ 10)
         {
             sum += *(Ar + m);
             m++;
         }
        average = (double)sum / 10;
 
 
        if(max_average == average)
            {
                m = j;
                while(m != j+10){
                cout << *(Ar + m) << "\t";
                m++;
                }
            }
 
        sum = 0;
        if(j+10 >= size) break;
    }
return 0;
}
Yandex
Объявления
14.02.2014, 20:18     Найти непрерывный участок из 10 элементов, который имеет наибольшее среднее значение элементов
Ответ Создать тему
Опции темы

Текущее время: 03:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru