Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "os"
- "os/exec"
- "runtime"
- )
- const N = 20192020
- type data struct {
- sekul string
- kls string
- pel string
- smt string
- silb string
- mat string
- }
- var tab [N]data
- var i , tot int
- var clear map[string]func() //create a map for storing clear funcs
- func init() {
- clear = make(map[string]func()) //Initialize it
- clear["linux"] = func() {
- cmd := exec.Command("clear") //Linux example, its tested
- cmd.Stdout = os.Stdout
- cmd.Run()
- }
- clear["windows"] = func() {
- cmd := exec.Command("cmd", "/c", "cls") //Windows example, its tested
- cmd.Stdout = os.Stdout
- cmd.Run()
- }
- }
- func CallClear() {
- value, ok := clear[runtime.GOOS] //runtime.GOOS -> linux, windows, darwin etc.
- if ok { //if we defined a clear func for that platform:
- value() //we execute it
- } else { //unsupported platform
- panic("Your platform is unsupported! I can't clear terminal screen :(")
- }
- }
- var key string
- func main(){
- fmt.Println("Selamat Datang di aplikasi DARLING 1 ")
- menuUtama()
- }
- func menuUtama(){
- var x int
- fmt.Print("1.Insert \n2.View \nPilih: ")
- fmt.Scan(&x)
- CallClear()
- if x==1{
- insert()
- menuUtama()
- }else if x==2{
- //fmt.Println("Untuk kembali ke menu utama silahkan ketik 0")
- fmt.Println("1.Edit \n2.Delete \n3.Cari \n4.Sorting \nPilih : ")
- fmt.Scan(&x)
- CallClear()
- if x==1{
- menuEdit()
- menuUtama()
- }else if x==2{
- //menuDelete()
- }else if x==3{
- menuCari()
- }else if x==4{
- //menuSorting()
- //}else if x==0{
- // menuUtama()
- }
- }
- }
- func insert(){
- i =0
- tot=0
- fmt.Print("Sekolah : ")
- fmt.Scan(&tab[i].sekul)
- fmt.Print("Kelas : ")
- fmt.Scan(&tab[i].kls)
- fmt.Print("Pelajaran : ")
- fmt.Scan(&tab[i].pel)
- fmt.Print("Semester : ")
- fmt.Scan(&tab[i].smt)
- fmt.Print("Silabus : ")
- fmt.Scan(&tab[i].silb)
- fmt.Print("Materi : ")
- fmt.Scan(&tab[i].mat)
- CallClear()
- for tab[i].sekul!="000" && (tab[i].kls)!="000" && tab[i].pel!="000" && i<N {
- i++
- tot++
- fmt.Print("Sekolah : ")
- fmt.Scan(&tab[i].sekul)
- fmt.Print("Kelas : ")
- fmt.Scan(&tab[i].kls)
- fmt.Print("Pelajaran : ")
- fmt.Scan(&tab[i].pel)
- fmt.Print("Semester : ")
- fmt.Scan(&tab[i].smt)
- fmt.Print("Silabus : ")
- fmt.Scan(&tab[i].silb)
- fmt.Print("Materi : ")
- fmt.Scan(&tab[i].mat)
- CallClear()
- }
- return
- CallClear()
- menuUtama()
- }
- func menuCari(){
- var key string
- var found bool
- found= false
- i=0
- fmt.Println("Silahkan input nama materi yang akan dicari : ")
- fmt.Scan(&key)
- for i<=tot && found==false{
- if tab[i].mat== key{
- found=true
- fmt.Println("Sekolah : ")
- fmt.Println(tab[i].sekul)
- fmt.Println("Kelas :")
- fmt.Println(tab[i].kls)
- fmt.Println("Pelajaran :")
- fmt.Println(tab[i].pel)
- fmt.Println("Semester :")
- fmt.Println(tab[i].smt)
- fmt.Println("Silabus :")
- fmt.Println(tab[i].silb)
- fmt.Println("Materi :")
- fmt.Println(tab[i].mat)
- }
- }
- if found==false{
- fmt.Println("Maaf materi tidak ditemukan")
- }
- }
- func menuEdit(){
- var key, edit string
- var found bool
- var n int
- found= false
- fmt.Print("Silahkan input nama materi yang akan diedit")
- fmt.Scan(&key)
- i=0
- for i<=tot && found==false{
- if key==tab[i].mat{
- found=true
- fmt.Println(tab[i])
- }
- }
- if found==true{
- fmt.Println("Silahkan pilih apa yang akan diedit ")
- fmt.Println("1.Sekolah \n2.Kelas \n3.Pelajaran \n4.Semester \n5.Silabus \n6.Materi \nPilih : ")
- fmt.Scan(&n)
- if n==1{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].sekul=edit
- }else if n==2{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].kls=edit
- }else if n==3{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].pel=edit
- }else if n==4{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].smt=edit
- }else if n==5{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].silb=edit
- }else if n==6{
- fmt.Print("Silahkan diedit: ")
- fmt.Scan(&edit)
- tab[i].sekul=edit
- }
- fmt.Println(tab[i])
- return
- }else {
- fmt.Println("Maaf tidak ditemukan ")
- }
- CallClear()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement