· web viewsoftware editor e compilador de pascal que tem a vantagem de, por ser executável, não...
TRANSCRIPT
UFCD 6051 – PROGRAMAÇÃO - ALGORITMIA
Folhas Teóricas – Nota: Estas folhas teóricas servem também para o módulo 5 (UFCD 6052), já que este é, em grande parte, a aplicação prática do aprendido na UFCD 6051 (módulo 4). As folhas possuem exemplos e exercícios sobre todos os pontos da matéria leccionada. Os programas em Pascal referentes aos exemplos e exercícios / problemas constantes nas folhas são todos enviados também, para além de outros relacionados com esses mesmos conteúdos.
Os computadores e as linguagens de programação Linguagens de Programação. O que é uma linguagem de programação Classificação das linguagens de programação. Linguagens de alto e baixo nível Programas. O que é um programa. Programa fonte e programa objecto Fases da elaboração de um programa Programas tradutores. Programas Interpretadores e Compiladores Estruturas de Informação. Dados, informação, processamento Classificação dos dados Operadores. Operadores aritméticos, relacionais, lógicos. Prioridades dos operadores Expressões. Expressões numéricas e lógicas Identificadores, variáveis e constantes 11 Exercícios propostos Algoritmos – Formulação e Soluções Algoritmo Representação de algoritmos. Fluxogramas e pseudocódigo. Fluxogramas. Símbolos utilizados nos fluxogramas Exemplo de fluxograma e vantagens e desvantagens Pseudocódigo Exemplo e vantagens e desvantagens Estruturas de controlo. Exemplos. Sequenciais. Exemplos. De decisão ou selecção. Exemplos Estrutura SE… - Exemplo e sintaxe Estrutura SE…ENTÃO - - Exemplo e sintaxe Estrutura SE…ENTÃO…SENÃO - Exemplo e sintaxe Estrutura CASO… - Exemplo e sintaxe (vários exemplos em pseudocódigo das estruturas anteriores) Estruturas de repetição ou ciclos Estrutura ENQUANTO… - Exemplo e sintaxe Estrutura REPETIR… - Exemplo e sintaxe Estrutura PARA… - Exemplo e sintaxe (vários exemplos em pseudocódigo das estruturas anteriores) Como escolher uma estrutura de repetição para cada caso 13 Problemas resolvidos em pseudocódigo, usando as estruturas anteriores 8 Problemas propostos para o aluno resolver (as soluções são enviadas também mas
não fazem parte destas folhas teóricas). Problemas ***** (ver abaixo)NOTA 1: tanto os 13 problemas resolvidos em pseudocódigo como os 8 problemas propostos para resolução pelos alunos têm solução em pascal que será enviada – ver lista abaixo, onde os nomes dos programas são elucidativos do problema a resolver, embora todos eles tenham um enunciado em linguagem corrente – português. O software utilizado é o Pzim que é um software editor e compilador de pascal que tem a vantagem de, por ser executável, não necessitar de qualquer instalação. Basta transportá-lo numa pen, copiá-lo para o pc e executar,
ter na cloud ou email e ir busca-lo u até fazer download na hora e usar. Muito prático. Não necessita pois de instalação o que, nas escolas, por exemplo, é muito prático, não falando dos problemas de privilégios necessários para se instalar qualquer software…)
Estruturas de Dados Vectores e Matrizes Tipos de matrizes e vectores Atribuição de valores, leitura de valores, escrita de valores Operações com matrizes: Adição e subtracção de matrizes, multiplicação de um
escalar por uma matriz, multiplicação e divisão de matrizes, transposição de matrizes. Tudo com exemplos.
Cadeias de Caracteres – Strings Ficheiros. Caracterização de ficheiros, organização de ficheiros, escolha da organização
adequada de um ficheiro consoante o caso, modos de acesso a ficheiros 6 exercícios sobre operações com matrizes, alguns com várias alíneas. Ver NOTA 1
acima. Cadeias de Caracteres – Strings Exemplos em pseudocódigo e pascal Expressões com cadeias de caracteres 7 Exercícios sobre manipulação de Cadeias de Caracteres – Strings. Palavras, Frases,
Caracter. Ver NOTA 1 acima.
NOTA 2: o software usado é PZIM, com as vantagens acima enunciadas.Todos os exercícios mencionados têm enunciados em linguagem corrente (podem ser usados diretamente nas aulas e em testes, por exemplo ). Todos eles têm solução em pascal que é enviada também. As listas dos programas, abaixo dadas, cobrem / solucionam em pascal todos os exemplos e problemas acima referidos e constantes das folhas. Existem ainda outros. Os nomes que dei aos programas são elucidativos dos problemas que resolvem.O PZim traz já alguns programas exemplo mas, salvo raras excepções, não se adequam a este curso / UFCDs, de iniciação.
Listas dos programas a enviar com o ficheiro zip:
Matrizes e Vectores
Strings
Planificação da Disciplina de Sistemas Digitais 2017 / 2018 Resumo (1 folha frente e verso, em forma de tabela) sobre as estruturas de decisão ou
selecção e de repetição ou ciclos, com a sintaxe, um exemplo de cada em pascal e pseudocódigo. A usar, eventualmente nos testes, para consulta.
Teste Final de módulo / unidade 6051 - Enunciado Teste Final de módulo / unidade 6051 – Resolução 1 Teste Final de módulo / unidade 6051 – Resolução 2
UFCD 6052 – PROGRAMAÇÃO – INICIAÇÃO
Ficha de preparação para o teste – enunciado A resolução destes problemas encontra-se nas listas abaixo.
Teste Final de avaliação do módulo 5 / UFCD 6052 – enunciado (duas versões) (composto por 5 problemas que os alunos têm de resolver, em 90 minutos, no pc, no
software pzim, em Pascal. A resolução é enviada por email para o professor, quando isso é possível, ou entregue para gravação em pen)
Teste Final de avaliação do módulo 5 / UFCD 6052 – resolução
Programas feitos na aula
Ver nota acima – Problemas *****
Problemas / Exemplos Resolvidos
Seguem-se imagens da resolução (programas) de alguns problemas. Escolhemos para ilustrar os 8 problemas da ficha de preparação para o teste:
1. Escrever um programa em Pascal que lê o número de um funcionário, o número de horas
trabalhadas, o valor que recebe por hora, e o número de filhos com idade menor do que 14
anos e calcula o salário deste funcionário.
Nota: o subsídio por cada filho menor de 14 anos é de 100€.
2. Escrever um algoritmo/programa em Pascal que lê um número e escreve se ele "é primo" ou
"não é primo"
3. Escrever um programa em Pascal que lê 3 valores a, b, c, e escreve os 3 valores por ordem
crescente.
4. Escrever um algoritmo/programa em Pascal que escreve a soma dos números múltiplos de 7
entre 100 e 200.
5. Escrever um algoritmo/programa em Pascal que lê 5 valores, um de cada vez, e conta
quantos destes valores são negativos, escrevendo esta informação.
6. Escrever um algoritmo/programa em Pascal que lê um vetor N[20] e escreve o seu
conteúdo. A seguir, troca o 1º elemento com 11º, o 2º com o 12º, etc., até o 10º com o 20º e
escreve o vetor assim modificado.
7. Escrever um algoritmo/programa em Pascal que lê uma matriz M(5,5) e calcula as somas:
a) da linha 4 de M
b) da coluna 2 de M
c) da diagonal principal
d) da diagonal secundária
e) de todos os elementos da matriz
f) Escreva estas somas e a matriz.
P1Programa
Resolução / Compilação / Execução
P2Programa
Resolução / Compilação / Execução
P3Programa
Resolução / Compilação / Execução
P4Programa
Resolução / Compilação / Execução
P5Programa
Resolução / Compilação / Execução
P6Programa
Resolução / Compilação / Execução
P7Programa
Resolução / Compilação / Execução