diff --git a/1.go b/1.go index 2a49f35..adb03d6 100644 --- a/1.go +++ b/1.go @@ -2,19 +2,25 @@ package main -import "fmt" +import ( + "fmt" + "math" +) + +func roundFloat(numero float64, precision uint) float64 { + radio := math.Pow(10, float64(precision)) + var resultado = math.Round(numero*radio) / radio + return resultado +} func main() { - //fmt.Println("Hello world!") + var IVA float64 = 1.21 var costeFijo float64 = 15.0 - // + var partidoExtra float64 = 6.0 var apuestaExtra float64 = 5.0 - //TODO: DELETE THIS WHEN YOU CAN FINALLY USE THE VARIABLES - _, _ = costeFijo, apuestaExtra - var numeroPartidos int32 var numeroApuestas int32 @@ -23,16 +29,25 @@ func main() { fmt.Printf("Cuantas apuestas has hecho?\nNúmero: ") fmt.Scanln(&numeroApuestas) - //fmt.Println(numeroPartidos) + var impuestoPartidos float64 + var impuestoApuestas float64 if numeroPartidos > 4 { - impuestoPartidos = (float64(numeroPartidos - 4)) * float64(partidoExtra) + impuestoPartidos = (float64(numeroPartidos - 4)) * partidoExtra } else { impuestoPartidos = 0.0 } - var precioFinal float64 = costeFijo + impuestoPartidos + if numeroApuestas > 4 { + impuestoApuestas = (float64(numeroApuestas - 4)) * apuestaExtra + } else { + impuestoApuestas = 0.0 + } - fmt.Printf("La factura del mes costará %v€!\n", precioFinal) + var precioFinal float64 = costeFijo + impuestoPartidos + impuestoApuestas + var precioFinalMasIVA float64 = roundFloat(precioFinal*IVA, 2) + + fmt.Printf("\nLa factura del mes costará %v€!\n", precioFinal) + fmt.Printf("La factura del mes incluyendo IVA costará %v€!\n", precioFinalMasIVA) }