2
respostas

Desafio

//Desafio 1
protocol Area {
    var area: Double {get}
    
}

struct Quadrado: Area {
    var lado: Double
    
    var area: Double {
        return lado * lado
    }
}

struct Triangulo: Area {
    var base: Double
    var altura: Double
    
    var area: Double {
        return (base * altura) / 2
    }
}

let quadrado = Quadrado(lado: 4.0)
let triangulo = Triangulo(base: 2.0, altura: 6.0)

print("Área do quadrado: \(quadrado.area)")
print("Área do triângulo: \(triangulo.area)")

//Desafio 2
enum Moeda: Int {
  case UmCentavo = 1
  case CincoCentavos = 5
  case DezCentavos = 10
  case VinteCincoCentavos = 25
  case CinquentaCentavos = 50
}

let moedas: [Moeda] = [.CincoCentavos, .UmCentavo, .CincoCentavos, .VinteCincoCentavos, .CincoCentavos, .DezCentavos]

func calculaTotal(moedas: [Moeda]) -> Int {
    return moedas.reduce(0) { total, moeda in
        return total + moeda.rawValue}
}

let total = calculaTotal(moedas: moedas)
print("O valor total das moedas é R$ \(Double(total) / 100.0)")
2 respostas

Oii, Gabriel! Tudo bem?

Muito obrigada por compartilhar seu código com a gente! Parabéns por praticar, é fazendo esses projetos que você consegue fixar o conteúdo que aprendeu.

Continue firme nos estudos.

Um abraço.

Ficou muito bom viu, parabens.