Использование и установка пакета MathNet

Я установил пакет MathNet.Numerics в Visual Studio 2017 с помощью консоли диспетчера пакетов.

Я попытался открыть исходный файл и выполнить алгоритм, относящийся к типу MersenneTwister в пространстве имен MathNet.

Однако когда я пытаюсь сгенерировать числа с помощью этого алгоритма в F# Interactive, я сталкиваюсь с ошибкой:

File1.fs(3,6): ошибка FS0039: пространство имен или модуль "MathNet" не определен. Может быть, вам нужно одно из следующего:

Математика

Код приведен ниже:

module File1

open MathNet.Numerics.Random

let mersenneTwister = new MersenneTwister(42)
let a = mersenneTwister.NextDouble()

Извините, если это неясно, я относительно новичок в F#:)

1 ответ

Вы за изменение используете интерактивное окно или запускаете fsxсценарий? Потому что они не распознают ваши пакеты.

При воспроизведении вашей проблемы в F# консольное приложение я получил такой вывод: Hello 0.374540.

Я установил MathNet.Numerics.fsharp пакет nuget (который также использует упомянутый вами пакет) и использовал следующий код в Program.fs:

open MathNet.Numerics.Random

let hello () =
    let mersenneTwister = new MersenneTwister(42)
    let a = mersenneTwister.NextDouble()
    printfn "Hello %f" a

[<EntryPoint>]
let main argv =
    hello ()
    0 // return an integer exit code

Если вы действительно хотите использоватьnuget packageиз сценария вы можете ссылаться на него в верхней части сценария, например (абсолютное или относительное)

#r @"C:\Path\bin\Debug\netcoreapp3.0\MathNet.Numerics.dll"

Другие вопросы по тегам