Skip to content

Commit cc2f9fe

Browse files
committed
Ders 36
1 parent 247d466 commit cc2f9fe

File tree

1 file changed

+86
-0
lines changed

1 file changed

+86
-0
lines changed

36_own_types/main.go

+86
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
/* package main
2+
3+
import (
4+
"fmt"
5+
"strings"
6+
)
7+
8+
// struct --> underlying type, employee ---> Defined Type, Named Type
9+
10+
type mile float64
11+
type kilometer float64
12+
13+
//type mystring string
14+
15+
func main() {
16+
17+
/* f1 := float64(4.4)
18+
19+
fmt.Println()
20+
fmt.Printf("%T, %v", (m1 + mile(f1)), (m1 + mile(f1)))
21+
fmt.Println()
22+
fmt.Printf("%T, %v", (float64(m1) + f1), (float64(m1) + f1)) */
23+
24+
/* var m1 mile
25+
m1 = 3.2
26+
//fmt.Println(m1)
27+
//fmt.Printf("%T, %v", m1, m1)
28+
29+
//fmt.Println()
30+
31+
m2 := mile(4.6) */
32+
33+
/* k1 := kilometer(7.8)
34+
fmt.Printf("%T, %v", k1, 11)
35+
36+
fmt.Println(m1 + k1) */
37+
38+
/* fmt.Println(m1 + m2)
39+
fmt.Printf("%.2f", (m1 * m2))
40+
fmt.Println()
41+
fmt.Println(m1 + m2 + 2.1)
42+
fmt.Println()
43+
//fmt.Println(m1 + m2 + "arin") */
44+
45+
/* s1 := "arin"
46+
47+
//m1 := mile(4.6)
48+
49+
fmt.Println(strings.ToUpper(s1))
50+
//fmt.Println(strings.ToUpper(m1))
51+
52+
53+
} */
54+
55+
package main
56+
57+
import "fmt"
58+
59+
type mile float64
60+
type kilometer float64
61+
62+
func main() {
63+
64+
// m1 = 10 k1=?
65+
m1 := mile(10)
66+
67+
k1 := toKilometer(m1)
68+
69+
fmt.Println(k1)
70+
71+
// k2 = 10 m2=?
72+
73+
k2 := kilometer(10)
74+
75+
m2 := toMile(k2)
76+
fmt.Println(m2)
77+
78+
}
79+
80+
func toKilometer(m mile) kilometer {
81+
return kilometer(m * 1.6)
82+
}
83+
84+
func toMile(k kilometer) mile {
85+
return mile(k * 0.62)
86+
}

0 commit comments

Comments
 (0)