Buscar

ATIVIDADE PRATICA LINGUAGEM DE PROGRAMAÇÃO E ALGORITMOS - HEULER PROCÓPIO DORNELAS LAGE

Prévia do material em texto

ESCOLA SUPERIOR POLITÉCNICA 
BACHARELADO EM ENGENHARIA ELÉTRICA 
LÓGICA DE PROGRAMAÇÃO E ALGORITMOS 
 
 
 
 
 
 
 
ATIVIDADE PRÁTICA 
 
 
 
 
 
 
 
 
HEULER PROCÓPIO DORNELAS LAGE 
 
 
 
 
 
 
 
 
 
 
CORONEL FABRICIANO – MG 
2022 
 
 
 
1 
 
1 EXERCÍCIO 1 (EXEMPLO) 
Exercício 1: A ampliação do Ensino Fundamental para nove anos de duração, tornou a matrícula da criança obrigatória a partir dos seis anos 
de idade. Implemente um programa que fornecidos o nome e a idade de um criança classifique-a em uma das seguintes etapas de ensino: Ensino 
Faixa etária Educaçao Infantil 1 a 5 anos Ensino Fundamental I 6 a 10 anos Ensino Fundamental II 11 a 14 Ensino médio maiores de 15 anos O 
usuário deve ainda ter a opção de escolher se quer encerrar o programa ou não. Para teste utilize como nome da criança o seu nome e como idade 
os dois últimos dígitos do RU.Fazer um programa em linguagem Python que receber 3 valores inteiros do usuário e mostra a sua média na tela 
(que pode não ser inteira). 
Como dado de entrada, utilize os três últimos valores do seu RU. 
 
Solução do aluno: 
 
#rodar na lógica do programa para condição de laço. 
continuar = True 
#laço de repetição do programa lendo a entrada 
while continuar: 
 #entrada de dados 
 aluno = input('Nome da criança: ') 
 idade = int(input('Idade: ')) 
#enquadramento do ensino conforme a idade inserida 
 if (idade <= 5): ensino = 'ensino infantil' 
 elif (idade >= 6 and idade <= 10): ensino = 'ensino fundamental I' 
 elif (idade >= 11 and idade <= 14): ensino = 'ensino fundamental II' 
 else: ensino = 'ensino médio' 
#escrever na tela o resultado 
 print('O aluno {} tem {} anos de idade e está no {}'.format(aluno, idade, ensino)) 
#aguardando informação se deseja ou não prosseguir 
 
 
 
 
#converte o resultado da entrada string para int sendo 0 ou 1 em pytom 
#maneira que atende a pré-condição while 
continuar = int(input('Deseja continuar? 0 - Não 1 - Sim')) 
 
 
 
 
 
 
print('RU do aluno: 1567558') 
 
#Dados de entrada 
x = int(input('Digite um valor: ')) 
y = int(input('Digite um valor: ')) 
z = int(input('Digite um valor: ')) 
 
 
 
 
 
#Calculando a média e mostrando a saída 
media = (x + y + z) / 3 
print('Resposta: {}'.format(media)) 
 
 
Imagem do código funcionando no seu computador: 
 
Exercício 2: Faça um programa que solicite que o usuário digite um nome. O programa deve imprimir na tela o nome convertido no seguinte 
formato: L*C!@N& Para isso, o programa deve ser capaz de converter o nome digitado para maiúsculas e substituir as vogais pelos símbolos 
apresentados na tabela abaixo. 
 
 
 
 
 
 
 
Para teste utilize seu primeiro nome. 
#input variável nome 
nome = input('Digite seu nome: ') 
#fun-
ção upper para aquisitar dados para string e função replace para substituir as vogais por outros caracteres 
#escrever na tela o resultado com o nome já modificado com os caracteres 
print(nome.upper().replace('A', '@').replace('E', '&').replace('I', '!').replace('O', '#').replace('U', '*')) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Exercício 3: Implementar um jogo que é popular entre as crianças: um hotel onde os hóspedes têm algumas restrições quanto a localização de seu 
quarto, seguindo as seguintes regras: • O rato não pode ficar ao lado do gato. • O cão não pode ficar ao lado do osso. • O gato não pode ficar ao 
lado do cão. • O queijo não pode ficar ao lado do rato O jogo é composto por 4 fases, onde cada fase (a partir da fase 2) só é desbloqueada se a 
anterior for concluída com êxito. Em todas as fases, as células em cinza representam os quartos indisponíveis, portanto não podem ser alocados. 
As letras nas células correspondem aos seguintes hóspedes: G – GATO C – CÃO R – RATO O – OSSO Q – QUEIJO Ao término de cada fase o 
jogador deverá receber uma mensagem informando se teve êxito ou não na sua resposta. Se não teve êxito, o programa se encerra mostrando a 
mensagem: “Você perdeu!”. Se teve exito a próxima fase é desbloqueada, ao terminar a ultima fase com exito uma mensagem de “VocÊ ga-
nhou!” é mostrada na tela 
Na Fase 1, o jogador deve alocar o RATO e o GATO na seguinte matriz que representa os quartos: 
 
 
Na segunda fase o jogador deve alocar : CÃO, CÃO E OSSO. 
 
 
 
 
 
Na fase 3 o jogador deverá alocar : GATO, RATO E OSSO. 
 
Na fase 4, o jogador deverá alocar: QUEIJO, QUEIJO, OSSO. 
 
 
 
 
 
 
 
#Construi 'lista de padrão' com recuro DICTIONARY intríseco de LIST 
#como o programa é processado preferi colocar no while para possibilitar utilizar o mesmo código por mais vezes 
#Finalizo o programa com a função exit() 
 
#dicionario de hospedados 
hospedes = {'G':'GATO', 'C':'CÃO', 'R':'RATO', 'O':'OSSOS', 'Q':'QUEIJO'} 
 
#feedback da chave do dicionario conforme o valor inserido 
 
def procuraletra(dict,valor): 
 for letra, nome in dict.items(): 
 if nome == valor: 
 return letra 
 
 
 
 
 
#imprime mensagem de vitória 
 
def Won(): 
 print('Você ganhou!') 
 
#imprime se o usuário perdeu 
 
def GameOver(): 
 print('Você perdeu!') 
 exit() 
 
#geração dos caracteres do gato na tela 
#titulo do jogo 
#para escrever as listas na tela optei por utilizar o slice na mesma na mesma. 
 
def Posicoes(): 
 print(' /\_/\\') 
 print('( o.o )') 
 print(' > ^ <') 
 print('**HOTÉL DOS ANIMAIS**') 
 lista = [1,2,3,4,5,6,7,8] 
 print('Especificando posição:') 
 print(lista[0:4]) 
 print(lista[4:8]) 
 print('') 
 print('') 
 
#Regra fases 
#em todas as etapas de fase rodei regras estabelecidas por encadeamento conforme aula 
#ifs e elfi para aferir os resultados obtidos 
#resposta de errada a função GameOver() executa e finaliza o programa 
 
 
 
 
#usada a função int() -1 onde o -1 certifica que a posição digitada é a mesma da lista padrão 
 
def Fase1(): 
 print('Bem vindo a fase 1!') 
 print('Na Fase 1, o jogador deve alocar o RATO e o GATO na seguinte matriz que representa os quartos:') 
 lista = ['*','*','_',procuraletra(hospedes,'GATO'),procuraletra(hospedes, 'RATO'), '_', '*', '*'] 
 print(lista[0:4]) 
 print(lista[4:8]) 
 posicao1 = int(input('em qual posição você quer colocar o RATO: '))-1 
 posicao2 = int(input('em qual posição você quer colocar o GATO: '))-1 
 if(posicao1 != 5): 
 GameOver() 
 elif(posicao2 != 2): 
 GameOver() 
 else: 
 Won() 
 print('') 
 
def Fase2(): 
 print('Bem vindo a fase 2!') 
 print('Na segunda fase o jogador deve alocar : CÃO, CÃO E OSSO') 
 lista = ['_','*','*','*','*', procuraletra(hospedes, 'CÃO'), '_', '_'] 
 print(lista[0:4]) 
 print(lista[4:8]) 
 posicao1 = int(input('em qual posição você quer colocar o CÃO: '))-1 
 posicao2 = int(input('em qual posição você quer colocar o CÃO: '))-1 
 posicao3 = int(input('em qual posição você quer colocar o OSSO: '))-1 
 if(posicao1 != 6): 
 GameOver() 
 elif(posicao2 != 7): 
 GameOver() 
 
 
 
 
 elif(posicao3 != 0): 
 GameOver() 
 else: 
 Won() 
 print('') 
 
def Fase3(): 
 print('Bem vindo a fase 3!') 
 print('Na fase 3 o jogador deverá colocar : GATO, RATO E OSSO.') 
 lista = ['_','*','*','*','_', procuraletra(hospedes, 'GATO'), '_', '*'] 
 print(lista[0:4]) 
 print(lista[4:8]) 
 posicao1 = int(input('em qual posição você quer colocar o GATO: '))-1 
 posicao2 = int(input('em qual posição você quer colocar o RATO: '))-1 
 posicao3 = int(input('em qual posição você quer colocar o OSSO: '))-1if(posicao1 != 6): 
 GameOver() 
 elif(posicao2 != 0): 
 GameOver() 
 elif(posicao3 != 4): 
 GameOver() 
 else: 
 Won() 
 print('') 
 
def Fase4(): 
 print('Bem vindo a fase 4!') 
 print('Na fase 4, o jogador deverá alocar: QUEIJO, QUEIJO, OSSO.') 
 lista = ['_','_','_','*','*', procuraletra(hospedes, 'RATO'), '*', '*'] 
 print(lista[0:4]) 
 print(lista[4:8]) 
 
 
 
 
 posicao1 = int(input('em qual posição você quer colocar o QUEIJO: '))-1 
 posicao2 = int(input('em qual posição você quer colocar o QUEIJO: '))-1 
 posicao3 = int(input('em qual posição você quer colocar o OSSO: '))-1 
 if(posicao1 != 0 and posicao1 != 2): 
 GameOver() 
 elif(posicao2 != 0 and posicao2 != 2): 
 GameOver() 
 elif(posicao3 != 1): 
 GameOver() 
 else: 
 Won() 
Posicoes() 
Fase1() 
Fase2() 
Fase3() 
Fase4() 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Exercício 4: Uma escola de cursos de TI oferece vouchers para que os participantes possam assistir algumas aulas gratuitas de Python. Para isso 
o participante que deseja assistir as aulas gratuitas desse curso específico, deve fazer uma inscrição para receber o voucher. Implemente um pro-
grama que armazene as inscrições para o curso. O programa deverá armazenar para cada inscrição: Um código único para o voucher Nome Email 
Telefone Curso O programa deverá apresentar um menu de opções ao usuário: 
 
1 –inscrição: ao selecionar essa opção, o usuário deverá ser capaz de informar todos os dados da inscrição. O código do voucher deve ser preen-
chido automaticamente pelo sistema, e o usuário não deve ter a opção de alterar esse código; 
2 – visualizar inscrição: ao selecionar essa opção, o programa deverá imprimir, na tela, para cada reserva, todos os dados dessa inscrição. Caso 
nenhuma inscrição tenha sido cadastrada ao selecionar essa opção, o programa deverá exibir a mensagem “nenhuma inscrição cadastrada”. 
0 – Encerrar: ao selecionar essa opção, o programa se encerra. 
 
Caso o usuário escolha uma opção que não conste no menu, o programa deverá exibir uma mensagem de erro, por exemplo, “Erro: digite uma 
opção válida!”. Para teste utilize o seu nome e como telefone os dígitos do seu RU. 
 
 
 
 
 
 
 
 
 
 
 
Código desenvolvido: 
#import de libs randint e seed 
from random import seed 
from random import randint 
 
#declarar variáveis 
listaAlunos = []; 
 
#gerar um número entre 100 a 400 
#usei função seed() sem transferir parâmetros para números aleatórios 
 
def VoucherNumero(): 
 seed() 
 return randint(100,400) 
 
#funcao principal 
#ela monta um menu geral, sendo chamada no final de cada função para para ciclar sempre a lógica até finalizar
 com o 3 
def Menu(): 
 titulo = '-'*10 + 'Menu' + '-'*10 
 print('1 - Nova inscrição') 
 print('2 - Visualizar inscrição') 
 print('3 - Encerar') 
 print(titulo) 
 opçao = int(input('Opção escolhida: ')) 
 if(opçao == 1): 
 Cadastro() 
 elif (opçao == 2): 
 ListaCadastrados() 
 elif (opçao == 3): 
 exit() 
 
 
 
 
 else: 
 print('Erro digite uma opção válida') 
 Menu() 
 
#input de dados para cadastro 
 
def Cadastro(): 
 nome = input('Digite seu nome: ') 
 email = input('Digite seu e-mail: ') 
 telefone = input('Digite seu telefone: ') 
 curso = input('Digite seu curso: ') 
 dic = {'voucher':VoucherNumero(),'nome': nome,'email':email,'telefone':telefone,'curso':curso} 
 listaAlunos.append(dic) 
 Menu() 
 
#busca cadastro de opções, utilizei dois loops intertravados para chamar igual é solicitado na lista 
 
def ListaCadastrados(): 
 for item in listaAlunos: 
 for key in item: 
 print(key, ':', item[key]) 
Menu() 
 
#função que inicia o encadeamento das funções. 
Menu()

Continue navegando