Я новичок в F # и попробовал простое приложение калькулятора. Я беру ввод от пользователя, и я хочу, чтобы определенные функции выполнялись в соответствии с вводом. Прямо сейчас, всякий раз, когда я беру любые данные от пользователя, программа выполняет сверху вниз. Я хочу, чтобы он выполнял только определенные функции, соответствующие входу. Например, если ввод равен 6, тогда должно выполняться тело scienceFun(). Сейчас он выполняет все функции. Пожалуйста, помогите, я как бы застрял на этом! КодКак выполнить определенные функции с шаблоном ввода в языке F #
open System
let mutable ok = true
while ok do
Console.WriteLine("Choose a operation:\n1.Addition\n2.Substraction\n3.Multiplication\n4.Division\n5.Modulo\n6.Scientific")
let input= Console.ReadLine()
let add =
Console.WriteLine("Ok, how many numbers?")
let mutable count = int32(Console.ReadLine())
let numberArray = Array.create count 0.0
for i in 0 .. numberArray.Length - 1 do
let no = float(Console.ReadLine())
Array.set numberArray i no
Array.sum numberArray
let sub x y = x - y
let mul x y = x * y
let div x y = x/y
let MOD x y = x % y
let scientificFun() =
printfn("1. Exponential")
match input with
| "1" -> printfn("The Result is: %f") (add)
| "6" -> (scientificFun())
| _-> printfn("Choose between 1 and 6")
Console.WriteLine("Would you like to use the calculator again? y/n")
let ans = Console.ReadLine()
if ans = "n" then
ok <- false
else Console.Clear()
Вы новичок в F # или программируете вообще? –
new to f # или функциональная парадигма –
Интерес: [REPL] (https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop) –