Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

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

02.09.2012, 21:22. Просмотров 958. Ответов 9
Метки нет (Все метки)

генерировать случайным образом массив из 50 элементов. Найти среднее значение, количество элементов меньше среднего, минимальное значение и индексы минимального значения
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2012, 21:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос генерировать случайным образом массив.Найти среднее значение, количество элементов меньше среднего (C++):

Найти для каждого массива количество элементов, значение которых меньше среднего между минимальным... - C++
• Для выполнения всех расчетов использовать несколько функций, каждая из которых выполняет отдельную задачу:  ввод данных;  печать...

В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов - C++
5. В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов.Задание вроде тоже,но...

В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов - C++
вот задание: В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов. Заранее...

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

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

В массиве b(25), сформированном случайным образом, найти количество элементов, удовлетворяющих условию - C++
В массиве b(25), сформированном случайным образом, найти количество элементов, удовлетворяющих условию l<b<m, где l и m - заданные...

9
Intel~lect
135 / 124 / 2
Регистрация: 03.07.2012
Сообщений: 355
02.09.2012, 21:38 #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
#include <iostream>
#include <windows.h>
#include <ctime>
 
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
    setlocale(0, "");
 
    const int ArrSize = 50;  // размер массива
    int Arr[ArrSize];        // массив
    int sum = 0;             // сумма всех элементов массива
 
    srand(time(NULL));
 
    for (int i=0; i<ArrSize; i++)
    {
        Arr[i] = rand() % 100;
        sum += Arr[i];
    }
 
    cout << "Среднее значение " << sum / ArrSize << endl;
 
    int amount = 0;         // количество элементов, меньших среднего
    for (int i=0; i<ArrSize; i++)
        if (Arr[i] < sum/ArrSize)
            ++amount;
    cout << "Количество элементов, меньших среднего " << amount << endl;
 
 
    int n_min = Arr[0], min_index = 0;  // минимальное значение и его индекс
    for (int i=1; i<ArrSize; i++)
        if (Arr[i] < n_min)
        {
            n_min = Arr[i];
            min_index = i;
        }
    cout << "Минимальное значение " << n_min << endl;
    cout << "Индекс минимального значения " << min_index << endl;
 
 
    system("pause");
    return 0;
}
1
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,290
Записей в блоге: 2
Завершенные тесты: 1
02.09.2012, 22:07 #3
STL
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
#include <iostream>
#include <algorithm>
#include <ctime>
#include <numeric>
#include <functional>
#include <iterator>
 
int rnd ()
{
   return rand() % 100;
} 
 
int main()
{
   srand (time(NULL));  
   float a[50], av;
   std:: generate (a, a+50, rnd);
   std:: copy (a, a+50, std:: ostream_iterator <int> (std::cout, " "));
 
   av = std:: accumulate (a, a+50, 0) / 50;
   std:: cout << std:: endl << std:: count_if (a, a+50, std::bind2nd (std::greater<int>(), av)) << std::endl << *std:: min_element (a, a+50) << std:: endl;
   for (int i=0; i<50; ++i)
       if (a[i] == *std:: min_element(a, a+50))
           std:: cout << i << " ";
   return 0;
}
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
02.09.2012, 22:43 #4
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
#include <iostream>
#include <ctime>
 
int main()
{
    const int Size = 50;
    int Array[Size], Minimal = 0, Summa = 0, Count = 0;
    
    std::cout << "Array: " <<std::endl;
    for(int i = 0; i < Size; i++)
    {
            Array[i] = rand() % 25;
            if(Array[i] < Array[Minimal])
                        Minimal = i;
            Summa += Array[i];
            std::cout << Array[i] << " ";
    }
    std::cout << std::endl;
    for(int i = 0; i < Size; i++)
            if(Array[i] < (Summa / Size))
                        Count++;
    
    std::cout << "Minimal: " << Array[Minimal] << "; Index: " << Minimal+1 << std::endl;    
    std::cout << "Count of elements < Average: " << Count << std::endl;
    std::cout << "Average: " << Summa / Size << std::endl;
    
    system("pause");
    return 0;
}
http://liveworkspace.org/code/934da1995479050115e7bc4debf3398c
1
VerGeSS
1 / 1 / 0
Регистрация: 02.09.2012
Сообщений: 11
03.09.2012, 17:39  [ТС] #5
а как верхний код в Си представить?
0
Invader_Zim
Twilight Parasite
153 / 149 / 2
Регистрация: 21.07.2011
Сообщений: 908
03.09.2012, 17:47 #6
VerGeSS, cout заменить на printf(); cin заменить на scanf();
1
Intel~lect
03.09.2012, 17:49
  #7

Не по теме:

Dani, Мне кажется, что мало смысла в том, что писать функцию, которая состоит из одной строчки кода

0
Петррр
5970 / 3407 / 337
Регистрация: 28.10.2010
Сообщений: 5,926
03.09.2012, 18:13 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
VerGeSS, код Ev[G]eN(а)
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
    enum { size = 10 };
    int array[size], min = 0, sum = 0, 
        count = 0, i;
    srand(time(0));
    for(i = 0; i < size; i++)
    {
        array[i] = rand() % 25;
        if (array[i] < array[min])
            min = i;
        sum += array[i];
        printf("%d ", array[i]);
    }
    putchar('\n');
    for(i = 0; i < size; i++)
        if(array[i] < ((double)sum / size))
            count++;
    printf("Min: %d Index: %d\n", array[min], min + 1);
    printf("Count of elements < Average: %d\n", count);
    printf("Average: %.5f\n", (double)sum / size);
    return 0;
}
3
Dani
03.09.2012, 21:07
  #9

Не по теме:

Intel~lect, я просто использую стандартные возможности) и мне нравится так сокращать код) он (по моему мнению) становится элегантнее

1
PSIAlt
87 / 87 / 8
Регистрация: 19.06.2012
Сообщений: 245
03.09.2012, 22:59 #10
Цитата Сообщение от Dani Посмотреть сообщение
Intel~lect, я просто использую стандартные возможности) и мне нравится так сокращать код)
В таком случае srand и std::generate можно было не писать
1
03.09.2012, 22:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.09.2012, 22:59
Привет! Вот еще темы с ответами:

В массиве, сформированном случайным образом, найти количество элементов, стоящих на четных местах - C++
Помогите сделать указатель. В массиве t(30), сформированном случайным образом, найти количество элементов, стоящих на четных местах,...

Найти в массиве вещественных чисел количество элементов, которые меньше среднего среди элементов - C++
Для заданного массива вещественных чисел найти количество элементов, каждый из которых меньше значением среднего среди элементов;

Дан двумерный массив размером nm, заполненный случайным образом. Найти сумму отрицательных элементов - C++
Помогите, пожалуйста. Дан двумерный массив размером nm, заполненный случайным образом. Найти сумму отрицательных элементов.

Найти количество элементов массива, каждый из которых меньше по значению чем среднее среди элементов - C++
Для заданного массива действительных чисел найти количество элементов каждый из которых меньше по значению чем среднее среди...


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

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

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