Você está na página 1de 5

‭Atividade‬

‭Data de entrega: 09/03/2024‬

‭O código a seguir é o mesmo da última aula(04/03/2024)‬

‭ dicionei algumas linhas de código para fazer com que todas as opções fiquem funcionais e‬
A
‭que o programa fique rodando até que seja solicitado que o mesmo encerre sua operação.‬

‭Segue abaixo o código fonte da nossa aplicação.‬

‭ atividade consiste em inserir ou editar linhas de código que estão faltando ou estão‬
A
‭incompletas.‬

‭ bs.:‬‭Todos os erros do código estão sendo citados como‬‭#Comentário‬‭. Não se preocupem‬


O
‭em editar outros locais. Fiquem atentos apenas nas linhas em que estão marcados os erros.‬

‭ opiem o código abaixo e colem no VS Code.‬


C
import‬‭
‭ os‬

restaurantes‬‭
‭ =‬‭
[{‬
'nome'‬
‭ :‭
‭'‬Praça'‬
,‬‭
‭ 'categoria'‬
:‭
‭'‬Japonesa'‬
,‬

'ativo'‬
‭ :‬
‭ False‬
‭ },‬

{‭
‭'‬nome'‬
:‭
‭'‬Pizza Superma'‬
,‬‭
‭ 'categoria'‬
:‬
‭ 'Pizza'‬
‭ ,‬

'ativo'‬
‭ :‬
‭ True‬
‭ },‬

{‭
‭'‬nome'‬
:‭
‭'‬Cantina'‬
,‬‭
‭ 'categoria'‬
:‬
‭ 'Italiano'‬
‭ ,‬

'ativo'‬
‭ :‬
‭ False‬
‭ }]‬

def‬‭
‭ exibir_nome_do_programa‬
():‬‭
‭ #Erro aqui é divido‬‭
alguma coisa com as‬
aspas (''). Descubra como corrigir para fazer o nome SABOR EXPRESS‬

aparecer.‬

