













Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
lógica e programação de algoritmos em python
Tipologia: Trabalhos
1 / 21
Esta página não é visível na pré-visualização
Não perca as partes importantes!














print('Bem-vindo a Loja do Fabio') valor = float(input('Digite o valor do produto: ')) #float para poder colocar números reais qdte = float(input('Digite a quantidade do produto: ')) total = valor * qdte print(f'Valor total SEM desconto = R${total:.2f}') # para que o valor tenha decimal com 2 números após a vírgula/ponto. livro. if total < 2500: # criar uma condição para poder executar desconto = 0 elif total < 6000: # senão, se... desconto = 0. elif total < 10000: # senão, se... desconto = 0. else: # e para finalizar adicionar o else que será a condição caso não seja nenhuma das condições anteriores desconto = 0. valorcomdesconto = total - (total * desconto) print(f'Valor COM desconto = R${valorcomdesconto:.2f}')
A. Deve-se implementar o print com uma mensagem de boas-vindas que apareça o seu nome [EXIGÊNCIA DE CÓDIGO 1 de 7]; B. Deve-se implementar a função escolha_servico() em que : [EXIGÊNCIA DE CÓDIGO 2 de 7]; a. Pergunta o servico desejado; b. Retorna o valor servico com base na escolha do usuário; c. Repete a pergunta do item B.a se digitar uma opção diferente de: dig/ico/ipb/fot; C. Deve-se implementar a função num_pagina() em que : [EXIGÊNCIA DE CÓDIGO 3 de 7]; a. Pergunta o número de páginas ; b. Retorna o número de páginas com desconto seguindo a regra do enunciado (desconto calculado em cima do número de páginas); c. Repete a pergunta do item C.a se digitar um valor acima de 20000 ou valor não numérico (use try/except para não numérico) D. Deve-se implementar a função servico_extra() em que : [EXIGÊNCIA DE CÓDIGO 4 de 7]; a. Pergunta pelo serviço adicional ; b. Retornar o valor de apenas uma das opções de adicional c. Repetir a pergunta item D.a se digitar uma opção diferente de: 1/2/0; E. Deve-se implementar o total a pagar no código principal ( main ), ou seja, não pode estar dentro de função, conforme o enunciado [EXIGÊNCIA DE CÓDIGO 5 de 7]; F. Deve-se implementar try/except [EXIGÊNCIA DE CÓDIGO 6 de 7]; G. Deve-se inserir comentários relevantes no código [EXIGÊNCIA DE CÓDIGO 7 de 7]; H. Deve-se apresentar na saída de console uma mensagem de boas-vindas com o seu nome [EXIGÊNCIA DE SAÍDA DE CONSOLE 1 de 4]; I. Deve-se apresentar na saída de console um pedido no qual o usuário errou a opção de serviço [EXIGÊNCIA DE SAÍDA DE CONSOLE 2 de 4]; J. Deve-se apresentar na saída de console um pedido no qual o usuário digitou ultrapassou no número de páginas [FOBDIGEXIGÊNCIA DE SAÍDA DE CONSOLE 3 de 4]; K. Deve-se apresentar na saída de console um pedido com opção de serviço, número de páginas e serviço extra válidos [EXIGÊNCIA DE SAÍDA DE CONSOLE 4 de 4];
print("Bem-vindo à copiadora do Fabio!") def taxa_do_servico(): # colocar uma função para definir a taxa do serviço solicitado while True: servico = input("Qual serviço você deseja? (DIG/ICO/IPB/FOT): ") if servico == 'DIG': return 1. elif servico == 'ICO': return 1. elif servico == 'IPB': return 0. elif servico == 'FOT': return 0. else: print("Não temos esse serviço, tente novamente.") def desconto_páginas(): # uma função para número de páginas/desconto com try e except while True: try: paginas = int(input("Quantas páginas? ")) if paginas < 20: return paginas elif paginas < 200: return paginas * 0. elif paginas < 2000: return paginas * 0. elif paginas < 20000: return paginas * 0. else: print("Caramba, isso é bastante coisa! Coloque um número menor por favor.") except ValueError: print("Isso não parece ser um número válido, tente novamente.") def extra_servico(): # uma função para os serviços extras while True: extra = input("Gostaria de adicionar encadernação? (1- Simples, 2- Capa dura, 0- Não): ") if extra == '1': return 15 elif extra == '2': return 40 elif extra == '0': return 0 else: print("Não entendi, escolha uma das opções válidas.") preco_servico = taxa_do_servico() # Solicita ao usuário para escolher o serviço e armazena o preço. páginas_desconto = desconto_páginas() # Solicita o número de páginas e calcula o desconto. preco_extra = extra_servico() # Pergunta se o usuário deseja um serviço extra e armazena o preço. subtotal_servico = preco_servico * páginas_desconto # Calcula o subtotal do serviço sem o serviço extra. total = subtotal_servico + preco_extra # Calcula o total incluindo o serviço extra.
print(f"Preço do serviço por página: R$ {preco_servico:.2f}") print(f"Número de páginas com desconto: {páginas_desconto} páginas") print(f"Custo do serviço sem extra: R$ {subtotal_servico:.2f}") if preco_extra == 15: print("Adicional por encadernação simples: R$ 15.00") elif preco_extra == 40: print("Adicional por encadernação de capa dura: R$ 40.00") elif preco_extra == 0: print("Sem serviço adicional extra.") print(f"Total a pagar: R$ {total:.2f}") # Mostra o total para o usuário.
vi. Enquanto o usuário não escolher a opção 4, o menu consultar livros deve se repetir. E. Deve-se implementar uma função chamada remover_livro() em que : [EXIGÊNCIA DE CÓDIGO 5 de 8]; a. Deve-se pergunta pelo id do livro a ser removido; b. Remover o livro da lista_livro ; c. Se o id fornecido não for de um livro da lista, printar “Id inválido” e repetir a pergunta E.a. F. Deve-se implementar uma estrutura de menu no código principal ( main ), ou seja, não pode estar dentro de função, em que: [EXIGÊNCIA DE CÓDIGO 6 de 8]; a. Deve-se pergunta qual opção deseja (1. Cadastrar Livro / 2. Consultar Livro / 3. Remover Livro / 4. Encerrar Programa): i. Se Cadastrar Livro, acrescentar em um id_ global e chamar a função cadastrar_livro(id_ global) ; ii. Se Consultar Livro, chamar função consultar_livro() ; iii. Se Remover Livro, chamar função remover_livro() ; iv. Se Encerrar Programa, sair do menu (e com isso acabar a execução do código); v. Se Entrar com um valor diferente de 1, 2, 3 ou 4, printar “Opção inválida" e repetir a pergunta F.a. vi. Enquanto o usuário não escolher a opção 4, o menu deve se repetir. G. Deve-se implementar uma lista de dicionários (uma lista contento dicionários dentro) [EXIGÊNCIA DE CÓDIGO 7 de 8]; H. Deve-se inserir comentários relevantes no código [EXIGÊNCIA DE CÓDIGO 8 de 8]; I. Deve-se apresentar na saída de console uma mensagem de boas-vindas com o seu nome [EXIGÊNCIA DE SAÍDA DE CONSOLE 1 de 6]; J. Deve-se apresentar na saída de console um cadastro de 3 livros (sendo 2 deles no mesmo autor) [EXIGÊNCIA DE SAÍDA DE CONSOLE 2 de 6]; K. Deve-se apresentar na saída de console uma consulta de todos os livros [EXIGÊNCIA DE SAÍDA DE CONSOLE 3 de 6]; L. Deve-se apresentar na saída de console uma consulta por código (id) de um dos livros [EXIGÊNCIA DE SAÍDA DE CONSOLE 4 de 6]; M. Deve-se apresentar na saída de console uma consulta por autor em que 2 livros sejam do mesmo autor [EXIGÊNCIA DE SAÍDA DE CONSOLE 5 de 6]; N. Deve-se apresentar na saída de console uma remoção de um dos livros seguida de uma consulta de todos os livros [EXIGÊNCIA DE SAÍDA DE CONSOLE 6 de 6];
EXEMPLO DE SAÍDA DE CONSOLE:
if opcao_menu == "1": cadastrar_livro(id_global) elif opcao_menu == "2": consultar_livro() elif opcao_menu == "3": remover_livro() elif opcao_menu == "4": print("Encerrando o programa...") break else: print("Opção inválida")