Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
#1

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

07.10.2016, 09:33. Просмотров 905. Ответов 12
Метки нет (Все метки)

Здравствуйте, передо мной стоит такая задача:

Напишите функцию void fillRandom(double* array, int size) заполняющую массив случайными значениями в интервале от -1.0 до 1.0. Заполните с помощью заданной функции вектора размером 5,10,25,50,100 и отсортируйте его содержимое.

У меня просто пока не было возможности уточнить у преподавателя всю суть.

В общем я не совсем понимаю, что от меня хотят. Меня смущает double* array в функции. Просто называется вроде "массив", но определено не как массив.

Подскажите кто, как понял задание)))
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2016, 09:33
Ответы с готовыми решениями:

Заполнить одномерный массив случайными числами в заданном интервале
Задан одномерный масив А. Заполнить его случайными числами в интервале (1-10)....

Заполнить массив случайными числами в заданном интервале и подсчитать отдельно среднее значение всех элементов
Заполнить массив случайными числами в интервале и подсчитайте отдельно среднее...

Заполнение массива случайными числами в заданном интервале
Пример функции для заполнение случайными числами в от A до B включительно:...

Заполнить файл случайными целыми числами в заданном интервале
Заполнить файл целыми 20 числами, полученными с помощью генератора случайных...

Определить минимальный элемент массива со значениями в заданном интервале
Задан одномерный массив A(N). Определить минимальный из элементов, которые...

12
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 09:36 #2
Цитата Сообщение от fredopudge Посмотреть сообщение
Меня смущает double* array в функции. Просто называется вроде "массив", но определено не как массив
Это и есть массив.
Цикл создаёшь и в нём присваиваешь свои значения.
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 09:36  [ТС] #3
Массив указателей на элементы типа double?
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 09:38 #4
Обычный массив. Ты в книжку-то заглядывал хоть раз?
C++
1
2
double a[10];
fillRandom(a, 10);
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 09:39  [ТС] #5
а звёздочка тогда зачем?
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 09:40 #6
Ну такой синтаксис. Можно и динамический использовать.
C++
1
2
double *a = new double[10];
fillRandom(a, 10);
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 09:44  [ТС] #7
Просто я воспринимаю *array как разыменованный элемент. Ночь не спал, уже ничо не соображаю.
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 09:46 #8
Ничего там не надо разыменовывать. Идентификатор массива (сам по себе, без скобок) совместим с соответствующим указателем. Поэтому функция примет и указатель и просто массив.
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 09:51  [ТС] #9
Тогда я не понимаю, почему он ругается на строчку присваивания рандомных чисел(

C++
1
2
3
4
5
6
7
8
9
void fillRandom(double* &arr, int &size)
{
    for (int i = 0; i < size; i++)
    {
        arr[i] = (rand() % 20 - 10) * 0.1;
        cout << arr[i] << " ";
    }
 
}
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 09:53 #10
Лучший ответ Сообщение было отмечено fredopudge как решение

Решение

Зачем ты ссылки туда прикрутил?
C++
1
2
3
4
5
6
7
8
9
void fillRandom(double* arr, int size)
{
    for (int i = 0; i < size; i++)
    {
        arr[i] = (rand() % 20 - 10) * 0.1;
        cout << arr[i] << " ";
    }
 
}
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 10:00  [ТС] #11
ну это функция. в мэйне у меня объявлены arr и size, так вот я в функции ссылаюсь на них.

всё равно какая-то путаница получается со звёздочками. до сих пор осознать не могу. может я функцию вызываю неправильно?

C++
1
    fillRandom(*arr, size);
0
nmcf
6265 / 5575 / 2534
Регистрация: 14.04.2014
Сообщений: 23,468
07.10.2016, 10:01 #12
Да не нужны звёздочки при вызове. Смотри мои примеры.
1
fredopudge
1 / 1 / 0
Регистрация: 05.03.2016
Сообщений: 49
07.10.2016, 10:07  [ТС] #13
ну вроде получилось всё, спасибо большое)))
0
07.10.2016, 10:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2016, 10:07

Разработать функцию, заполняющую массив из 256 указателей
Дана произвольная строка символов. Разработать функцию, заполня- ющую массив...

Написать функцию, которая принимает указатель на небольшой 2х мерный массив int значениями
Подскажите пожалуйста, надо написать функцию, которая принимает указатель на...

Реализовать функцию по заполнению массива случайными значениями
Написать программу, которая создаст 3 одномерных массива, размерностью 7, 12 и...


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

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

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