-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.go
75 lines (62 loc) · 1.35 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/*
Larisse Rodrigues
Marcel Pontes
Miguel Muller
Taís Amanda
*/
package main
import (
"fmt"
"math/rand"
"strings"
)
type tickets struct {
name string
qnt int
total float32
}
func main() {
const price = float32(10.50)
listaTickets := make(map[string]tickets)
fmt.Println("EMPRESA AREA XPTO")
for {
var name string
var qnt int
fmt.Print("\nQual é o seu nome? ")
fmt.Scanln(&name)
fmt.Println("Nome:", name)
fmt.Print("\nQuantos tickets deseja adquirir? ")
fmt.Scanln(&qnt)
fmt.Println("Quantidade:", qnt)
listaTickets[randomString()] = tickets{
name: name,
qnt: qnt,
total: float32(qnt) * price,
}
fmt.Println("Ticket adicionado com sucesso!!!!")
resposta := "S"
fmt.Print("\nQuer reservar mais tickets? (S/N) ")
fmt.Scanln(&resposta)
if strings.ToUpper(resposta) == "N" {
break
}
}
var total = float32(0)
for index := range listaTickets {
//total += price * float32(listaTickets[index].qnt)
total += listaTickets[index].total
}
fmt.Println("\nLista de Compras:", listaTickets)
fmt.Printf("\nTotal: %6.2f", total)
}
func randomString() string {
charSet := "abcdedfghijklmnopqrst1234567890"
var output strings.Builder
length := 6
for i := 0; i < length; i++ {
random := rand.Intn(len(charSet))
randomChar := charSet[random]
output.WriteString(string(randomChar))
}
return output.String()
}