Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Guia3/src/alternativa.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
from typing import List, Tuple, Dict

class Alternativa:
def __init__(self, texto: str, correta: bool, explicacao: str):
self.texto = texto
self.correta = correta
self.explicacao = explicacao
pass
19 changes: 17 additions & 2 deletions Guia3/src/pergunta.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,19 @@
from typing import List, Tuple, Dict
from abc import ABC, abstractmethod

class Pergunta:
pass
class Pergunta(ABC):
def __init__(self, texto: str, explicacao_geral: str):
self.texto = texto
self.explicacao_geral = explicacao_geral

@abstractmethod
def validarr_resposta(self, resposta: str) -> bool:
pass

@abstractmethod
def get_explicacao(self) -> str:
pass

@abstractmethod
def get_tipo(self) -> str:
pass
19 changes: 17 additions & 2 deletions Guia3/src/perguntadiscursiva.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,19 @@
from typing import List, Tuple, Dict

class PerguntaDiscursiva:
pass
from Guia3.src.pergunta import Pergunta

class PerguntaDiscursiva(Pergunta):
def __init__(self, texto: str, explicacao_geral: str, resposta_certa: str):
super().__init__(texto, explicacao_geral)
self.resposta_certa = resposta_certa

def validar_resposta(self, resposta: str) -> bool:
return resposta == self.resposta_certa

def get_explicacao(self) -> str:
return self.explicacao_geral

def get_tipo(self) -> str:
return "Discursiva"


20 changes: 18 additions & 2 deletions Guia3/src/perguntamultiplaescolha.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,20 @@
from typing import List, Tuple, Dict

class PerguntaMultiplaEscolha:
pass
from Guia3.src.pergunta import Pergunta

class PerguntaMultiplaEscolha(Pergunta):
def __init__(self, texto: str, explicacao_geral: str, alternativas: List[Dict[str, str]]):
super().__init__(texto, explicacao_geral)
self.alternativas = alternativas

def validar_resposta(self, resposta: str) -> bool:
for alternativa in self.alternativas:
if alternativa['texto'] == resposta:
return alternativa['correta']
return False

def get_explicacao(self) -> str:
return self.explicacao_geral

def get_tipo(self) -> str:
return "Multipla Escolha"
12 changes: 10 additions & 2 deletions Guia3/src/resposta.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
from typing import List, Tuple, Dict
from abc import ABC, abstractmethod
class Resposta(ABC):
def __init__(self, pergunta: str,esta_correta: bool,pontuacao_obtida: int):
self.pergunta = pergunta
self.esta_correta = esta_correta
self.pontuacao_obtida = pontuacao_obtida

class Resposta:
pass

@abstractmethod
def calcular_pontuacao(self) -> int:
pass
10 changes: 8 additions & 2 deletions Guia3/src/respostadiscursiva.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
from typing import List, Tuple, Dict

class RespostaDiscursiva:
pass
from Guia3.src.resposta import Resposta

class RespostaDiscursiva(Resposta):
def __init__(self, pergunta: str, esta_correta: bool, pontuacao_obtida: int):
super().__init__(pergunta, esta_correta, pontuacao_obtida)

def calcular_pontuacao(self) -> int:
return self.pontuacao_obtida
12 changes: 10 additions & 2 deletions Guia3/src/respostaobjetiva.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
from typing import List, Tuple, Dict

class RespostaObjetiva:
pass
from Guia3.src.resposta import Resposta

class RespostaObjetiva(Resposta):
def __init__(self, pergunta: str, esta_correta: bool, pontuacao_obtida: int):
super().__init__(pergunta, esta_correta, pontuacao_obtida)

def calcular_pontuacao(self) -> int:
return self.pontuacao_obtida