Você está na página 1de 4

Matemáti a Dis reta e Programação (2021/2022) ISEL  LEIM

Exame de Épo a Normal 03 de fevereiro de 2022

Leia atentamente o enun iado. Resolva ada grupo I e II em folhas separadas, indi ando em ada uma delas o seu
nome e número. Indique o(s) grupo(s) não entregue(s).

[Cotação℄ I.
[2.0 val℄ 1. Considere o seguinte argumento

p ! q; : q; r !( _ p q) ∴ (p _ )!
r q

(a) Utilize uma tabela de verdade para estudar a validade deste argumento.
(b) Conrme o resultado anterior utilizando inferên ia.
[1.0 val℄ 2. Considere a seguinte proposição

9 2 f0 1 2g
y ; ; ( 8 2 f0 1 2g :
x ; ; y < x)

(a) É verdadeira a proposição? Justique.


(b) Negue a proposição.

[1.0 val.℄ 3. Considere a su essão de números reais denida por:

a 1 = 2; an = an 1  2; para n > 1:
Prove por indução matemáti a que para todo o natural n:

an = 2n :

[2.5 val.℄ 4. Considere as relações binárias denidas em f g:A = 1; 2; 3; 4; 5

R = f( 1) : 2 f2 3 5gg
n; n n ; ;

= f(I ): 2 gn; n n A

= T[ [ f(2 5)g
R I ;

(a) Mostre que I Æ R = R .


(b) Prove que R não é uma relação transitiva.
( ) Apresente a matriz de adja ên ia da relação T
+, o fe ho transitivo de T .
(d) Justique que T + é uma relação de ordem par ial em A. Apresente o dia-
grama de Hasse do po (A; T +).
(e) No po (A; T +) determine aso exista o ínmo do onjunto {1,5}. Justique
a sua resposta.

[1.0 val.℄ 5. Determine o valor do dígito d para os quais o número 3521d 4 é divisível por 7.
[1.5 val.℄ 6. Considere a have públi a RSA (n = 33; e = 7). Obtenha a have privada e
desen ripte a mensagem C = 31.
[1.0 val.℄ 7. Considere o seguinte autómato:

0
s2 s 4
0 0
1
Iní io s0 1 s 5
1
0 0,1
s1 s 3

0,1

(a) Justique se o autómato a eita a palavra vazia e a palavra 011100.


(b) Indique uma expressão regular que dena a linguagem re onhe ida pelo autó-
mato.
( ) Indique as regras de produção de uma gramáti a que permita gerar a lin-
guagem re onhe ida pelo autómato.
[Cotação] II – Python 3 (versão A)

[3 val.] 1. Em Python 3, escreva a função d. A função d tem um argumento: e. O


argumento e é uma lista com linhas. Uma linha é uma lista com números
inteiros. Todas as linhas têm o mesmo número de elementos. O argumento e
representa portanto uma tabela retangular de números. A função d retorna
True se e tem algum número positivo. Retorna False, caso contrário, ou
seja, caso e não tenha nenhum número positivo.
Escreva também um programa que permita testar a função d, isto é, crie
argumentos para a função d, execute a função d e faça print do resultado
obtido. Indique o output obtido.

[1 val.] 2. A execução do programa Python 3 que se segue gera um erro. Qual?


p = [3, 4, 5]
q = {}
p[0] = "4"
q[0] = 4
p["1"] = 5
q["1"] = "5"

[1 val.] 3. Considere a execução do program Python 3 que se segue. Qual é o output


produzido?
def b(c):
c.add(5)
return c
d = {3}
e = d
e.add(4)
f = b(e)
print(d)
print(e)
print(f)

[1 val.] 4. Considere a execução do programa Python 3 que se segue. Qual é o output


produzido?
for t in range(3):
u = "w"
for v in range(t):
u = u + "w"
print(u)
print(u)

[3 val.] 5. Considere a execução do programa Python 3 que se segue. O argumento


da função i é uma lista de números, com pelo menos um elemento.
Qual é o output produzido? Indique, numa frase que não ocupe mais do
que duas linhas de texto, o que faz a função recursiva i?
def i(j):
print(j)
if len(j) == 1:
k = j[0]
else:
m = i(j[1:])
if j[0] < m:
k = j[0]
else:
k = m
print(k)
return k
print(i([3, 2, 4]))

[1 val.] 6. Considere a execução do programa Python 3 que se segue. Qual é o output


produzido? Que operação é implementado pela função h?
def h(i, j):
k = set()
for l in i:
k.add(l)
for l in j:
k.add(l)
return k
print(h({4, 5}, {4, 6}))
print(h({4, 5}, {5, 6}))
print(h({4, 5}, set()))

Você também pode gostar