2007/2008 1º semestre 2º teste

Propaganda
Universidade Católica Portuguesa
Faculdade de Ciências Económicas e Empresariais
Cursos de Gestão e Economia
Informática
1º Semestre 2007/2008 – 2º teste
17/01/2008
Duração 1h30m
Resolva cada um dos grupos em folhas separadas
Identifique todas as folhas
Boa Sorte.
I [10 valores]
1) [5] Indique, justificando, qual o output dos seguintes trechos de programas supondo
(para as alíneas c e d) que é inicialmente chamado o procedimento P
a)
b)
FOUND = FALSE
X=1
Y=2
do
X = X \ 2 + Y
Y = Y + 1
FOUND = X = Y
loop until FOUND
call MsgBox(X)
Y = 12
For X = 1 To 7 Step 2
Y = Y \ X + 1
Next
Call MsgBox(Y)
c)
Sub P1(ByRef S As String, ByVal X As Integer)
Dim A As String
A = ""
Do While X >= 1
A=A&S
X=X-1
Loop
S=A
End Sub
d)
Function F(ByVal X As Integer, ByVal Y As Integer) As Integer
Dim A As Integer, P As Integer
P=1
For A = 1 To Y
P=P*X
Next
F=P
End Function
Sub P
Dim A As Integer, B As String
B = "X"
A=4
Call P1(B, A)
Call MsgBox(A)
Call MsgBox(B)
End Sub
Sub P
Dim A As Integer, B As Integer
A=4
Do
B = F(2, A)
Call MsgBox(B)
A=A-1
Loop Until B <= 8
Call MsgBox(A)
End Sub
e) Substitua na alínea b), o ciclo FOR por um ciclo DO... LOOP UNTIL
2) [3] Indique, justificando se as seguintes expressões estão ou não correctas. Para as
expressões que considerar correctas indique o seu tipo e se possível também o valor.
a) ROUND(7.62E2) \10
b) LEN(“CARA” & “MELO”) MOD -3
c) INT(SQR(26)) MOD 5
d) CHR(ASC(“A”)+INSTR(“ABCD”,”D”))
e) CHR(INT(65.2)+1) / 2
f) RIGHT(“LESMA”,2) & MID(“BARLAVENTO”,4,2)
3) [2] Escreva um conjunto de instruções que apresente nas células A1:E1 da folha
excel números aleatórios inteiros entre 1 e 20 inclusive.
II (10 valores)
1) [2,5] Crie uma função que receba três números inteiros e devolva TRUE se
algum dos números for igual á soma dos outros 2, FALSE no caso contrário.
2) [2,5] Escreva um troço de programa que peça ao utilizador para introduzir três
números inteiros e que (utilizando a função anterior) mostre no écran, uma
mensagem, informando se algum dos números é igual à soma dos outros 2.
3) [2,5] Crie uma função que receba uma string e um número inteiro N, devolvendo
a repetição dessa string N vezes. Por exemplo, se a string for “BA” e N igual a
3, a função deverá devolver “BABABA”
Considere a seguinte estrutura que tem como finalidade guardar as temperaturas
médias diárias ao longo de um mês.
Type TpTempMes
NumDiasMes as integer ‘ número de dias que o mês tem
TempMedia (1 to 31) as integer
End type
4) [2,5] Crie uma função que, dadas as temperaturas médias ao longo do mês,
indique se houve algum dia em que a temperatura foi igual à média de todas as
outras temperaturas.
Download