Last active
January 7, 2019 09:06
-
-
Save rbalman/dbd8951c2fa54c58e994fb9ca4457b42 to your computer and use it in GitHub Desktop.
go example for factorial
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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) | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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