-
Notifications
You must be signed in to change notification settings - Fork 0
/
aluno.py
73 lines (57 loc) · 2.18 KB
/
aluno.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#
# Autores:
# Michel Silva
# Emanuel Frank
# Carlos Eduardo
# data: 08/07/2022
#
# imortar as classes
from pessoa01 import Pessoa01
# classe aluno
class Aluno(Pessoa01): # herda de Pessoa (classe base) e tem seus atributos e metodos herdados
def __init__(self, nome, idade, matricula, nota1: int, nota2: int): # construtor da classe Aluno (subclasse)
super().__init__(nome, idade) # chama o construtor da classe base (Pessoa)
self.matricula = matricula # atributo da classe Aluno (subclasse)
self.nota1 = nota1 # atributo da classe Aluno (subclasse)
self.nota2 = nota2 # atributo da classe Aluno (subclasse)
def falar(self): # metodo da classe Aluno (subclasse) que sobrescreve o metodo da classe base (Pessoa)
print("Olá, meu nome é " + self.nome) # imprime o nome da classe Aluno (subclasse) e não o nome da classe base (Pessoa)
# getters
@property
def matricula(self):
return self._matricula
@property
def nota1(self):
return self._nota1
@property
def nota2(self):
return self._nota2
# setters
@matricula.setter
def matricula(self, matricula):
self._matricula = matricula
@nota1.setter
def nota1(self, nota1):
self._nota1 = nota1
@nota2.setter
def nota2(self, nota2):
self._nota2 = nota2
# metodo que imprime a matricula do aluno
def imprimir_matricula(self):
print("Minha matrícula é " + self.matricula)
# metodo que verfica se o aluno foi aprovado ou retido
def verificar_aprovacao(self):
media = (self.nota1 + self.nota2) / 2
if media >= 7:
return "Parabéns, você foi aprovado!"
else:
return "Infelizmente você foi retido!"
# metodo que imprime a media do aluno
def imprimir_media(self):
media = (self.nota1 + self.nota2) / 2 # calcula a media do aluno
return f"Sua média é {media}" # retorna a media do aluno
# metodo que imprime dados do aluno
def imprimir_dados(self):
self.imprimir_matricula() # chama o metodo imprimir_matricula() da classe Aluno (subclasse)
print(self.verificar_aprovacao()) # chama o metodo verificar_aprovacao() da classe Aluno (subclasse)
print(self.imprimir_media()) # chama o metodo imprimir_media() da classe Aluno (subclasse)