Skip to content

Instantly share code, notes, and snippets.

@rbalman
Last active January 7, 2019 09:06
Show Gist options
  • Save rbalman/dbd8951c2fa54c58e994fb9ca4457b42 to your computer and use it in GitHub Desktop.
Save rbalman/dbd8951c2fa54c58e994fb9ca4457b42 to your computer and use it in GitHub Desktop.
go example for factorial
package main
import (
"fmt"
)
func factorial(n uint) uint {
if n < 0 || n > 100 {
fmt.Println("Out of Range")
return 333 //this is just for error handling
}
if n == 0 {
return 1
}
return n * factorial(n-1)
}
func main() {
var num uint
fmt.Printf("Enter any number within 1 to 100: ")
fmt.Scanln(&num)
fmt.Println("num :", num)
var fact uint = factorial(num)
if( fact != 333) {
fmt.Printf("factorial of %d is %d", num, fact)
}
}
package main
import (
"fmt"
)
func main() {
roman := map[int]string{
1: "I",
2: "II",
3: "III",
4: "IV",
5: "V",
6: "VI",
7: "VII",
8: "VIII",
9: "IX",
10: "X",
11: "XI",
12: "XII",
13: "XIII",
14: "XIV",
15: "XV",
16: "XVI",
17: "XVII",
18: "XVIII",
19: "XIX",
20: "XX",
21: "XXI",
22: "XXII",
23: "XXIII",
24: "XXIV",
25: "XXV",
26: "XXVI",
27: "XXVII",
28: "XXVIII",
29: "XXIX",
30: "XXX",
31: "XXXI",
32: "XXXII",
33: "XXXIII",
34: "XXXIV",
35: "XXXV",
36: "XXXVI",
37: "XXXVII",
38: "XXXVIII",
39: "XXXIX",
40: "XL",
41: "XLI",
42: "XLII",
43: "XLIII",
44: "XLIV",
45: "XLV",
46: "XLVI",
47: "XLVII",
48: "XLVIII",
49: "XLIX",
50: "L",
51: "LI",
52: "LII",
53: "LIII",
54: "LIV",
55: "LV",
56: "LVI",
57: "LVII",
58: "LVIII",
59: "LIX",
60: "LX",
61: "LXI",
62: "LXII",
63: "LXIII",
64: "LXIV",
65: "LXV",
66: "LXVI",
67: "LXVII",
68: "LXVIII",
69: "LXIX",
70: "LXX",
71: "LXXI",
72: "LXXII",
73: "LXXIII",
74: "LXXIV",
75: "LXXV",
76: "LXXVI",
77: "LXXVII",
78: "LXXVIII",
79: "LXXIX",
80: "LXXX",
81: "LXXXI",
82: "LXXXII",
83: "LXXXIII",
84: "LXXXIV",
85: "LXXXV",
86: "LXXXVI",
87: "LXXXVII",
88: "LXXXVIII",
89: "LXXXIX",
90: "XC",
91: "XCI",
92: "XCII",
93: "XCIII",
94: "XCIV",
95: "XCV",
96: "XCVI",
97: "XCVII",
98: "XCVIII",
99: "XCIX",
100: "C",
}
fmt.Println("Please input the number between 0 to 100");
var num int;
fmt.Scanf("%d",&num);
if(num < 0 || num > 100) {
fmt.Println("Not in range", num)
return
}
fmt.Printf("The value of %d in Roman is %s ",num,roman[num]);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment