add extended flag
This commit is contained in:
parent
4021a1caed
commit
bce95536f7
12
cmd/gcd.go
12
cmd/gcd.go
|
|
@ -24,12 +24,18 @@ import (
|
|||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var extended bool
|
||||
|
||||
func gcd(cmd *cobra.Command, args []string) {
|
||||
var x big.Int
|
||||
var y big.Int
|
||||
var z big.Int
|
||||
var w big.Int
|
||||
|
||||
if extended && len(args) > 2 {
|
||||
log.Fatal("--extended unsupported for more than two values")
|
||||
}
|
||||
|
||||
for _, s := range args {
|
||||
_, ok := w.SetString(s, 10)
|
||||
if !ok {
|
||||
|
|
@ -39,7 +45,11 @@ func gcd(cmd *cobra.Command, args []string) {
|
|||
z.GCD(&x, &y, &z, &w)
|
||||
}
|
||||
|
||||
if extended {
|
||||
fmt.Println(&z, &x, &y)
|
||||
} else {
|
||||
fmt.Println(&z)
|
||||
}
|
||||
}
|
||||
|
||||
// gcdCmd represents the gcd command
|
||||
|
|
@ -63,4 +73,6 @@ func init() {
|
|||
// Cobra supports local flags which will only run when this command
|
||||
// is called directly, e.g.:
|
||||
// gcdCmd.Flags().BoolP("toggle", "t", false, "Help message for toggle")
|
||||
|
||||
gcdCmd.Flags().BoolVarP(&extended, "extended", "e", false, "also compute the Bezout coefficients")
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue