Este curso não está completo. São apenas algumas aulas liberadas gratuitamente por amor a comunidade Python. O curso completo encontra-se na Udemy e tem mais de 200 aulas, link na descrição do vídeo.
Praticamente uma aplicação prática dos conceitos mais básicos vistos até agora. Utilizou dicionários, variáveis, operador for, e operadores matemáticos. Faltou utilizar as flags split, upper, capitalize, pop, etc... Ótima aula para condensar conhecimento.
Pessoal que ficou com problema com o código. Eu fiz o meu aqui com algumas condições a mais: import time perguntas = { '1-Pergunta': { 'pergunta': 'Qual é a síndrome que ataca mais pessoas no mundo atualmente?', 'alternativas': {'a': 'Síndrome do pânico', 'b': 'Síndromes Genéticas', 'c': 'Síndrome do pensamento acelerado'}, 'correta': 'c', }, '2-Pergunta': { 'pergunta': 'Qual a linguagem de programação com maior ascensão na atualidade?', 'alternativas': {'a': 'Java', 'b': 'C++', 'c': 'Javascript', 'd': 'Python'}, 'correta': 'd', }, '3-Pergunta': { 'pergunta': 'Qual nome da IA com capacidade de atuar no âmbito jurídico?', 'alternativas': {'a': 'ROSS', 'b': 'WATSON', 'c': 'IBM', 'd': 'Amazon'}, 'correta': 'a', }, } resposta_correta, resposta_errada, totalpontos = 0, 0, 0 print("\033[1;33mBem vindo ao QUIZ sobre conhecimentos gerais\033[m") while True: print(""" Instruções antes de começar o jogo Digite: I - para acessar painel de dicas; Digite: C - para começar a jogar; Digite: S - se quiser sair sem iniciar o jogo. """) instru = input("Escolha uma das opções acima: ").strip().upper()[0] if instru not in 'ICS': continue if instru in 'I': print(""" PAINEL DE DICAS! O jogo irá passar questões relacionado a atualidade do mundo e colocará três alternativas para você escolher. Caso você acertar uma alternativa você ganhará um ponto para passar de nível, e se perder irá voltar de nível. Os temas são: Tecnologia, Psicologia, Direito, Crimes, Política. """) elif instru in 'C': print("O jogo irá começar em... ") for i in range(0, 4): print(i) time.sleep(0.50) break if instru in 'S': quit() print("-="*10, " QUIZ - PERGUNTAS E RESPOSTAS ", "-="*10) for pk, pv in perguntas.items(): print(f"{pk}: {pv['pergunta']}") print() print("ALTERNATIVAS:") for ak, av in pv['alternativas'].items():
print(f" {ak}) {av}") print() while True: resposta_user = input("Escolha uma alternativa: ").strip()[0] if resposta_user in pv['alternativas'].keys(): break if resposta_user == pv['correta']: print("Parabéns meu caro, você acertou essa questão!") resposta_correta += 1 totalpontos += 1 else: print("Você errou e perdeu um ponto!") resposta_errada += 1 totalpontos -= 1 print("Computando os resultados...") time.sleep(2) print(f"De {len(perguntas)} você acertou {resposta_correta} e errou {resposta_errada}") print(f"Sua pontuação atual é {totalpontos}") print(f"A porcentagem de acertos foi {resposta_correta / len(perguntas) * 100}%")
Boa noite! Como esse programa seria possível criar um programa de perguntas e respostas para estoque indicando a posição do produto. Tipo eu pergunto em um microfone sobre determinado nome de produto e ele responde a posição 1 por exemplo. Não quero digitar a pergunta quero fazer a pergunta eu mesmo para o aplicativo.
Bom dia, peguei a ideia da sua questao e tentei incrementar com outras coisa pra praticar principalmente a questao de dicionario e listas...... fica a sugestao pra glr tbm... import random perguntas = { 1:{ 'questao':'quanto e 2+2?', 'resposta' : {'A':'1', 'B': '2', 'C':'4', 'D': '6'}, 'gabarito': 'C'}, 2:{ 'questao':'quanto e 2+1?', 'resposta' : {'A':'3', 'B': '2', 'C':'4', 'D': '6'}, 'gabarito': 'A'} #ETC AQUI PODE COLCOAR N QUESTOES } def corretor(resp:list,gab:list)->list: """Corrigir a prova, recebe o gabarito e as resposta e retornar nota do aluno com uma lista das respostas certas e erradas.""" qtd = len(gab) #VERIFICA O TAMANHO DO GABARITO PRA DETERMINAR A QTD DE QUESTOES E O PESO DE CADA UMA peso_nota = 10.0/qtd #ATRIBUI O PESO DE ACERTO A CADA QUESTAO nota = 0.0 correcao = [] for r, g in zip(resp, gab): #FOR COMPARANDO AS RESPOSTAS COM O GABARITO, INCREMENTANDO A NOTA E INCLUINDO ELAS NUMA TABELA if r == g: correcao.append(1) nota += peso_nota else: correcao.append(0) return nota , correcao gabarito_aluno = [] gabarito_prova = [] numero_de_questores = int(input("Numero de questoes: ")) if numero_de_questores == 0: numero_de_questores += 1 sorteio = random.sample(range(1,6),numero_de_questores) for i in sorteio: print(perguntas[i]['questao']) for n in perguntas[i]['resposta']: print(f"{n} - {perguntas[i]['resposta'][n]}") resposta_aluno = str.capitalize(input("Digite sua resposta: ")) gabarito_aluno.append(resposta_aluno) gabarito_prova.append(perguntas[i]['gabarito'])
#CORREÇÃO DA PROVA E NOTA DO ALUNO nota_aluno = corretor(list(gabarito_aluno),list(gabarito_prova)) print(f"A nota do aluno foi: {nota_aluno[0]}") print(f"Os acertos do aluno: {nota_aluno[1]}")
quando eu termino de responder as minhas perguntas no prompt, ele fecha automaticamente, não consigo ver a mensagem de porcentagem e a de acertos, alguém sabe como ajudar?
Tem algum comando de Retorno? Tipo pergunta1 = input('Olá, qual seu nome?') print('Olá,',pergunta1) pergunta2 = input('deseja retornar a primeira pergunta?') if pergunta2 == 'Sim': return to pergunta1 A parte do "return to pergunta1" é só um exemplo.... Só queria saber se tem como fazer um negócio assim, iria facilitar muito XD
Alguém pode me mostrar onde estou errando? Essa caceta de for me buga a cabeça... Quero apenas exibir dessa forma na tela: Carro 1 Brand: Ford Model: Mustang Year: 1964 e segue adiante Código ----------------------- car = { 'Carro 1':{ 'brand': 'Ford', 'model': {'Mustang',}, 'year': '1964', },
Feliz Natal amigo! Ficaria dessa forma: for c, ic in car.items(): print(c) for e, r in ic.items(): print(f'{e.title()}: {r.title()}') print() c - carro ic - índice do carro e - especificação r - resposta Você deve fazer um for dentro de outro for, por ser um dicionário contendo outros dicionários. Espero ter ajudado de alguma forma. Abraços!
Este curso não está completo. São apenas algumas aulas liberadas gratuitamente por amor a comunidade Python. O curso completo encontra-se na Udemy e tem mais de 200 aulas, link na descrição do vídeo.
valeu pela aula, esse monte de dicionário um dentro do outro mais esse tanto de for dá uma confusão danada😅
Praticamente uma aplicação prática dos conceitos mais básicos vistos até agora. Utilizou dicionários, variáveis, operador for, e operadores matemáticos. Faltou utilizar as flags split, upper, capitalize, pop, etc... Ótima aula para condensar conhecimento.
muito bommmm
Oi, legal. Dá para você fazer novamente, só que com perguntas da biblia? Estou esperando, obrigado.
pode disponibilizar o código?
Como faria para fazer este mesmo programa e executar ele podendo mandar para alguém mexer também como um aplicativo normal pelo celular e computar?
estou esperando a parte Gráfica do jogo aparte de Angola
Pessoal que ficou com problema com o código. Eu fiz o meu aqui com algumas condições a mais:
import time
perguntas = {
'1-Pergunta': {
'pergunta': 'Qual é a síndrome que ataca mais pessoas no mundo atualmente?',
'alternativas': {'a': 'Síndrome do pânico', 'b': 'Síndromes Genéticas', 'c': 'Síndrome do pensamento acelerado'},
'correta': 'c',
},
'2-Pergunta': {
'pergunta': 'Qual a linguagem de programação com maior ascensão na atualidade?',
'alternativas': {'a': 'Java', 'b': 'C++', 'c': 'Javascript', 'd': 'Python'},
'correta': 'd',
},
'3-Pergunta': {
'pergunta': 'Qual nome da IA com capacidade de atuar no âmbito jurídico?',
'alternativas': {'a': 'ROSS', 'b': 'WATSON', 'c': 'IBM', 'd': 'Amazon'},
'correta': 'a',
},
}
resposta_correta, resposta_errada, totalpontos = 0, 0, 0
print("\033[1;33mBem vindo ao QUIZ sobre conhecimentos gerais\033[m")
while True:
print("""
Instruções antes de começar o jogo
Digite: I - para acessar painel de dicas;
Digite: C - para começar a jogar;
Digite: S - se quiser sair sem iniciar o jogo.
""")
instru = input("Escolha uma das opções acima: ").strip().upper()[0]
if instru not in 'ICS':
continue
if instru in 'I':
print("""
PAINEL DE DICAS!
O jogo irá passar questões relacionado a atualidade do mundo e colocará três alternativas para você escolher.
Caso você acertar uma alternativa você ganhará um ponto para passar de nível, e se perder irá voltar de nível.
Os temas são: Tecnologia, Psicologia, Direito, Crimes, Política.
""")
elif instru in 'C':
print("O jogo irá começar em... ")
for i in range(0, 4):
print(i)
time.sleep(0.50)
break
if instru in 'S':
quit()
print("-="*10, " QUIZ - PERGUNTAS E RESPOSTAS ", "-="*10)
for pk, pv in perguntas.items():
print(f"{pk}: {pv['pergunta']}")
print()
print("ALTERNATIVAS:")
for ak, av in pv['alternativas'].items():
print(f" {ak}) {av}")
print()
while True:
resposta_user = input("Escolha uma alternativa: ").strip()[0]
if resposta_user in pv['alternativas'].keys():
break
if resposta_user == pv['correta']:
print("Parabéns meu caro, você acertou essa questão!")
resposta_correta += 1
totalpontos += 1
else:
print("Você errou e perdeu um ponto!")
resposta_errada += 1
totalpontos -= 1
print("Computando os resultados...")
time.sleep(2)
print(f"De {len(perguntas)} você acertou {resposta_correta} e errou {resposta_errada}")
print(f"Sua pontuação atual é {totalpontos}")
print(f"A porcentagem de acertos foi {resposta_correta / len(perguntas) * 100}%")
Show de bola!!!
Como faz para deixar as perguntas aleatorias?
Oi, Como faso para colocar uma mesagem differente para cara acerto?
Boa noite! Como esse programa seria possível criar um programa de perguntas e respostas para estoque indicando a posição do produto. Tipo eu pergunto em um microfone sobre determinado nome de produto e ele responde a posição 1 por exemplo. Não quero digitar a pergunta quero fazer a pergunta eu mesmo para o aplicativo.
Onde consigo o código completo, o meu não rodou, está dando erro no segundo for.
Bom dia, peguei a ideia da sua questao e tentei incrementar com outras coisa pra praticar principalmente a questao de dicionario e listas...... fica a sugestao pra glr tbm...
import random
perguntas = { 1:{
'questao':'quanto e 2+2?',
'resposta' : {'A':'1', 'B': '2', 'C':'4', 'D': '6'},
'gabarito': 'C'},
2:{
'questao':'quanto e 2+1?',
'resposta' : {'A':'3', 'B': '2', 'C':'4', 'D': '6'},
'gabarito': 'A'}
#ETC AQUI PODE COLCOAR N QUESTOES
}
def corretor(resp:list,gab:list)->list:
"""Corrigir a prova, recebe o gabarito e as resposta e retornar nota do aluno com uma lista das respostas certas e erradas."""
qtd = len(gab) #VERIFICA O TAMANHO DO GABARITO PRA DETERMINAR A QTD DE QUESTOES E O PESO DE CADA UMA
peso_nota = 10.0/qtd #ATRIBUI O PESO DE ACERTO A CADA QUESTAO
nota = 0.0
correcao = []
for r, g in zip(resp, gab): #FOR COMPARANDO AS RESPOSTAS COM O GABARITO, INCREMENTANDO A NOTA E INCLUINDO ELAS NUMA TABELA
if r == g:
correcao.append(1)
nota += peso_nota
else:
correcao.append(0)
return nota , correcao
gabarito_aluno = []
gabarito_prova = []
numero_de_questores = int(input("Numero de questoes: "))
if numero_de_questores == 0:
numero_de_questores += 1
sorteio = random.sample(range(1,6),numero_de_questores)
for i in sorteio:
print(perguntas[i]['questao'])
for n in perguntas[i]['resposta']:
print(f"{n} - {perguntas[i]['resposta'][n]}")
resposta_aluno = str.capitalize(input("Digite sua resposta: "))
gabarito_aluno.append(resposta_aluno)
gabarito_prova.append(perguntas[i]['gabarito'])
#CORREÇÃO DA PROVA E NOTA DO ALUNO
nota_aluno = corretor(list(gabarito_aluno),list(gabarito_prova))
print(f"A nota do aluno foi: {nota_aluno[0]}")
print(f"Os acertos do aluno: {nota_aluno[1]}")
quando eu termino de responder as minhas perguntas no prompt, ele fecha automaticamente, não consigo ver a mensagem de porcentagem e a de acertos, alguém sabe como ajudar?
Você trabalha com programação?
como eu faço pra sortear uma pergunta e printar?
Usa a função randint
From random import randint (Isso vc vai importar ela)
@@pedrocorreadeguamaspelta1113 tem como vc mandar o codigo? nao entendi como vc disse
pfv
e se eu quisesse fazer essas perguntas de maneira aleatória 5 vezes sem se repetir?
Tem algum comando de Retorno? Tipo
pergunta1 = input('Olá, qual seu nome?')
print('Olá,',pergunta1)
pergunta2 = input('deseja retornar a primeira pergunta?')
if pergunta2 == 'Sim':
return to pergunta1
A parte do "return to pergunta1" é só um exemplo.... Só queria saber se tem como fazer um negócio assim, iria facilitar muito XD
Você pode fazer isso com While
Alguém pode me mostrar onde estou errando?
Essa caceta de for me buga a cabeça...
Quero apenas exibir dessa forma na tela:
Carro 1
Brand: Ford
Model: Mustang
Year: 1964
e segue adiante
Código
-----------------------
car = {
'Carro 1':{
'brand': 'Ford',
'model': {'Mustang',},
'year': '1964', },
'Carro 2':{
'brand': 'Chevrolet',
'model': {'Pickup',},
'year': '1990', },
'Carro 3':{
'brand': 'Mercedez',
'model': {'Edição Luxo 2020',},
'year': '2020', },
'Carro 4':{
'brand': 'KIA',
'model': {'Sportage',},
'year': '2015', },
}
for tit1, subtit in car.items():
print(f'{tit1}')
for i, j in subtit['model'].items():
print(f'{i}:{j["model"]}')
print()
Feliz Natal amigo!
Ficaria dessa forma:
for c, ic in car.items():
print(c)
for e, r in ic.items():
print(f'{e.title()}: {r.title()}')
print()
c - carro
ic - índice do carro
e - especificação
r - resposta
Você deve fazer um for dentro de outro for, por ser um dicionário contendo outros dicionários. Espero ter ajudado de alguma forma. Abraços!