Difference between revisions of "Programação com Objectos/Aula Prática 05/Exercício de C++"

From Wiki**3

< Programação com Objectos‎ | Aula Prática 05
(Created page with "'''Exercício de C++ da semana 05 -- entregar exclusivamente em papel na aula prática da semana 06.''' == Herança, Composição, Polimorfismo, Overloading, Overriding == M...")
 
 
Line 1: Line 1:
'''Exercício de C++ da semana 05 -- entregar exclusivamente em papel na aula prática da semana 06.'''
+
'''Exercício de C++ da semana 05 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 06.'''
  
 
== Herança, Composição, Polimorfismo, Overloading, Overriding ==
 
== Herança, Composição, Polimorfismo, Overloading, Overriding ==

Latest revision as of 09:15, 2 October 2019

Exercício de C++ da semana 05 -- entregar exclusivamente, em papel A4 manuscrito, na aula prática da semana 06.

Herança, Composição, Polimorfismo, Overloading, Overriding

Modele e implemente a classe Table que contém um número fixo de inteiros (especificado na altura da criação das suas instâncias). Essa classe possui um método (print) que permite imprimir todo o conteúdo, aplicando um formato a cada valor. O formato aplicado por print varia de acordo com o tipo de “impressora” (objecto do tipo Printer, passados como argumento de print). As potenciais impressoras têm um método format (aceita um inteiro e devolve uma cadeia de caracteres – tipo std::string) que permite apresentar um valor inteiro de uma forma específica para cada impressora. Defina os conceitos Table e Printer. Defina ainda duas impressoras: uma que formata cada inteiro entre parânteses rectos (BracketsPrinter); e outra que repita cada valor duas vezes cada um dos valores da tabela (DuplicatePrinter). Pode realizar outros conceitos/métodos que julgue necessitar. Evite repetições de código.