im, имеющий эту ошибку: ссылка на объект не установлена в экземпляр объекта, когда я пытаюсь вызвать какой-либо метод, в этом случае я попытался вызвать метод Next.Lagged Fibonnaci Algorthm
Что касается кода в моем LaggedFibonnaci классе у меня есть:
int[] initialsetofvalues;
int j = 30;
int k = 127;
int m = 2^31;
int n;
public LaggedFibonnaci()
{
int[] initialsetofvalues = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
}
public int Next(int maxValue)
{
n = k;
int randNo = (initialsetofvalues[n - j] + initialsetofvalues[n - k]) % m;
n++;
return randNo % (maxValue + 1);
}
public int NextWithDiscarding(int maxValue)
{
Random rand = new Random();
//Generate 127 Random Numbers
for (int i = maxValue - 1; i > 0; i--)
{
int randNumbers = rand.Next(1, 128);
randNumbers = initialsetofvalues[maxValue];
}
//Generate 997 Random Numbers
for (int i = maxValue - 1; i > 0; i--)
{
int randNumbers = rand.Next(1, 998);
randNumbers = initialsetofvalues[maxValue];
}
return Convert.ToInt32(rand);
}
public int NextWithRandomShuffling(int maxValue)
{
int[] v = new int[61];
for (int i = 0; i < 61; i++)
{
v[i] = Next(maxValue);
}
int y = Next(maxValue);
int rand = (61 * y)/m;
v[rand] = y;
return y;
}
}
Я также реализован MaxValue из интерфейса IRandomProvider, а код:
public interface IRandomProvider
{
int Next(int maxValue);
}
и да, laggedfibonnaci класс наследующий от этого интерфейса.
Программа Код:
{
static void Main(string[] args)
{
LaggedFibonnaci lfn = new LaggedFibonnaci();
int[] initialsetofvalues = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int array = lfn.Next(2);
Console.WriteLine(array);
Console.ReadLine();
}
}
Любая помощь? Благодаря
(Так что у вашего класса есть исходный код. Жаль, что он не содержит намеков на его назначение.) – greybeard
Смысл? все, что я пытаюсь сделать, это сделать алгоритм laggedfibonnaci, как это не подсказка? –
Этот вопрос был бы значительно лучше, если бы вы сделали одну из двух вещей. Лучшим вариантом было бы сократить проблему до минимальной части вашего кода, как это возможно (см. [Здесь] (http://stackoverflow.com/help/mcve)). Другим вариантом было бы, по крайней мере, включить полный фрагмент кода, который может компилироваться и запускаться, чтобы мы могли видеть, что на самом деле происходит, а не только фрагменты кода без контекста. –