Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "os"
- )
- type Kontrola struct {
- predkosc int
- kwota int
- czyZabrano string
- }
- var kontrole []Kontrola
- func fillArray(dozwolona int) {
- var predkosc int
- fmt.Print("Prędkość kierowcy na kontroli: ")
- _, err := fmt.Scanf("%d", &predkosc)
- if err == nil {
- var teren string
- fmt.Print("Czy teren zabudowany[T/N]: ")
- _, err := fmt.Scanf("%s", &teren)
- if err == nil {
- if (predkosc - dozwolona) <= 30 {
- fmt.Println("Pusc bez mandatu!")
- } else if (predkosc - dozwolona) <= 40 {
- kontrole = append(kontrole, Kontrola{
- predkosc: predkosc,
- kwota: 300,
- czyZabrano: "N",
- })
- } else if (predkosc - dozwolona) <= 50 {
- kontrole = append(kontrole, Kontrola{
- predkosc: predkosc,
- kwota: 400,
- czyZabrano: "N",
- })
- } else {
- if teren == "T" {
- kontrole = append(kontrole, Kontrola{
- predkosc: predkosc,
- kwota: 500,
- czyZabrano: "T",
- })
- } else {
- kontrole = append(kontrole, Kontrola{
- predkosc: predkosc,
- kwota: 500,
- czyZabrano: "N",
- })
- }
- }
- }
- }
- }
- func wanttoFill() {
- var decision string
- fmt.Print("Czy chcesz wprowadzić wartosci? [T/N]: ")
- _, err := fmt.Scanf("%s", &decision)
- if err == nil {
- if decision == "T" {
- var dozwolona int
- fmt.Print("Podaj dozwolona predkosc: ")
- _, err := fmt.Scanf("%d", &dozwolona)
- if err == nil {
- fillArray(dozwolona)
- }
- }
- }
- }
- func statistics() {
- var decision string
- fmt.Print("Czy chcesz sprawdzić statystyki? [T/N]: ")
- _, err := fmt.Scanf("%s", &decision)
- if err == nil {
- if decision == "T" {
- var ileZabranych int
- var ogolMandatow float32
- var trzysta float32
- var czterysta float32
- var piecset float32
- for _, element := range kontrole {
- ogolMandatow++
- if element.czyZabrano == "T" {
- ileZabranych++
- }
- if element.predkosc == 300 {
- trzysta++
- } else if element.predkosc == 400 {
- czterysta++
- } else {
- piecset++
- }
- }
- fmt.Printf("Udział mandatów trzystu zlotowych wynosi %f \n", (trzysta / ogolMandatow) * 100)
- fmt.Printf("Udział mandatów czterystu zlotowych wynosi %f \n", (czterysta / ogolMandatow) * 100)
- fmt.Printf("Udział mandatów pieciuset zlotowych wynosi %f \n", (piecset / ogolMandatow) * 100)
- fmt.Printf("Zabrano %d praw jazdy \n", ileZabranych)
- }
- }
- }
- func main() {
- var decision int
- for ;; {
- fmt.Println("Wybierz opcję:")
- fmt.Println("Wprowadz mandat - wprowadz 1")
- fmt.Println("Sprawdz statystyki - wprowadz 2")
- fmt.Println("Aby wyjsc wcisnij 0")
- _, err := fmt.Scanf("%d", &decision)
- if err == nil {
- switch decision {
- case 1:
- wanttoFill()
- case 2:
- statistics()
- case 0:
- os.Exit(0)
- default:
- fmt.Println("Wprowadziłeś złą opcję, popraw się")
- }
- }
- }
- wanttoFill()
- statistics()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement