1
resposta

Exercício hotel

Eu comecei imaginando que deveria haver uma lista de quartos disponíveis(coloquei 10), então o meu ficou diferente. Depois de muitos testes e alterações acho que está sem nenhum bug. Segue abaixo:

 void main() {
  
Set <int> quartosLivres = {1,2,3,4,5,6,7,8,9,10};
Set <int> quartosReservados ={};


Cliente clienteAna =Cliente ("Ana", []);

clienteAna.reservar(quartosLivres, quartosReservados);
clienteAna.cancelar(quartosLivres, quartosReservados);
clienteAna.reservar(quartosLivres, quartosReservados);
print("Quartos Livres:$quartosLivres");
print("Quartos Reservados:$quartosReservados");
}

class Cliente {
  String nome;
  List <int> _quartosCliente;

  Cliente(this.nome, this._quartosCliente);

  void reservar (quartosLivres, quartosReservados){
    for (var reserva in quartosLivres){
      if(reserva>=1 && reserva<=10){
      quartosReservados.add(reserva);
      quartosLivres.remove(reserva);
      _quartosCliente.add(reserva);
      print("$nome você fez uma reserva. Número dos quartos reservados: $_quartosCliente");
      break;
      }
    }
  }
   
 void cancelar (quartosLivres, quartosReservados){
    for (var reserva in _quartosCliente){
         if(reserva>=1){
         quartosReservados.remove(reserva);
         quartosLivres.add(reserva);
          _quartosCliente.remove(reserva);
         print("$nome você cancelou uma reserva. Número dos quartos reservados: $_quartosCliente");
         break;
        }}}
}
 
    
    Built reservas_de_hotel:reservas_de_hotel.
Ana você fez uma reserva. Número dos quartos reservados: [1]
Ana você cancelou uma reserva. Número dos quartos reservados: []
Ana você fez uma reserva. Número dos quartos reservados: [2]
Quartos Livres:{3, 4, 5, 6, 7, 8, 9, 10, 1}
Quartos Reservados:{2}
1 resposta

Oi, Eduardo! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Achei interessante como você organizou os conjuntos de quartos livres e reservados, ficou bem estruturado e direto. A forma como você usou Set<int> ajuda a evitar duplicações de reservas, o que é bem útil nesse tipo de lógica.

Continue firme nos estudos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!