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

не мгу понять что заошибка - C++

Восстановить пароль Регистрация
 
аня_щатц
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 4
19.12.2012, 01:15     не мгу понять что заошибка #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
#include <iostream>
#include <clocale>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#include <fstream>
#define IA 16807
#define IM 2147483647
#define AM (1.0/IM)
#define IQ 127773
#define IR 2836
#define MASK 123459876
using namespace std;
float ran0(long &idum);
 
float ran0(long &idum)
{
long k;
float ans;
idum ^= MASK;
k=(idum)/IQ;
idum=IA*(idum-k*IQ)-IR*k;
if (idum < 0) idum += IM;
ans=AM*(idum);
idum^= MASK;
return ans;
}
int main()
{int i;
float x;
for(i=0;i<3;i++)
{
    x=ran0(long &idum);
cout<<x<<endl;}}

на вот этой строке выдает ошибку x=ran0(long &idum);
expected primary-expression before 'long'
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2012, 01:15     не мгу понять что заошибка
Посмотрите здесь:

C++ не могу понять что не так
Не могу понять, что такое void? C++
не могу понять что не так((((( C++
C++ что не верно? не могу понять.
не могу понять что с выводом C++
C++ Не могу что-то понять с указателями
C++ Подскажите что бы понять
Не могу понять что делает функциия C++
C++ Не могу понять, что не так в коде
Обьясните что не так не могу понять C++
C++ Никак не могу понять что это
C++ Не могу понять, что неправильно с float

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
19.12.2012, 01:26     не мгу понять что заошибка #2
Цитата Сообщение от аня_щатц Посмотреть сообщение
ran0(long &idum);
Какой ты параметр функции передаешь?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
12079 / 6940 / 782
Регистрация: 27.09.2012
Сообщений: 17,208
Записей в блоге: 2
Завершенные тесты: 1
19.12.2012, 01:34     не мгу понять что заошибка #3
Уберите амперсанд в вызове функции

Добавлено через 8 минут
Да long при вызове тоже ни к чему
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
19.12.2012, 01:36     не мгу понять что заошибка #4
Croessmah, у него и переменной idum нет Поэтому там, в принципе, все ни к чему.
аня_щатц
0 / 0 / 0
Регистрация: 19.12.2012
Сообщений: 4
19.12.2012, 10:53  [ТС]     не мгу понять что заошибка #5
Функция (ran0) взята мной из книги, это генератор случайных чисел, писала ее не я, поэтому не знаю(

Добавлено через 19 минут
у меня такое ощущение, что idum надо дать какое-то значение для инициализации последовательности
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
19.12.2012, 10:56     не мгу понять что заошибка #6
аня_щатц, в книге нет примера вызова этой функции? Просто в вызове тип указывать не нужно, и передавать нужно значение, а не адрес. Т.е.

C++
1
ran0(i)
Если хочешь вызывать ее для переменной i, которая меняется в цикле (ну или для другой переменной если нужно)
Yandex
Объявления
19.12.2012, 10:56     не мгу понять что заошибка
Ответ Создать тему
Опции темы

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