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

Функция rand не принимает аргументы

12.06.2017, 21:04. Просмотров 230. Ответов 5

Добрый день, при написании программы у меня возникла такая проблема :"error C2660: rand: функция не принимает 1 аргументов"(скрин), помогите мне решить этот нюанс
Условия на скрине

вот код:
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
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
 int Ar[100];               /* массив, который обрабатывается */
 
int main(void) {
 int i, j;                  /* индексы в массиве */
 int av;                    /* среднее значение */
 int nn;            /* количество эл-тов в последовательности */ 
 int ib;                /* индекс начала последовательности */
 
  rand();                /* инициализация rand */
  for (i=0; i<100; Ar[i++]=rand(101)-50 );      /* заполнение 
массива случайными числами */
  printf("Начальный массив:\n");    /* вывод начального массива */
  for (i=0; i<100; printf("%3d  ",Ar[i++]));
  putchar('\n');
  putchar('\n');
  for (nn=i=0; i<100; i++) {            /* перебор массива */
    if (Ar[i]<0) 
      
      if (!nn) {        /* обработка отрицательного элемента */
                         /* начало последовательности */
        /* запомнить индекс начала, начальное значение накопителя суммы и счетчика элементов */
        ib=i; av=Ar[i]; nn=1;
        }
      else {
        av+=Ar[i]; nn++;    /* накопление суммы,  подсчет количества */
        }           /* конец обработки отрицательного элемента */
    else                /* обработка положительного элемента */
      if (nn) { 
      /* если есть необработанная  отрицательная последовательность */
        av/=nn;                 /* усреднение */
         /* перебор всей последовательности  с ограничением */
        for (j=ib; j<i; j++)
          if (Ar[j]>av) Ar[j]=av;
            nn=0;           /* последовательность обработана */
        }               /* конец если есть необработанная... */ 
    }                    /* конец перебор массива */
  if (nn)   
/* если не обработана последняя  отрицательная последовательность */
    for (av/=nn, j=ib; j<i; j++)
      if (Ar[j]>av) Ar[j]=av;
  printf("Массив-результат:\n");        /* вывод результатов */
  for (i=0; i<100; printf("%3d  ",Ar[i++]));
  putchar('\n');
  return 0;
}
0
Миниатюры
Функция rand не принимает аргументы   Функция rand не принимает аргументы  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2017, 21:04
Ответы с готовыми решениями:

Функция не принимает аргументы
Не знаю какой участок кода выделить, напишу всю программу Программа выводит...

Шаблон принимает аргументы с различными типами
template &lt;class T&gt; T function(T a,T b) { if(a&gt;b)return a; else return b;...

Функция rand()
Здравствуйте, имеется код с реализацией алгоритма прямого поиска и я не могу...

Функция rand()
Помогите, как сделать так что бы функция random при каждом запросе к ней...

Функция rand()
Здравствуйте, где я могу посмотреть код функции rand()? И подобных функций на...

5
BenJost
0 / 0 / 4
Регистрация: 01.10.2016
Сообщений: 247
12.06.2017, 21:04  [ТС] #2
скрин компиляции неверен (перепутал, не с той программы)
0
DU3
281 / 233 / 115
Регистрация: 07.09.2016
Сообщений: 587
12.06.2017, 21:07 #3
раз не принимает аргументы, значит нечего ей передавать аргумент.
строка 13: ...rand(101)...
0
BenJost
0 / 0 / 4
Регистрация: 01.10.2016
Сообщений: 247
12.06.2017, 22:32  [ТС] #4
если ликвидировать "попытку передавать аргументы" (
C++
1
for (i=0; i<100; Ar[i++] );
) то массив не заполняется(скрин)
0
Миниатюры
Функция rand не принимает аргументы  
DU3
281 / 233 / 115
Регистрация: 07.09.2016
Сообщений: 587
12.06.2017, 22:43 #5
т.е. вместо ликвидации аргумета вроде
C++
1
for (i=0; i<100; Ar[i++]=rand()-50 );
вы решили ликвидировать вызов рандома, превратив цикл в пустышку и чего-то полезного ожидаете. окей.
тогда вот вам оптимизация вашего решения: удалите весь цикл for, будет тот же эффект, только быстрее.
0
MrGluck
13.06.2017, 10:39     Функция rand не принимает аргументы
  #6
 Комментарий модератора 
BenJost, условие задачи перепечатывайте на форум. Запрещено выкладывать задание в виде картинок
0
13.06.2017, 10:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2017, 10:39
Привет! Вот еще темы с ответами:

функция rand()
У меня такой вопрос, как можно сделать искать рандомные числа за исключением...

Функция - rand
Здравствуйте. Проблема - нужно сгенерировать случайное число из области чисел...

Функция rand()
как с помощью этой функции заполнить массив случайными числами? знаю.что нужно...


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

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

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