64 lines
1.4 KiB
Go
64 lines
1.4 KiB
Go
package main
|
|
|
|
import "fmt"
|
|
|
|
type bookmarkMap = map[string]string
|
|
|
|
func main() {
|
|
bookmarks := bookmarkMap{}
|
|
fmt.Println(bookmarks["a"])
|
|
fmt.Println("Приложение для закладок")
|
|
Menu:
|
|
for {
|
|
variant := getMenu()
|
|
switch variant {
|
|
case 1:
|
|
printBookmarks(bookmarks)
|
|
case 2:
|
|
addBookmark(bookmarks)
|
|
case 3:
|
|
deleteBookmark(bookmarks)
|
|
case 4:
|
|
break Menu
|
|
}
|
|
}
|
|
}
|
|
|
|
func getMenu() int {
|
|
var variant int
|
|
fmt.Println("Выберите вариант")
|
|
fmt.Println("1. Посмотреть закладки")
|
|
fmt.Println("2. Добавить закладку")
|
|
fmt.Println("3. Удалить закладку")
|
|
fmt.Println("4. Выход")
|
|
fmt.Scan(&variant)
|
|
return variant
|
|
}
|
|
|
|
func printBookmarks(bookmarks bookmarkMap) {
|
|
if len(bookmarks) == 0 {
|
|
fmt.Println("Пока нет закладок")
|
|
}
|
|
for key, value := range bookmarks {
|
|
fmt.Println(key, ": ", value)
|
|
}
|
|
}
|
|
|
|
func addBookmark(bookmarks bookmarkMap) {
|
|
var newBookmarkKey string
|
|
var newBookmarkValue string
|
|
fmt.Print("Введите название: ")
|
|
fmt.Scan(&newBookmarkKey)
|
|
fmt.Print("Введите адрес: ")
|
|
fmt.Scan(&newBookmarkValue)
|
|
bookmarks[newBookmarkKey] = newBookmarkValue
|
|
}
|
|
|
|
func deleteBookmark(bookmarks bookmarkMap) {
|
|
|
|
var bookmarkToDelete string
|
|
fmt.Print("Введите название: ")
|
|
fmt.Scan(&bookmarkToDelete)
|
|
delete(bookmarks, bookmarkToDelete)
|
|
}
|