Advertisement
sabdas4869

menu Insert

Nov 17th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.66 KB | None | 0 0
  1. package main
  2.  
  3. import (
  4. "fmt"
  5. "os"
  6. "os/exec"
  7. "runtime"
  8. )
  9.  
  10. type data struct {
  11. sekolah string
  12. kelas string
  13. pelajaran string
  14. semester string
  15. silabus string
  16. materi string
  17. }
  18. var tab [9999]data
  19.  
  20. var clear map[string]func() //create a map for storing clear funcs
  21.  
  22. func init() {
  23. clear = make(map[string]func()) //Initialize it
  24. clear["linux"] = func() {
  25. cmd := exec.Command("clear") //Linux example, its tested
  26. cmd.Stdout = os.Stdout
  27. cmd.Run()
  28. }
  29. clear["windows"] = func() {
  30. cmd := exec.Command("cmd", "/c", "cls") //Windows example, its tested
  31. cmd.Stdout = os.Stdout
  32. cmd.Run()
  33. }
  34. }
  35.  
  36. func CallClear() {
  37. value, ok := clear[runtime.GOOS] //runtime.GOOS -> linux, windows, darwin etc.
  38. if ok { //if we defined a clear func for that platform:
  39. value() //we execute it
  40. } else { //unsupported platform
  41. panic("Your platform is unsupported! I can't clear terminal screen :(")
  42. }
  43. }
  44.  
  45.  
  46. var n,i, tot int
  47. var key string
  48.  
  49. func main(){
  50.  
  51. menuUtama(&n, &i)
  52.  
  53.  
  54. }
  55.  
  56. // Menu Utama
  57. func menuUtama(n *int, i *int) {
  58. fmt.Println("1. Insert")
  59. fmt.Println("2. View")
  60. fmt.Print("Pilih : ")
  61. fmt.Scan(&*n)
  62. if *n == 1 {
  63. CallClear()
  64. insert(&*n,&*i)
  65. menuUtama(&*n,&*i)
  66. } else if *n == 2 {
  67. CallClear()
  68. menuView(&*n)
  69. }
  70. }
  71.  
  72. func insert(n *int, i *int) {
  73.  
  74. *i =0
  75. tot=0
  76. fmt.Print("Sekolah : ")
  77. fmt.Scan(&tab[1].sekolah)
  78. fmt.Print("Kelas : ")
  79. fmt.Scan(&tab[1].kelas)
  80. fmt.Print("Pelajaran : ")
  81. fmt.Scan(&tab[1].pelajaran)
  82. fmt.Print("Semester : ")
  83. fmt.Scan(&tab[1].semester)
  84. fmt.Print("Silabus : ")
  85. fmt.Scan(&tab[1].silabus)
  86. fmt.Print("Materi : ")
  87. fmt.Scan(&tab[1].materi)
  88. CallClear()
  89.  
  90. for tab[*i].sekolah!="000" && (tab[*i].kelas)!="000" && tab[*i].pelajaran!="000" {
  91. *i++
  92. tot++
  93. fmt.Print("Sekolah : ")
  94. fmt.Scan(&tab[*i].sekolah)
  95. fmt.Print("Kelas : ")
  96. fmt.Scan(&tab[*i].kelas)
  97. fmt.Print("Pelajaran : ")
  98. fmt.Scan(&tab[*i].pelajaran)
  99. fmt.Print("Semester : ")
  100. fmt.Scan(&tab[*i].semester)
  101. fmt.Print("Silabus : ")
  102. fmt.Scan(&tab[*i].silabus)
  103. fmt.Print("Materi : ")
  104. fmt.Scan(&tab[*i].materi)
  105. CallClear()
  106. }
  107. CallClear()
  108. menuUtama(&*n,&*i)
  109. }
  110.  
  111. func menuView(n *int){
  112. fmt.Println("1. Edit")
  113. fmt.Println("2. Delete")
  114. fmt.Println("3. Cari")
  115. fmt.Println("4. Sorting")
  116. fmt.Print("Pilih : ")
  117. fmt.Scan(&*n)
  118.  
  119. fmt.Println()
  120.  
  121. if *n==1{
  122. fmt.Println("Edit")
  123. }else if *n==2{
  124. fmt.Println("Delete")
  125. }else if *n==3{
  126. fmt.Println("cari")
  127.  
  128. }else if *n==4{
  129. fmt.Println("sorting")
  130. }
  131.  
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement