Escolar Documentos
Profissional Documentos
Cultura Documentos
I Algoritmos
2. Transforme
a) O ciclo da alínea e) num ciclo DO WHILE equivalente
b) O ciclo da alínea d) num ciclo DO LOOP UNTIL equivalente.
c) O ciclo da alínea a) num ciclo DO WHILE equivalente.
3. Escreva um programa que preencha as células A1:A10 com valores inteiros aleatórios entre
1 e 100
a) Usando um ciclo FOR
b) Usando um ciclo DO WHILE
c) Usando um ciclo DO LOOP UNTIL
4. Escreva um programa, que mostre nas duas primeiras colunas de um worksheet, o código
ASCII e respectivo caracter, para todos os caracteres com código ASCII entre 32 e 255.
3
a) Usando um ciclo FOR
b) Usando um ciclo DO WHILE
c) Usando um ciclo DO LOOP UNTIL
5. Construa um programa que leia um número inteiro (X) e diga quantos dígitos tem esse
numero. (fazer numericamente sem usar strings).
6. Crie um programa que preencha uma grelha (range) de 9x9, com números inteiros aleatórios
entre 1 e 9
a) Usando um ciclo FOR
b) Usando um ciclo DO WHILE
c) Usando um ciclo DO LOOP UNTIL
V Procedimentos e Funções
1. Construa um quadro com o valor das variáveis ao longo da execução dos seguintes
programas assinalando os vários outputs. O código é executado quando se carregar no botão
Button1
a) b)
Function Mult(ByVal x as integer, ByVal y as integer) as integer Sub P(ByRef b As Integer, ByVal c As
Mult = x*(y \ x) Integer)
End function Dim x As Integer
Sub CommandButton1_Click() x = b Mod c
Dim x as integer,y as integer,c as integer If x = 0 Then
Dim d as integer,z as integer b=b-1
x=4 End If
y = 15 End Sub
if y<x then Private Sub CommandButton1_Click()
z=x Dim x As Integer, y As Integer
else x=7
z = Mult(x,y) y=1
end if Do
call MsgBox(z) Call P(x, y)
c =1 y=y+x\3
d =x Loop Until x = y
do while d <= z call MsgBox (x)
c=c+1 End Sub
call MsgBox(d)
d=c*x
loop
End sub
4
2. Considere as seguintes declarações de variáveis e subprogramas :
Dim x as integer
Dim r as double
Function Pot(x as double,y as double) as double
sub DesenhaRectangulo(larg as integer,alt as integer,c as string)
3. Construir uma nova função em Excel para obter a primeira palavra de uma frase.
4. Construir uma nova função em Excel para obter a ultima palavra de uma frase.
5. a) Criar as funções no Excel e chamar de um worksheet. b) Criar um subprograma, chamado
por um botão, para pedir ao utilizador uma frase e mostrar no écran a primeira e última
palavra dessa frase.
6. Mesmo que o exercício III-3 mas usando uma função.
7. Construa uma função que receba um número inteiro e devolva o produto do primeiro pelo
último digito desse número. a) Use a função no Excel. b) Construa um troço de programa
que peça ao utilizador para introduzir um número inteiro e mostre no écran o produto do
primeiro pelo último digito desse número.
8. Construa uma função que receba uma frase e informe se a primeira e última letra da frase são
iguais
9. Construa um troço de programa que peça ao utilizador para introduzir uma frase e que
(usando a função da alínea anterior) mostre uma mensagem dizendo se a primeira e última
letra da frase são ou não iguais.
10.Crie uma função que receba uma palavra e diga se essa palavra é ou não simétrica. A palavra
é considerada simétrica se se ler da mesma maneira da esquerda para a direita e da direita
para a esquerda. Exemplo : “MATAM” é uma palavra simétrica.
11.Crie uma função que receba um número inteiro e devolva a soma dos quadrados dos seus
dígitos. Se o número for 723 a função deverá devolver 72 + 22 + 32
12.Troço de programa que peça ao utilizador para introduzir um número inteiro e, recorrendo á
função anterior, mostre no écran a soma dos quadrados dos seus dígitos.
13.Construir uma função que receba uma frase e diga qual a maior sequencia de caracteres
iguais seguidos. Exp. Se entrar “aabbbbccab”, a função deverá devolver 4. Crie uma nova
função para verificar o mesmo mas numa range (range com uma só coluna).
14.Construir uma nova função em Excel que receba uma range e devolva um valor aleatório
extraído dessa range. Como resolveria em Excel sem recorrer a programação?
15.Construir uma função que receba uma range e devolva a soma dos valores pares contidos
nessa range. Assumir que a range só tem valores inteiros)
5
16.Alterar a função anterior de forma a ser devolvida a soma dos pares ou dos impares.
17.Crie uma função que receba uma range(coluna) e devolva o número de valores únicos
existentes nessa range.
18.Crie uma função que receba uma range(coluna) e devolva 6 valores, extraídos
aleatoriamente dessa range, sem repetições.
19.Crie uma função para verificar se uma matriz quadrada (range com igual número de linhas e
colunas) é simetrica. Uma matriz é simetrica se M = MT, em que MT representa a matriz
transposta de M.
20.Crie uma função que receba uma range contendo valores numéricos e devolva o valor que
mais se afasta da média de todos os valores.
VI Exercícios EXCEL