Beruflich Dokumente
Kultur Dokumente
Questão 1 2 3 4 5 Total
Valor 2.0 2.0 2.0 2.0 2.0 10,0
Nota
Nome:___________________________________________ NUSP:_____________
Questão 1 (2 pontos):
1) A > B || C < D
A B > C D < ||
2) A > B && C == D || E
A B > C D == && E ||
4) A || B && C / (D + E) * F
A B C D E + / F * && ||
Questão 2 (2 pontos):
É o mesmo que foi calculado no EP1, com os novos operadores: >, <,|| e && e levando em conta a
equivalência entre os valores lógicos e numéricos. Supondo NUSP = 4356407.
1) A B < C *
A B < C *
3 5
4 4 0 0 0
2) A B C + D || &&
A B C + D || &&
5 6
3 3 8 8 1
4 4 4 4 4 4 1
3) A B C D && * + E F || +
A B C D && * + E F || +
6
5 5 1 0
3 3 3 3 3 4 4 1
4 4 4 4 4 4 7 7 7 7 8
4) A B + C * D E F G * + * &&
A B + C * D E F G * + * &&
7
0 0 0
4 4 4 4 4
3 5 6 6 6 6 6 6 24
4 4 7 7 35 35 35 35 35 35 35 35 1
Questão 3 (2 pontos):
As funções abaixo devem contar quantos elementos da lista possuem o campo info igual a x.
Diga quais as que estão certas e quais estão erradas.
Escreva na linha que antecede cada uma a palavra: certa ou errada
a) Certa
int conta(link p,int x) {
link t = p; int k=0;
while (t != NULL) {
if (t->info == x) k++;
t = t->prox;
}
return k;
}
b) Errada – Não funciona para lista vazia e não considera o último elemento)
int conta(link p,int x) {
link t = p; int k=0;
while (t->prox != NULL) {
if (t->info == x) k++;
t = t->prox;
}
return k;
}
c) Certa
int conta(link p,int x) {
link t; int k;
for (t=p,k=0; t!=NULL; t=t->prox)
if(t->info == x) k++;
return k;
}
ConjInt vazio() {
ConjInt t=malloc(sizeof(struct cj));
t->info[0]=0;
return t;
}
a) Escreva uma função int Pertence(ConjInt C,int X) que devolve 0 se X não pertence a C e 1
se pertence.
int F(int X) {
int i,s=0;
for (i=1;i<=X;i++) s=s+i*i;
return s;
}
F(3) = 14
F(2) = 5
F(0) = 0
int f(int X) {
if (X<=0) return 0;
return X*X + f(X-1);
}