Professional Documents
Culture Documents
de congressos.
a) A variável de instância agendaDeConferencias de Auditorio, private AgendaAnual
agendaDeConferencias é :um objecto
b) A variável de instância agenda de AgendaAnual, private Agenda[,] agenda é :uma matriz de
objectos
c) Quem tem agenda anual? Os Auditórios
conta = 0;
for(int i=1; i< listaAuditorios.Lenght;i++)
{
for(int h=8; h<=20;h++)
{
If(listaAuditorios[i].verificaSeOcupado(dia, h, h+1)) conta++;
}
}
return conta;
}
}
}
g) O método de AgendaAnual que indica o dia com menor numero de
horas marcadas é:
public int diaMaisLivre (){
}
3- Considere as classes referentes ao projecto Banco.
a) Em Banco, o método NovaConta permite acrescentar uma nova conta ao Banco. O seu corpo é:
Contas.Add(objConta.Numero,objConta);
b) O método DaConta de Banco retorna a conta que tem o número num. O seu corpo é: return
Contas[num];
return res
}
e) Na classe Banco construa o método SaldoTotal, que retorna a
soma dos saldos das contas:
public int SaldoTotal()
{
Int saldo=0;
foreach(KeyValuePair< int,Conta> par in Contas)
{
Saldo = saldo + par.Value.Saldo;
}
Return saldo;
}
b) O método DaConta de Banco retorna a conta que tem o número num. O seu corpo é: return
Contas[num];
e) Na classe Banco construa o método Saldo, que retorna o saldo da conta num:
public int Saldo(int num)
{
return Contas[num].Saldo;
}
f) Na classe Banco construa o método SaldoTotal, que retorna a
soma dos saldos de todas as contas:
public int SaldoTotal()
{
Int soma=0;
foreach(Conta obj in Contas.Values)
{
Soma = soma + obj.Saldo
}
Return soma;
}
g) Na classe Banco construa o método ClienteMaisRico, retorna
o cliente cuja soma dos saldos das suas contas é a maior:
public Cliente ClienteMaisRico()
{
Int maiorSaldo=0;
Cliente maisRico = null;
foreach(Cliente objCliente in Clientes.Values)
{
Int soma = 0;
foreach(Conta objConta in objCliente.Contas())
{
Soma = soma + objConta.Saldo
}
If(soma>maiorSaldo)
{
maiorSaldo = soma;
maisRico = objCliente
}
}
Return maisRico
}
h) Na classe Banco construa o método ClienteComMaisContas,
que retorna o cliente titular num maior número de contas:
public Cliente ClienteComMaisContas()
{
Int maisContas=0;
Cliente maisRico = null;
foreach(Cliente objCliente in Clientes.Values)
{
Int num = objCliente.Contas().Count;
If(num> maisContas)
{
maisContas = num;
maisRico = objCliente
}
}
Return maisRico
}
}
a) O método DaConta de Banco retorna a conta que tem o número num. O seu corpo é: return
Contas[num];
b) Nos métodos da classe Banco para percorrer todos os Clientes podemos usar: foreach(Cliente
obj in Clientes.Values)
}
public Conta(int num, Cliente objCli)
{
num = num;
saldo =;
titular = objCli;
objCli.Contas().Add(num,this);
}
public Conta(int num, Cliente objCli)
{
num = num;
saldo =;
titular = objCli;
objCli.NovaConta(this);
int saldototal = 0;
foreach(Conta objConta in Contas.Values)
{
saldototal = saldototal+objConta.DaSaldo();
}
return saldototal;
}
f) Na classe Cliente construa o método SaldoGlobal, que retorna
a soma dos saldos de todas as contas do cliente:
public int SaldoGlobal()
{
int saldoglobal = 0;
foreach(Conta objConta in Contas.Values)
{
saldoglobal = saldoglobal +objConta.DaSaldo();
}
return saldoglobal;
}
g) Na classe Banco construa o método MelhorCliente, que
retorna o cliente com o maior SaldoGlobal:
public Cliente MelhorCliente()
{
Cliente objRes = null;
int maiorsaldoglobal = 0;
foreach(Cliente objCliente int Clientes.Values)
{
if(maiorsaldoglobal < objCliente. SaldoGlobal())
{
objRes = objCliente;
maiorsaldoglobal = objCliente. SaldoGlobal();
}
}
b) O corpo do método de Curso, DaDisciplina que retorna a disciplina que tem o código cod é: return
(Disciplina) Disciplinas[cod];
c) O método de Curso que retorna o código da disciplina com mais alunos é:
public int MaisAlunos(){
int maior = 0;
Disciplina objMaior = null;
foreach(Disciplina obj in Disciplinas.Values)
{
int numAlunos = obj.ListaCodAlunos().Count;
if (numAlunos > maior)
{maior = numAlunos;
objMaior = obj;
}
}
return objMaior.Num();
}
Qual das seguintes sequências de instruções corresponde a <<a>>
int maior = 0;
//Disciplina objMaior = null;
foreach(Disciplina objDisciplina in Disciplinas.Values)
{
foreach(Aluno objAluno in objDisciplina.ListaObjAlunos())
{
if (objAluno. DaIdade() > maior)
{maior = objAluno. DaIdade();
}
}
return maior;
}
}
a) Criar um objecto ParXY com (int, Aluno). Na variável objAluno encontra-se um Aluno:
ParXY<int,Aluno> par = new ParXY<int,Aluno>(objAluno.DaNum(),objAluno);
b) Criar um objecto ParXY com (int,int) - ParXY<int,int> par = new ParXY<int,int>(1,2);
c) Criar uma colecção Dictionary (int,Turma) - a chave int é o numero da Turma e o valor é um objecto da
classe Turma
ParXY<int,int> par = new ParXY<int,int>(1,2);
d) Considere as declarações das seguintes colecções:
private Dictionary<int,Aluno> listaAlunos;
private Hashtable listaDisciplinas;
private Aluno objAluno; private Disciplina objDisciplina;
Assinale a instrução correcta:
Aluno obj = listaAlunos[objAluno.DaNum()];
4- Assinale as opções correctas:
a) Uma Windows Form definida pelo utilizador, quando surge no écran é: Um Objecto
b) Os métodos public static de uma qualquer classe, são respondidos: Pela Classe
c) As variáveis de instância de um objecto, quando declaradas privadas podem ser acedidas por: O Objecto
d) Que tipo de Windows Forms podem ter métodos static definidos pelo utilizador - Todas
e) Uma classe abstracta – Não pode ter objectos instancia