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

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

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

Генерация элементов массива случайным образом и преобразования полученного массива - C++

06.11.2012, 19:20. Просмотров 691. Ответов 0
Метки нет (Все метки)

Тут такая незадача случилась- мне помогли сделать прогу, но на компе нету нужных библеотек. Как не используя сторонних библиотек это сделать? Заранее Спасибо!
Задание:
В одномерном массиве, состоящем из n вещественных элементов, которые генерируются случайным образом от -157.0 до 201.0, выполнить:
- Распечатать массив.
- Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более чем на 20%, а потом все остальные. Распечатать массив.
Код:
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
#include <iostream>
#include <array>
#include <algorithm>
#include <ctime>
#include <Windows.h>
using namespace std;
 
const int n = 40;
 
int main()
{
    SetConsoleCP (1251); SetConsoleOutputCP (1251);
    srand(time(0));
    array<double, n> num, out;
    generate(num.begin(), num.end(), [] {return (-157 + rand()%358) + ((rand())%10)/10.0;});
    cout<<"Наш массив:\n\n";
    for (auto x : num) cout<<x<<" ";
    auto max = *max_element(num.begin(), num.end());
    cout<<"\n\nМаксимальный элемент = "<<max<<endl;
    int counts = 0;
    cout<<"\nЭлементы, которые отличаются от максимального не более чем на 20%:\n";
    for (int i = 0; i<n; i++)
    {
        if (num[i]>=(max-max/5) && num[i]<=(max+max/5))
            cout<<(out[counts++] = num[i])<<endl;
    }
    cout<<"\nПреобразованный массив:\n\n";
    for (int i = 0; i<n; i++)
    {
        if (num[i]<(max-max/5) || num[i]>(max+max/5))
            out[counts++] = num[i];
    }
    for (auto x : out) cout<<x<<" ";
    cout<<endl<<endl;
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2012, 19:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Генерация элементов массива случайным образом и преобразования полученного массива (C++):

Перемешивание элементов массива случайным образом - C++
Здравствуйте. Помогите написать функцию, которая рандомно перемешивает элементы массива. void PeremeshivanieMassiva(int m); void...

Перемешивание элементов массива случайным образом - C++
Здравствуйте! Помогите пожалуйста. Нужно перемешать елементы массива случайным образом. Масив вводится вручную, а после нужно перемешать...

заполнение массива случайным образом - C++
Помогите на языке Си заполнить массив символов случайным образом символами с кодами в диапазоне от 21 до 254

Заполнение массива случайным образом и другие операции - C++
Нужно объявить массив целых чисел и заполнить его случайными значениями с помощью randomize и random(возможно srand) Причем, размер массива...

Одномерные массивы.Сформировать случайным образом два массива d(10) и a(10) - C++
Сформировать случайным образом два массива d(10) и a(10). Сложить их. В новом массиве найти первый отрицательный элемент и вывести его на...

Нужно сгенерировать элементы массива случайным образом с помощью функции rand - C++
Нужно сгенерировать элементы случайным образом с помощью функции rand. Определить индексы максимального элемента матрицы. Вычислить...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2012, 19:20
Привет! Вот еще темы с ответами:

Написать программу ввода в массив 6x5 элементов чисел и вычисления суммы элементов полученного массива - C++
Пожалуйста помогите решить!

Удалить из массива все элементы встречающиеся менее 3-х раз и вывести размер полученного массива и его содержимое. - C++
Помогите пожалуйста решить задачу!!!!!! Дан целочисленный массив размера n. Удалить из массива все элементы встречающиеся менее 3-х...

Из заданной матрицы сформировать одномерный массив; найти среднее арифметическое элементов полученного массива - C++
Дана целочисленная прямоугольная матрица размера n x m. Сформировать одномерный массив, состоящий из элементов, лежащих на отрезке . Найти...

Сформировать случайным образом масив из 20 элементов - C++
Помогите написать прогу на С++ &quot;Сформувати випадковим чином масив із 20 елементів. Упорядкувати елементи масиву таким чином, щоб...


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

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

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