gpt4 book ai didi

f# - 辅助GCD函数初学者

转载 作者:行者123 更新时间:2023-12-05 01:24:27 25 4
gpt4 key购买 nike

所以我有这个

// Greatest common divisor

let rec gcd x y =
if y = 0 then x
else gcd y (x%y)

//multiplying fraction using tuples. So , instead of /

let (.*)(a,b)(c,d)=((a*c)/(gcd (a*c) (b*d)),((d*b)/(gcd(a*c)(d*b))));;

//adding fractions using tuples and simplifying

let (.+)(a,b)(c,d)=((a*d+c*b)/(gcd(a*d+c*b)(d*b)),(d*b)/(gcd(a*d+c*b)(d*b)));;

它工作完美,但我希望能够使用辅助功能来完成此操作。

我有

让 rec gcd = 函数
| (a,0) -> 一个
| (a,b) -> gcd (b, a % b)

,但我不熟悉如何让它工作。每次我尝试实现它时,它都不会调用 gcd。我确定它是 f# syntac 的东西。即因为我是该语言的新手并且没有看到足够的示例。任何帮助将不胜感激。

最佳答案

let rec gcd a b = 
match a, b with
| (a,0) -> a
| (a,b) -> gcd b (a % b)

关于f# - 辅助GCD函数初学者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34909140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com