Engenharia Informática
1º Ano - 1º Semestre
Introdução a Ciência dos
Computadores – 1º Ano
Teste Tipo
Data :27-1-2008
Duração : 60 Minutos
Parte Teórica
Prof. : Jorge Mota
Numero : Nome :
Pergunta 1 (2 valor)
Defina algoritmo? Descreva em português corrente um algoritmo para uma sua actividade do dia a dia (escolha uma da sua preferência).
Resposta: Um algoritmo é uma sequência não ambígua de instruções que é executada até que determinada condição se verifique.(pagina 8 da Sebenta)
Um algoritmo não representa, necessariamente, um programa de computador, e sim os passos necessários para realizar uma tarefa. A sua implementação pode ser feita por um computador, por outro tipo de autómato ou mesmo por um ser humano. Diferentes algoritmos podem realizar a mesma tarefa usando um conjunto diferenciado de instruções em mais ou menos tempo, espaço ou esforço do que outros. Tal diferença pode ser reflexo da complexidade computacional aplicada, que depende de estruturas de dados adequadas ao algoritmo[pt.wikipedia.com].
Exemplo de um algoritmo para levantar e sair de casa de manha: 1: O despertador toca às 7H30
2: Desligar o despertador 3: Levantar da cama 4: Ir para a casa de banho 5: Voltar ao quarto 6: Escolher a Roupa 7: Vestir a Roupa
8: Tomar o pequeno almoço 9: Escovar os dentes
10: Pegar no computador portátil e pasta 11: Sair de casa
Pergunta 2 (3 valores)
Implemente em Raptor (fluxograma) um algoritmo que permita gerar 1000 números aleatórios para um ficheiro chamado “C:\dados_1000.txt”.
Pag:2
Pergunta 3 (2 valores)
Distinga variável local de variável global? Especifique como faria a declaração de variáveis locais e globais em VisualAlg 2.0?
Resposta:
Uma variável global é aquela cujo nível de acessibilidade é todo o programa, ou seja o valor da mesma é conhecido em todo o programa.
Em contraponto uma variável local é aquela que declarada num determinado nível (função, procedimento, bloco) e o seu nível de acessibilidade será o bloco em que foi definida e todos os foram definidos e estão dependentes neste. Por outras palavras o seu valor é conhecido apenas neste bloco e em todos os que foram definidos nele.
Em VisualAlg 2.0 declaramos uma variável Global por:
Pergunta 4 (3 Valores)
a)Analise o seguinte algoritmo em Raptor e faça a traçagem do mesmo usando uma tabela de dupla entrada, sabendo que o ficheiro Dicotomica_dados.txt contém os seguintes dados um por linha :
5 6 7 20 21 31 32 40 44 50
Pag:4
!"# $% & ' ( ) ( * + !", ( -.(/ -.(/ -( -& 01 ) ( # $ % .(/ ) ( 2 #$ % 3 - & .(/ *4" ! ) ( * 56 & 7 *4" 86 ! 7 ! # #Pergunta 5 (3 valores)
Implemente em raptor um programa que permita ler as temperaturas mínimas e máximas diárias de um mês de uma cidade(exemplo: Porto), calcule e imprima a média mensal das mesmas, e imprima a temperatura máxima mais alta ocorrida, a temperatura mínima mais baixa ocorrida e qual a maior variação de temperatura ocorrida num dia (maior variação de temperatura será a diferença entre a temperatura máxima e mínima ocorrida num dia). Pergunta 6 (3 valores)
Implemente em VisualAlg 2.0 um programa que permita calcular a distância entre dois pontos no espaço representados num sistema de coordenadas cartesianas.
Se representarmos os pontos no espaço em coordenadas cartesianas por: Ponto 1 (x1,y1,z1)
Ponto 2 (x2,y2,z2)
A distância entre dois pontos no espaço é dados por: Distância =
(
x
2
−
x
1
)
2+
(
y
2
−
y
1
)
2+
(
z
2
−
z
1
)
2Pergunta 7
Desenhe um algoritmo e represente-o em VisualAlg 2.0, que permita ler uma lista de nomes de pessoas que contenham o nome próprio e o nome de família e os ordene e imprima na forma:
Nome_Familia, Nome_Próprio Exemplo:
Nome 1 Jorge Mota Nome 2 Jorge Francisco Nome 3 Teresa Mota Nome 4 <enter>
Lista de Nome formatados e ordenados Francisco, Jorge
Mota, Jorge Mota, Teresa Pergunta 8