"""
=======================================================================================================================
Filename:       c03_ex05-extra.py
Author:         <NAME>
Description:    CURSO INTENSIVO DE PYTHON - <NAME>
                3.5 Alterando a lista de convidados: Você acabou de saber que um de seus convidados não poderá
                    comparecer ao jantar, portanto será necessário enviar um novo conjunto de convites. Você deverá
                    pensar em outra pessoa para convidar.
                    • Comece com seu programa do Exercício 3.4. Acrescente uma instrução print no final de seu programa,
                    especificando o nome do convidado que não poderá comparecer.
                    • Modifique sua lista, substituindo o nome do convidado que não poderá comparecer pelo nome
                    da nova pessoa que você está convidando.
                    • Exiba um segundo conjunto de mensagens com o convite, uma para cada pessoa que continua
                    presente em sua lista.
Date:           02/01/2022
=======================================================================================================================
"""
# Fugi um pouco da proposta para me desafiar

listaConvidados = []
listaReserva = []
naoComparecer = ""
novoConvidado = ""

remover = ""
i = 0

print("LISTA DE CONVIDADOS")
quantidadeConvidados = int(input("Quantos convidados tem sua lista: "))

while i < quantidadeConvidados:
    listaConvidados.append(input(f"Insira o nome convidado {i + 1}: "))
    i += 1

print(listaConvidados)

quantidadeReserva = int(input("Quantos convidados tem sua lista reserva: "))

i = 0
while i < quantidadeReserva:
    listaReserva.append(input(f"Insira o nome convidado {i + 1}: "))
    i += 1

print(listaReserva)

i = 0
while i < quantidadeConvidados : #envia os convites
    print(f"CONVITE ENVIADO PARA {listaConvidados[i]}")
    i += 1

remover = int(input("Algum convidado NÃO VAI COMPARECER? (1 para SIM e 0 para NÃO): "))

while remover == 1:
    naoComparecer = input("Insira o nome que deseja REMOVER da lista: ")
    listaConvidados.remove(naoComparecer) # remove quem não vai comparecer
    quantidadeConvidados -= 1
    print(f"{naoComparecer} foi REMOVIDO DA LISTA")

    # remove da listaReserva e insere em novoConvidado o primeiro da lista
    if len(listaReserva) > 0: #len retorna a quantidade de itens da lista ou a quantidade de caracteres de uma string
        novoConvidado = listaReserva.pop(0)
        listaConvidados.append(novoConvidado)
        quantidadeConvidados += 1
        print(f"{novoConvidado} foi ADICIONADO À LISTA")

    remover = int(input("Mais algum convidado NÃO VAI COMPARECER? (1 para SIM e 0 para NÃO): "))

print(listaConvidados)

i = 0
while i < quantidadeConvidados:
    print(f"CONVITE ENVIADO PARA {listaConvidados[i]}")
    i += 1