print‬
‭ (‬
‭ '‬

███████████████████████████████████████████████████████████████████████‬

███████████████████████████████████████████████████████████████████████‬

████████████████████████████████████████████████████████‬

█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░███░░░░░░░░░░░░░░█░░░░░░░░‬

░░░░░░░░██████░░░░░░░░░░░░░░█░░░░░░░░██░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░‬

░░░░░░░░███░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█‬

█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░███░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀‬

▄▀▄▀▄▀░░██████░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀░░██░░▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀‬

▄▀▄▀▄▀░░███░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█‬

█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░███░░▄▀░░░░░░▄▀░░█░░▄▀░░░░‬

░░░░▄▀░░██████░░▄▀░░░░░░░░░░█░░░░▄▀░░██░░▄▀░░░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░‬

░░░░▄▀░░███░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█‬

█░░▄▀░░█████████░░▄▀░░██░░▄▀░░█░░▄▀░░██░░▄▀░░███░░▄▀░░██░░▄▀░░█░░▄▀░░██‬

██░░▄▀░░██████░░▄▀░░███████████░░▄▀▄▀░░▄▀▄▀░░███░░▄▀░░██░░▄▀░░█░░▄▀░░██‬

██░░▄▀░░███░░▄▀░░█████████░░▄▀░░█████████░░▄▀░░█████████‬

█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░░░█░░▄▀░░██░░▄▀░░█░░▄▀░░░░‬

░░░░▄▀░░██████░░▄▀░░░░░░░░░░███░░░░▄▀▄▀▄▀░░░░███░░▄▀░░░░░░▄▀░░█░░▄▀░░░░‬

░░░░▄▀░░███░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█‬

█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀▄▀▄▀‬

▄▀▄▀▄▀░░██████░░▄▀▄▀▄▀▄▀▄▀░░█████░░▄▀▄▀▄▀░░█████░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀‬

▄▀▄▀▄▀░░███░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█‬

█░░░░░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░░░‬

░░▄▀░░░░██████░░▄▀░░░░░░░░░░███░░░░▄▀▄▀▄▀░░░░███░░▄▀░░░░░░░░░░█░░▄▀░░░░‬

░░▄▀░░░░███░░▄▀░░░░░░░░░░█░░░░░░░░░░▄▀░░█░░░░░░░░░░▄▀░░█‬

█████████░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░████░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░██‬

░░▄▀░░████████░░▄▀░░███████████░░▄▀▄▀░░▄▀▄▀░░███░░▄▀░░█████████░░▄▀░░██‬

░░▄▀░░█████░░▄▀░░█████████████████░░▄▀░░█████████░░▄▀░░█‬

█░░░░░░░░░░▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀░░░░░░░░▄▀░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░██‬

░░▄▀░░░░░░████░░▄▀░░░░░░░░░░█░░░░▄▀░░██░░▄▀░░░░█░░▄▀░░█████████░░▄▀░░██‬

░░▄▀░░░░░░█░░▄▀░░░░░░░░░░█░░░░░░░░░░▄▀░░█░░░░░░░░░░▄▀░░█‬

█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░██░░▄▀░░█░░▄▀▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░██‬

░░▄▀▄▀▄▀░░████░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀░░██░░▄▀▄▀░░█░░▄▀░░█████████░░▄▀░░██‬

░░▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█‬

█░░░░░░░░░░░░░░█░░░░░░██░░░░░░█░░░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░██‬

░░░░░░░░░░████░░░░░░░░░░░░░░█░░░░░░░░██░░░░░░░░█░░░░░░█████████░░░░░░██‬

░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█‬

███████████████████████████████████████████████████████████████████████‬

███████████████████████████████████████████████████████████████████████‬

████████████████████████████████████████████████████████‬

')‬

def‬‭
‭ exibir_opcoes():‬
print‬
‭ (‬
‭ '1. Cadastrar restaurante'‬
‭ )‬

print‬
‭ (‬
‭ '2. Listar restaurante'‬
‭ )‬

print‬
‭ (‬
‭ '3. Ativar restaurante'‬
‭ )‬

print‬
‭ (‬
‭ '4. Sair‬
‭ \n‬
‭ '‬
‭ )‬

def‬‭
‭ finalizar_app():‬
exibir_subtitulo(‬
‭ 'Finalizando app'‬
‭ )‬

def‬‭
‭ voltar_ao_menu_principal():‬
input‬
‭ (‬
‭ '‬
‭ \n‬
‭ Digite uma tecla para voltar ao menu‬
‭ \n‬
‭ '‭
‭)‬‬
#Esta linha de código deveria chamar alguma FUNÇÃO para fazer com‬

que o programa continue funcionando enternamente até que você decida‬

sair dele‬

def‬‭
‭ exibir_subtitulo(texto):‬
#Aqui está faltando alguma linha de código para fazer a limpeza do‬

CMD sempre que você escolher alguma opção no sistema‬

linha‬‭
‭ =‬‭
'*'‬‭
*‬‭
(‬len‬
‭ (texto))‬

print‬
‭ (linha)‬

print‬
‭ (texto)‬

print‬
‭ (linha)‬

def‬‭
‭ opcao_invalida():‬
print‬
‭ (‬
‭ 'opcao invalida‬
‭ \n‬
‭ '‬
‭ )‬

#Esta linha de código deveria chamar alguma FUNÇÃO.‬‭


‭ Sempre que‬
selecionar uma opção inválida, o programa deverá retornar ao início.‬

def‬‭
‭ cadastrar_novo_restaurante():‬
exibir_subtitulo(‬
‭ 'cadastro de novos restaurantes'‬
‭ )‬

nome_do_restaurante‬‭
‭ =‬‭
input‬
(‬
‭ 'Digite o nome do‬‭
‭ restaurante que‬
deseja cadastrar: '‬
‭ )‬

categoria_restaurante‬‭
‭ =‬ ‭
input‬
(‬
‭ F‬
‭ 'Digite a categoria‬‭
‭ do restaurante‬
{‭
‭n‬ome_do_restaurante‬
}‬
‭ : '‬
‭ )‬

dados_do_restaurante‬‭
‭ =‬‭
{‬'nome'‬
‭ :nome_do_restaurante,‬‭
‭ 'categoria'‬‭
:‬
categoria_restaurante,‬‭
‭ 'ativo'‬
:‭
‭F‬alse‬
}‬

restaurantes,(dados_do_restaurante)‬
‭ #Esta função‬‭
‭ está faltando o‬
comando para adicionar um item a final da lista‬

print‬
‭ (‬
‭ f‬
‭ 'O restaurante‬‭
‭ {‭
n‬ome_do_restaurante‬
}‬‭
‭ foi‬‭
cadastrado com‬
sucesso!‬
‭ \n‬
‭ '‬
‭ )‬

voltar_ao_menu_principal()‬

def‬‭
‭ listar_restaurantes():‬
exibir_subtitulo(‬
‭ 'Lista de restaurantes'‬
‭ )‬

print‬
‭ (‬
‭ f‬
‭ '‬
‭ {‭
‭'‬Nome do restaurante'‬
.ljust(‬
‭ 22‬
‭ )‬
‭ }‬‭
‭ |‬‭
{‭
'‬Categoria'‬
.ljust(‬
‭ 20‬
‭ )‭
‭}‬‬
|‬‭
‭ {‬'Status'‬
‭ .ljust(‬
‭ 20‬
‭ )‬
‭ }‬
‭ \n‬
‭ '‬
‭ )‬

for‬‭
‭ restaurante‬‭
in‬‭
restaurantes:‬
nome_restaurante‬‭
‭ =‬‭
#quero que a variável receba o valor da‬
chave 'nome' de cada restaurante‬

categoria_restaurante‬‭
‭ =‬‭
#quero que a variável receba o valor da‬
chave 'categoria' de cada restaurante‬

ativo‬‭
‭ =‬‭
'ativado'‬‭
if‬‭
restaurante[‬
'ativo'‬
‭ ]‬‭
‭ else‬‭
'desativado'‬
print‬
‭ (‬
‭ f‬
‭ '-‬‭
‭ {‬nome_restaurante.ljust(‬
‭ 20‬
‭ )‭
‭}‬‬‭
|‬
{‭
‭c‬ategoria_restaurante.ljust(‬
20‬
‭ )‬
‭ }‬‭
‭ |‬‭
{‬ativo.ljust(‬
‭ 20‬
‭ )‭
‭}‬‬
'‬
‭ )‬

voltar_ao_menu_principal()‬

def‬‭
‭ alternar_estado_restaurante():‬
exibir_subtitulo(‬
‭ 'Alternar estado do restaurante'‬
‭ )‬

nome_restaurante‬‭
‭ =‬‭
input‬
(‬
‭ 'Digite o nome do restaurante que deseja‬

alterar o estado: '‬
‭ )‬

restaurante_encontrado‬‭
‭ =‬‭
False‬

for‬‭
‭ restaurante‬‭
in‬‭
restaurantes:‬
if‬‭
‭ nome_restaurante‬‭
==‬‭
restaurante[‬
'nome'‬
‭ ]:‬

restaurante_encontrado‬‭
‭ =‬‭
True‬
restaurante[‬
‭ 'ativo'‬
‭ ]‬‭
‭ =‬‭
not‬‭
restaurante[‬
'ativo'‬
‭ ]‬

mensagem‬‭
‭ =‬‭
f‭
'‬O restaurante‬‭
{‬nome_restaurante‬
‭ }‬‭
‭ foi ativado‬
com sucesso'‬‭
‭ if‬‭
restaurante[‬
'ativo'‬
‭ ]‬‭
‭ else‬‭
f‬'O restaurante‬

{‭
‭n‬ome_restaurante‬
}‬‭
‭ foi desativado com sucesso'‬
print‬
‭ (mensagem)‬

if‬‭
‭ not‬‭
restaurante_encontrado:‬
print‬
‭ (‬
‭ 'O restaurante não foi encontrado.'‬
‭ )‬

voltar_ao_menu_principal()‬

def‬‭
‭ escolher_opcao():‬
try‬
‭ :‬

opcao_escolhida‬‭
‭ =‬‭
int‬
(‬
‭ input‬
‭ (‬
‭ 'Escolha uma opção:‬‭
‭ '‬))‬

match opcao_escolhida:‬

case :‬
‭ #falta a opção que faz entrar nessa condição‬

cadastrar_novo_restaurante()‬

case :‬
‭ #falta a opção que faz entrar nessa condição‬

listar_restaurantes()‬

case :‬
‭ #falta a opção que faz entrar nessa condição‬

alternar_estado_restaurante()‬

case :‬
‭ #falta a opção que faz entrar nessa‬‭
‭ condição‬
finalizar_app()‬

case :‬
‭ #falta a opção que faz entrar nessa condição‬

opcao_invalida()‬

except‬
‭ :‬

opcao_invalida()‬

def‬‭
‭ main():‬
os.system (‬
‭ 'cls'‬
‭ )‬

exibir_nome_do_programa()‬

exibir_opcoes()‬

escolher_opcao()‬

if‬‭
‭ __name__‬‭
==‬‭
'__main__'‬
:‬

main()‬

Você também pode gostar