Antigamente a Disciplina de
Fundamentos de Programação 2 tinha duas provas, uma em cada parcial. A partir
do 1º Semestre de 2012, isto mudou, passando a ser uma prova. Assim, tanto as antigas provas de 1ª
parcial como as de 2ª parcial servem como exemplo de conteúdos a serem
abordados na única prova regular da disciplina em questão. O mesmo se
aplica para o Exame de Recuperação. Ainda a partir do 1º Semestre de 2015
as provas de algumas turmas passaram a ser elaboradas em conjunto pelos
professores da disciplina, por uma dada idiossincrasia. Para estudos,
provavelmente o melhor seria começar das provas mais recentes para as mais
antigas.
------------------------------------------------------------------------------------------------------------
AQUI HÁ EXEMPLOS DE PROVA DE QUANDO HAVIA DUAS PROVAS NA DISCIPLINA -
ERA UMA PROVA
Para obter um exemplo de prova, clique em:
Exemplos de Provas de 1a.
Parcial:
Provas longas:
Exemplo de Prova A1 (Prova de 1a Parcial) – disponibilizado em março de 2008.
– Uma solução para a Prova A1 (Prova de 1a Parcial)
– disponibilizado em 30/09/2010
– Diagrama de classes da Prova A1 – disponibilizado em 30/09/2010 (em StarUML)
Exemplo de Prova A2 (Prova de 1a Parcial) – disponibilizado em 16/04/2008
Uma solução para a Prova A2 (Prova de 1a Parcial) – disponibilizado em 30/09/2010.
Diagrama de classes
para a Prova A2 – disponibilizado em 30/09/2010 (em StarUML)
Provas
médias:
Exemplo de Prova A3 (Prova de 1a Parcial) – disponibilizado em 13/10/2008.
Uma solução para a Prova A4 (Prova de 1a Parcial) – disponibilizado em 01/10/2010.
Exemplo de Prova A4 (Prova de 1a Parcial) – disponibilizado em 13/10/2008.
Uma solução para a Prova A4 (Prova de 1a Parcial) – disponibilizado em 01/10/2010.
Diagrama de classes para a Prova A4 – disponibilizado em 01/10/2010 (em StarUML)
Exemplo de Prova A5 (Prova de 1a Parcial) – disponibilizado em 07/04/2009.
Uma solução para a
Prova A5 (Prova de 1a Parcial) –
disponibilizado em 01/10/2010.
Exemplo de Prova A6 (Prova de 1a Parcial) – disponibilizado em 07/04/2009.
Uma solução para a
Prova A6 (Prova de 1a Parcial) –
disponibilizado em 01/10/2010.
Diagrama de classes para
a Prova A6 – disponibilizado em 01/10/2010 (em StarUML)
Exemplo de Prova A7 (Prova de 1a Parcial) – disponibilizado em 11/12/2009.
Uma solução para a Prova A7 (Prova de 1a Parcial) – disponibilizado em 01/09/2010.
Exemplo de Prova A8 (Prova de 1a Parcial) – disponibilizado em 11/12/2009.
Uma solução para a Prova A8 (Prova de 1a Parcial) – disponibilizado em 30/04/2010.
Exemplo de Prova A9 (Prova de 1a Parcial) – disponibilizado em 14/05/2010.
Uma solução para a Prova A9
(Prova de 1a Parcial) – disponibilizado
em 14/05/2010.
Exemplo de Prova A10 (Prova de 1a Parcial) – similar a A9.
Exemplo de Prova A11 (Prova de 1a Parcial)
Uma solução para a Prova A11 (Prova de 1a Parcial) – disponibilizado em 18/10/2010.
Exemplo de Prova A12 (Prova de 1a Parcial) – disponibilizado em 02/05/2011
Uma solução para a Prova A12 (Prova de 1a Parcial) – disponibilizado em 17/05/2011.
Exemplo de Prova A13 (Prova de 1a Parcial) – disponibilizado em 18/10/2011
Uma solução para a Prova A13 – disponibilizado em 18/10/2011.
Diag. de classes
para a Prova A13 – disponibilizado em 18/10/2011 (em StarUML).
Diag. de classes para a Prova A13 – disponibilizado em 18/10/2011 (em jpeg).
Exemplos
de Provas de 2a. Parcial:
Exemplo de Prova B1 (Prova de 2a Parcial) – disponibilizado em 01/01/2008.
Uma solução para a Prova B1 (Prova de 2a Parcial) – disponibilizado em 01/12/2010.
Diag. de classes para a Prova B1 (Prova de 2a Parcial) – disponibilizado em 01/12/2010.
Exemplo de Prova B2 (Prova de 2a Parcial) – disponibilizado em 03/01/2008.
Uma solução para a Prova B2 (Prova de 2a Parcial) – disponibilizado em 01/12/2010.
Exemplo de Prova B3 (Prova de 2a Parcial) – disponibilizado em 01/12/2008.
Uma solução para a Prova B3 (Prova de 2a Parcial) – disponibilizado em 01/06/2010.
Revisado
em 03/12/2010
Diag. de classes para a Prova B3 (Prova de 2a Parcial) – disponibilizado em 02/06/2010.
Revisado em 03/12/2010
Exemplo de Prova B4 (Prova de 2a Parcial) – disponibilizado em 08/12/2008.
Uma solução para a Prova B4 (Prova de 2a Parcial) – disponibilizado em 03/12/2010.
Diag. de classes para a Prova B4 (Prova de 2a Parcial) – disponibilizado em 03/12/2010.
Exemplo de Prova B5 (Prova de 2a Parcial) – disponibilizado em 30/06/2009.
Uma solução para a Prova B5 (Prova de 2a Parcial) – disponibilizado em 10/06/2010.
Revisado em
03/12/2010
Diag. de classes para a Prova B5 (Prova de 2a Parcial) – disponibilizado em 02/06/2010.
Revisado em 03/12/2010
Exemplo de Prova B6 (Prova de 2a Parcial) – disponibilizado em 30/06/2009.
Uma solução para a Prova B6 (Prova de 2a Parcial) – disponibilizado em 17/06/2010.
Revisado em 03/12/2010
Diag. de classes para a Prova B6 (Prova de 2a Parcial) – disponibilizado em 17/06/2010.
Revisado
em 03/12/2010
Exemplo de Prova B7 (Prova de 2a Parcial) – disponibilizado em 11/12/2009.
Uma solução para a Prova B7 (Prova de 2a Parcial) – disponibilizado em 17/06/2010.
Revisado em 03/12/2010
Exemplo de Prova B8 (Prova de 2a Parcial) – disponibilizado em 11/12/2009.
Uma solução para a Prova B8 (Prova de 2a Parcial) – disponibilizado em 17/06/2010.
Revisado em 03/12/2010
Exemplo de Prova B9 (Prova de 2a Parcial) – disponibilizado em 24/06/2010.
Uma solução para a Prova B9 (Prova de 2a Parcial) – disponibilizado em 28/06/2010.
Revisado em 03/12/2010
Exemplo de Prova B10 (Prova de 2a Parcial) – idem B9.
Exemplo de Prova B11 (Prova de 2a Parcial) – disponibilizado em 07/12/2010.
Uma solução para a Prova B11 (Prova de 2a Parcial) – disponibilizado em 07/12/2010.
Exemplo de Prova B12
(Prova de 2a Parcial) –
disponibilizado em 24/06/2011.
Uma solução para a Prova B12
(Prova de 2a Parcial) – disponibilizado
em 24/06/2011.
Exemplo de Prova B13 (Prova de 2a Parcial) – disponibilizado em 29/11/2011
Uma solução para a Prova B13 – disponibilizado em 05/12/2011 ( a ser
disponibilizado).
Diag. de classes
para a Prova B13 – disponibilizado em 05/12/2011 (em StarUML idem)
Diag. de classes para a Prova B13 – disponibilizado em 05/12/2011 (em jpeg - idem).
Outros Exemplos de Provas
Exemplo de Prova C1 (Prova de 1a Parcial) – disponibilizado em 29/11/2011.
– Uma solução para a Prova C1 (Prova de 1a Parcial)
– disponibilizado em 29/11/2011
–
Diagrama de classes da Prova C1 – disponibilizado em 29/11/2011 (em jpg)
------------------------------------------------------------------------------------------------------------
OBS: AS PROVAS ACIMA TAMBÉM
SERVEM DE EXEMPLO PARA A PROVA QUE OCORRE ATUALMENTE
AQUI HÁ EXEMPLO DE PROVA DE QUANDO A DISCIPLINA PASSOU A TER UMA PROVA,
A QUAL SE CONSTITUI NA (PARTE ESSENCIAL DA) NOTA DA PRIMEIRA PARCIAL.
Exemplo de Prova U1 (Prova para nota de 1a Parcial) – disponibilizado em 14/05/2012.
Uma solução
para a Prova U1 – disponibilizado em
14/05/2012.
Exemplo de Prova U2 (Prova para nota de 1a Parcial) – disponibilizado em 26/03/2013.
Uma solução para a Prova
U2 – disponibilizado em 26/03/2013.
Exemplo de Prova U3 (Prova para nota de 1a Parcial) – disponibilizado em 28/08/2013
Uma solução para a Prova U3 – disponibilizado em 28/08/2013.
Exemplo de Prova U4 (Prova para nota de 1a Parcial) – disponibilizado em 29/08/2013
Uma solução para a Prova U4 Programa em C++ ( Dev C++).
Uma solução para a
Prova U4 Diag. de classes (em StarUML).
Uma solução para a Prova U4 Diag. de classes (em jpeg).
Exemplo de Prova U5 (Prova para nota de 1a Parcial) – disponibilizado em 28/01/2014
Uma solução para a Prova U5 Programa em C++ ( Dev C++).
Uma solução para a
Prova U5 Diag. de classes (em StarUML).
Uma solução para a Prova U5 Diag. de classes (em jpeg).
Exemplo de Prova U6 (Prova para nota de 1a Parcial) – disponibilizado em 22/01/2015
Uma solução para a Prova U6 Programa em C++ ( Dev C++).
Exemplos de Exame(s) de
Recuperação:
Exemplo de Prova E13 (Exame de Recuperação) – disponibilizado em 13/12/2011.
– Uma solução para a Prova E13 (Exame de Recuperação) –
disponibilizado em 13/12/2011
AQUI HÁ EXEMPLO DE PROVAs DE QUANDO A DISCIPLINA PASSOU A TER UMA PROVA
COM ELABORAÇÃO CONJUNTA ENTRE OS PROFESSORES
Exemplo de Prova Conjunta P1 (Primeira Parcial) – disponibilizado em 21/09/2015.
–
Uma solução para a Prova Conjunta 1 (Prova 1º Semestre de 2015).
- Questão 1: Vide Código Cpp e Vide Código Java.
- Questão 2: Vide código exemplo.
- Questão 3: Código A e código B.
- Questão 4: Filosoficamente não procederia inicializar algo em um destrutor e
tecnicamente os compiladores C++ não aceitariam parâmetro em destrutora.
Exemplo de Prova Conjunta R1 (Exame de Recuperação) – disp. em 21/09/2015.
–
Uma solução para a Prova Conjunta R1 (Exame de Recuperação 1º Semestre de
2015).
Questão
1 – Coesão e Desacoplamento.
a) Função Calc_Idade não deveria imprimir. Isto não é da sua alçada, gerando
acoplamento. Deveria ter outra função chamada Imprimir. Por fim, para fins de coesão, deveria haver uma função Calc_ _Imprimir_ Idade que chamaria as
duas funções-membro mais primitivas.
b) Vide resposta acima em (a).
c) Calc_Idade com um parâmetro
ano retornando idade. Depois Calc_idade com três parâmetros chamaria Calc_Idade
com um parâmetro para fins de cálculo da idade no tocante ao ano.
d) Destrutor seria ~Pessoa() {
} e construtor sem parâmetro ou
equivalente bastaria colocar valores default
nos parâmetros da atual construtora.
e) Em suma diaP, mesP e anoP
estará não em Pessoa mas sim em uma classe Data. Por consequência classe pessoa
agregaria uma instância de Data com os devidos ajustes.
Questão 2 – Código
{
Personagem p;
Personagem *p2, *p3, p4;
Inimigo *i, j;
Jogador k;
p2 = new
Inimigo();
p3 = &k;
i = new
Inimigo();
std::cout
<< "\n mover de p:" ;
p.mover();
std::cout
<< "\n mover de p2:" ; p2->mover();
std::cout
<< "\n mover de p3:" ; p3->mover();
std::cout
<< "\n mover de p4:" ; p4.mover();
std::cout
<< "\n mover de i:" ;
i->mover();
std::cout
<< "\n mover de k:" ;
k.mover();
std::cout
<< "\n Fim. \n";
}
Questão
Teórica: Uma classe abstrata pode ser diretamente instanciada? Justifique
sua resposta.
Resp: Não, uma classe abstrata NÃO pode ser diretamente instanciada.
Isto se dá porque, em C++, classe abstrata tem ao menos uma função-membro
virtual pura, sendo que este tipo de função não tem implementação e, portanto,
não permite instanciação. Este tipo de função tem que ser obrigatoriamente
implementada nas classes (concretas) derivadas da classe abstrata, por
consequência de forma que tais classes derivadas possam ter instâncias.
Exemplo de Prova Conjunta P2 (Primeira Parcial) – disp. em 21/10/2015.
–
Uma solução para a Prova Conjunta P2:
Q
1 – B; Q
2 – A; Q3 – B; Q4 – D; Q5
– C. Q6 – Resp.
Exemplo de Prova Conjunta R2 (Exame de Recuperação) – disp. em 14/04/2016.
Exemplo
de Prova Conjunta R2 – S11/S12
Exemplo
de Prova Conjunta R2 – S13
–
Uma solução para a Prova Conjunta R2 (Exame de Recuperação 2º Semestre de
2015).
- Questão Teórica - Em C++, uma função virtual pura se caracteriza
por:
Resp - Não ter implementação definida, permitindo que a classe seja
abstrata.
- Questão Teórica - Em programação orientada a objetos, polimorfismo
propriamente dito serve para:
Resp - Minimizar acoplamento entre instâncias.
- Questão Teórica - Em programação orientada a objetos, um atributo
estático se caracteriza por:
Resp - Ser compartilhado pelas instâncias da sua classe.
- Questão Teórica - Uma classe em orientação a objetos se caracteriza
por:
Resp - Servir como modelo para um conjunto de instâncias.
- Questão Verdadeiro ou Falso
- Questão
Polimorfismo Ent Pes Jog Ini CodigoA
- Questão
Polimorfismo Ent Pes Jog Ini CodigoB
- Questão
Polimorfismo Ent Pes Jog Ini CodigoC
Respostas:
F - Nenhum dos Programas
apresentados permitem polimorfismo!
V - Os Programas 1, 2 e 3,
permitem executar o código da main()!
F - Apenas os Programas 1 e
2 permitem executar o código da main()!
F - Não há classe abstrata e
portanto há polimorfismo!
V - Todos os Programas permitem
polimorfismo!
Questão de Codificação
Questão de Polimorfismos
Exemplo de Prova Conjunta P3 S11/S12 (Primeira Parcial) – disp. em 29/06/2016.
-
Questão sobre classe abstrata – resposta C.
Exemplo de Prova Conjunta P3 S11/S12 (Primeira Parcial) – disp. em 29/06/2016.
- Questão Polimorfismo Análise.
- Questão Polimorfismo Elaboração.
Exemplo de Prova Conjunta R3
S11/S12 (Exame de Recuperação) – disp. em 06/07/2016.
- Questão 1 - sobre composição.
- Questão 2.
I) Herança. II) de herança. III) composição/agregação.
IV) Abstrata. V) não estático.
- Questão 3. a) F. b) V. c) F. d). F e) F. f) V. g) F. h) V.
- Questão 4. Resp - (b).
Exemplo de Prova Conjunta P4 (Exame de Recuperação) – disp. em 13/10/2017.
Exemplo
de Prova Conjunta P4 – S11/S12
Exemplo
de Prova Conjunta P4 – S13
- Questões 1 e 2 de ambas as provas – Uma solução.
- Questão 3 – S11/S12 - F V F V V F
V V V
- Questão 3 – S13 - V F V
F V V F F F
AQUI HÁ EXEMPLO DE PROVAS JÁ DE TÉCNICAS DE PROGRAMAÇÃO PROPRIAMENTE
DITA
Exemplo de Prova T1 (Primeira Parcial) – disponibilizado em 09/10/2017.
– Solução
- Código da Prova T1 (Prova de 1a Parcial) – disponibilizado em
15/10/2017
– Solução
- Diagrama de classes da Prova T1 – disponibilizado em 15/10/2017 (em jpg)
Exemplo de Prova T2 S71 (Primeira Parcial) – disponibilizado em 11/05/2018.
– Solução
- Código da Prova T2 S71 (Prova de 1a Parcial) – disponibilizado
em 15/05/2018.
– Outra
Solução - Código da Prova T2 S71 (Prova de 1a Parcial) –
disponibilizado em 15/05/2018.
– Solução
- Diagrama de classes da Prova T2 71 – disponibilizado em 15/05/2018 (em
jpg)
Exemplo de Prova T2 S02 (Primeira Parcial) – disponibilizado em 11/05/2018.
– Solução
- Código da Prova T2 S02 (Prova de 1a Parcial)
–
Solução - Diagrama de classes da Prova T2 S02
Exemplo de Prova T3 S71 (Primeira Parcial) – disponibilizado em 15/10/2018.
– Solução
- Código da Prova T3 S71 (Prova de 1a Parcial)
– Solução
- Diagrama de classes da Prova T3 S71
Exemplo de Prova T3 S73 (Primeira Parcial) – disponibilizado em 16/10/2018.
– Solução
- Código da Prova T3 S73 (Prova de 1a Parcial)
– Solução
- Diagrama de classes da Prova T3 S73
Exemplo de Prova T4 S71 (Primeira Parcial) – disponibilizado em 17/05/2019.
– Solução
- Código da Prova T4 S71 (Prova de 1a Parcial)
– Solução
- Diagrama de classes da Prova T4 S71
Exemplo de Prova T4 S73 (Primeira Parcial) – disponibilizado em 20/05/2019.
–
Solução - Código da Prova T4 S73 (Prova de 1a Parcial)
–
Solução - Diagrama de classes da Prova T4 S73
Exemplo de Prova T5 S71 (Primeira Parcial) – disponibilizado em 14/10/2019.
–
Solução - Código da Prova T5 S71 (Prova de 1a Parcial)
– Solução
- Diagrama de classes da Prova T5 S71
Exemplo de Prova T5 S73 (Primeira Parcial) – disponibilizado em 15/10/2019.
–
Solução - Código da Prova T5 S73 (Prova de 1a Parcial)
Exemplo de Prova T6 S71 (1ª Parcial – 2º Sem 2020) – disponibilizado em
27/04/2021 .
–
Solução - Código da Prova T6 S71 (Prova de 1a Parcial)
Exemplo de Prova T6 S73 (1º Parcial – 2º Sem 2020) – disponibilizado em
27/04/2021.
–
Solução - Código da Prova T6 S73 (Prova de 1a Parcial)
Exemplo de Prova T7 S71 (1º Parcial – 1º Sem 2021) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T7 S71 (Prova de 1a
Parcial)
Exemplo de Prova T7 S73 (1º Parcial - 1º Sem 2021) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T7 S73 (Prova de 1a
Parcial)
Exemplo de Prova T8 S71 (1ª Parcial – 2º Sem 2021) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T8 S71 (Prova de 1a
Parcial)
Exemplo de Prova T8 S73 (1º Parcial – 2º Sem 2021) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T8 S73 (Prova de 1a
Parcial)
Exemplo de Prova T9 S71 (1º Parcial – 1º Sem 2022) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T9 S71 (Prova de 1a
Parcial)
Exemplo de Prova T9 S73 (1º Parcial - 1º Sem 2022) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T9 S73 (Prova de 1a
Parcial)
Exemplo de Prova T10 S71 (1º Parcial – 2º Sem 2022) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T10 S71 (Prova de 1a
Parcial)
Exemplo de Prova T10 S73 (1º Parcial - 2º Sem 2022) – disponibilizado em
31/08/2023.
– Solução - Código da Prova T10 S73 (Prova de 1a
Parcial)
Exemplo de Prova T11 S71 (1º Parcial – 1º Sem 2023) – disponibilizado em
01/09/2023.
– Solução - Código da Prova T11 S71 (Prova de 1a
Parcial)
Exemplo de Prova T11 S73 (1º Parcial - 1º Sem 2023) – disponibilizado em
01/09/2023.
– Solução - Código da Prova T11 S73 (Prova de 1a
Parcial)
Exemplo de Prova T12 S71 (1º Parcial – 2º Sem 2023) – disponibilizado em
09/10/2023.
– Solução - Código da Prova T12 S71 (Prova de 1a
Parcial)
Exemplo de Prova T12 S73 (1º Parcial – 2º Sem 2023) – disponibilizado em
11/10/2023.
– Solução - Código da Prova T12 S73 (Prova de 1a
Parcial)
Exemplo de Prova T13 S71/S73 (1º
Parcial – 1º Sem 2024) – disponibilizado em 09/08/2024.
– Solução - Código da Prova T13 S71/S73
(Prova de 1a Parcial)
Exemplo de Prova T14 S71 (1º
Parcial – 2º Sem 2024) – disponibilizado em 22/11/2024.
– Solução - Código da Prova T14 S71 (Prova de 1a
Parcial)
Exemplo de Prova T14 S73 (1º
Parcial – 2º Sem 2024) – disponibilizado em 22/11/2024.
– Solução - Código da Prova T14 S73 (Prova de 1a
Parcial)