Programar Em Pascal

24
Aprendendo a Aprendendo a Programar em Programar em Pascal Pascal Resumo da matéria dada no 10º ano Bases de Programação

description

Programa de Bases de Programação do 10º ano; Curso Tecnológico de Informática

Transcript of Programar Em Pascal

Page 1: Programar Em Pascal

Aprendendo a Aprendendo a Programar em Programar em

PascalPascal

Resumo da matéria dada no 10º ano Bases de Programação

Page 2: Programar Em Pascal

Nesta apresentação dar-lhe-ei a conhecer o maravilhoso Nesta apresentação dar-lhe-ei a conhecer o maravilhoso mundo da programação... mundo da programação...

Programar consiste em dar uma sequência de comandos Programar consiste em dar uma sequência de comandos ao computador para resolver um determinado problema. ao computador para resolver um determinado problema.

Em primeiro lugar, precisamos de aprender a definir os Em primeiro lugar, precisamos de aprender a definir os passos que nos levam á solução do problema. passos que nos levam á solução do problema.

Este é o processo mais importante da programação, que Este é o processo mais importante da programação, que exige uma certa habilidade em entender o problema e propor exige uma certa habilidade em entender o problema e propor uma solução criativa, simples e correcta. uma solução criativa, simples e correcta.

Esta sequência de passos visando a solução de um Esta sequência de passos visando a solução de um determinado problema é denominado de algoritmo. determinado problema é denominado de algoritmo.

Page 3: Programar Em Pascal

O que é um O que é um algoritmo?algoritmo?

Um algoritmo é uma sequência de passos para realizar Um algoritmo é uma sequência de passos para realizar um tarefa ou resolver um problema. um tarefa ou resolver um problema.

No dia a dia utilizamos algoritmos para realizar as No dia a dia utilizamos algoritmos para realizar as nossas actividades, definindo a sequência de acções nossas actividades, definindo a sequência de acções que devemos fazer para atingir um objectivo. que devemos fazer para atingir um objectivo.

Essas sequências de passos geralmente são guardadas Essas sequências de passos geralmente são guardadas na nossa memória. na nossa memória.

Por exemplo, quando marcamos um encontro com Por exemplo, quando marcamos um encontro com alguém, a sequência de procedimentos para esta alguém, a sequência de procedimentos para esta situação será: situação será:

1. tomar banho 2. vestir roupa bonita3. levar guarda-chuva se estiver mau tempo4. Apanhar o autocarro ...

Page 4: Programar Em Pascal

Esta sequência de procedimentos não anotamos Esta sequência de procedimentos não anotamos no papel, por que são coisas simples ou que no papel, por que são coisas simples ou que fazemos com bastante frequência. fazemos com bastante frequência.

Porém, para resolver problemas mais complexos, Porém, para resolver problemas mais complexos, precisamos de apontar no papel os passos, precisamos de apontar no papel os passos, principalmente quando queremos escrever um principalmente quando queremos escrever um programa. programa.

Existem diferentes formas de escrever um Existem diferentes formas de escrever um algoritmo. algoritmo.

Neste curso vamos escrever os algoritmos numa Neste curso vamos escrever os algoritmos numa linguagem intermediária entre a linguagem falada linguagem intermediária entre a linguagem falada e a linguagem de programação. e a linguagem de programação.

Iremos usar termos simples, mas também claros Iremos usar termos simples, mas também claros e objectivos. e objectivos.

Para perceber melhor o que lhe falei nesta Para perceber melhor o que lhe falei nesta introdução vamos começar por resolver um introdução vamos começar por resolver um simples problema. simples problema.

Page 5: Programar Em Pascal

Exemplo de um problema:Exemplo de um problema:Na disciplina de matemática tivemos três provas e as notas foram as Na disciplina de matemática tivemos três provas e as notas foram as

seguintes: seguintes:

N1 = 5.5 N2 = 7.0 N3 = 4.5 N1 = 5.5 N2 = 7.0 N3 = 4.5

Gostaríamos de saber qual foi a média das três notas. Qual seria a Gostaríamos de saber qual foi a média das três notas. Qual seria a sequência de operações que o computador precisa para fazer este sequência de operações que o computador precisa para fazer este simples cálculo?simples cálculo?

Solução:Solução:

Para calcular a média, em primeiro lugar precisamos informar ao computador Para calcular a média, em primeiro lugar precisamos informar ao computador quais são os valores das notas. Depois, pedimos para ele somar as notas e dividir quais são os valores das notas. Depois, pedimos para ele somar as notas e dividir por 3.por 3.

O resultado deve ser guardado num determinado lugar, para depois mostrar no O resultado deve ser guardado num determinado lugar, para depois mostrar no

ecrã do computador. ecrã do computador.

Esta sequência poderá ser escrita num algoritmo da seguinte forma:Esta sequência poderá ser escrita num algoritmo da seguinte forma:

1. Atribuir os valores 1. Atribuir os valores N1 = 5.5 ; N2 = 7.0 ; N3 = 4.5. N1 = 5.5 ; N2 = 7.0 ; N3 = 4.5.

2. Calcular a soma: 2. Calcular a soma: S = N1 + N2 + N3S = N1 + N2 + N3

3. Calcular a média: 3. Calcular a média: M = S/3M = S/3

4. Mostrar o resultado 4. Mostrar o resultado MM

Page 6: Programar Em Pascal

Para fazer os cálculos, o computador precisa guardar os dados na memória.Para fazer os cálculos, o computador precisa guardar os dados na memória.

Para entender melhor como isso funciona, vamos imaginar que esses lugares são caixas Para entender melhor como isso funciona, vamos imaginar que esses lugares são caixas vazias. Portanto vazias. Portanto N1N1, , N2N2 e e N3N3 são caixas onde vamos guardar o valor das notas. são caixas onde vamos guardar o valor das notas.

Por exemplo, quando fazemos Por exemplo, quando fazemos N1 = 5.5N1 = 5.5 no algoritmo, estamos a informar ao computador no algoritmo, estamos a informar ao computador que deve guardar o valor que deve guardar o valor 5.55.5 na caixa na caixa N1N1. O que acontece quando escrevemos:. O que acontece quando escrevemos:

S = N1 + N2 + N3S = N1 + N2 + N3

O computador fará a soma dos valores que estão nas caixa O computador fará a soma dos valores que estão nas caixa N1N1,,N2N2 e e N3N3 e o resultado será e o resultado será guardado na caixa guardado na caixa SS. A caixa . A caixa MM será utilizada para guardar o valor de será utilizada para guardar o valor de SS dividido por dividido por 33. . Finalmente quando quisermos ver o resultado do cálculo, pedimos ao computador para Finalmente quando quisermos ver o resultado do cálculo, pedimos ao computador para mostrar o conteúdo da caixa mostrar o conteúdo da caixa MM..

Podemos alterar o conteúdo das caixas utilizando o símbolo Podemos alterar o conteúdo das caixas utilizando o símbolo == , nesse caso o valor anterior , nesse caso o valor anterior

da caixa será substituído pelo último valor atribuído. da caixa será substituído pelo último valor atribuído.

Agora imaginemos que temos poucas caixas vazias e para economizar vamos pedir ao Agora imaginemos que temos poucas caixas vazias e para economizar vamos pedir ao computador que guarde o resultado da média no mesmo lugar onde estava a soma, já que a computador que guarde o resultado da média no mesmo lugar onde estava a soma, já que a soma não será mais usada. Para isso o comando seria o seguinte:soma não será mais usada. Para isso o comando seria o seguinte:

S = S/3S = S/3

Neste caso, o computador vai dividir o conteúdo da caixa Neste caso, o computador vai dividir o conteúdo da caixa SS por por 33 e o resultado vai guardar e o resultado vai guardar na mesma caixa na mesma caixa SS, apagando o resultado anterior. Este tipo de procedimento podemos fazer , apagando o resultado anterior. Este tipo de procedimento podemos fazer quando não precisarmos dos valores anteriores. quando não precisarmos dos valores anteriores.

Para colocar o nome das caixas nos algoritmos podemos utilizar qualquer letra ou palavra, Para colocar o nome das caixas nos algoritmos podemos utilizar qualquer letra ou palavra, mas é recomendável usar palavras ou letras associadas ao conteúdo. Por exemplo, para mas é recomendável usar palavras ou letras associadas ao conteúdo. Por exemplo, para guardar a média pudemos colocar a letra guardar a média pudemos colocar a letra MM, poderíamos usar também: , poderíamos usar também: Media, med, Media, med, MEDIAMEDIA, etc. , etc.

Page 7: Programar Em Pascal

Como converter um algoritmo para a Como converter um algoritmo para a linguagem Pascal?linguagem Pascal?

Vamos ver primeiro como funciona a estrutura de um programa em Pascal:Vamos ver primeiro como funciona a estrutura de um programa em Pascal:

A estrutura do programa em Pascal consta de dois componentes: cabeça e corpo. Na primeira parte (var) são declarados os tipos e variáveis. Mais á frente explicarei o

significado desta parte.

Na segunda parte trata-se do corpo do programa. Como podemos observar o corpo do programa começa com a palavra Begin e acaba com End.

As palavras Program, Begin e End são palavras da linguagem Pascal e sempre estarão

presentes em todos os programas.

Agora vamos passar o nosso algoritmo da média para um programa em Pascal.

Page 8: Programar Em Pascal

Criar um programa…Criar um programa…Vamos passar o algoritmo que se segue para a linguagem Pascal:Vamos passar o algoritmo que se segue para a linguagem Pascal:

1.1. Atribuir os valores   Atribuir os valores   N1 = 5.5 ; N2 = 7.0 ; N3 = 4.5 N1 = 5.5 ; N2 = 7.0 ; N3 = 4.5 2.2. Calcular a soma:    Calcular a soma:    S = N1 + N2 + N3S = N1 + N2 + N33.3. Calcular a média:    Calcular a média:    M = S/3M = S/34.4. Mostrar o resultado    Mostrar o resultado    MM

(Só para lembrar: (Só para lembrar: N1, N2N1, N2 e e N3N3 contém as notas, contém as notas, SS guarda o resultado da soma e guarda o resultado da soma e MM guarda o resultado da média. ) guarda o resultado da média. )

Vemos que o algoritmo inteiro passou para o corpo do programa. Vemos também que na cabeça aparece a declaração de N1, N2, N3, S e M.

O corpo do programa consta geralmente de três partes principais: Entrada de dados, processamento ou cálculo e saída dos resultados.

Page 9: Programar Em Pascal

Geralmente, o computador trabalha bastante com números reais e inteiros, Geralmente, o computador trabalha bastante com números reais e inteiros, mas também pode guardar outros mas também pode guardar outros tipos de dadostipos de dados, como por exemplo, , como por exemplo, caracteres (um caractere é uma letra, símbolo ou dígito), da seguinte caracteres (um caractere é uma letra, símbolo ou dígito), da seguinte forma:forma:

Var Var letra : charletra : char

A linguagem Pascal tem algumas regras que deverá considerar A linguagem Pascal tem algumas regras que deverá considerar quando quiser criar programas…quando quiser criar programas…

Todos os comandos têm um Todos os comandos têm um   ;    ;   no final (com algumas excepções) no final (com algumas excepções)

Para alterar o conteúdo de uma caixa ou variável utilizamos um Para alterar o conteúdo de uma caixa ou variável utilizamos um :=:= e não e não um = como nos algoritmos um = como nos algoritmos

No Pascal não existe diferença entre letras maiúsculas e minúsculas, No Pascal não existe diferença entre letras maiúsculas e minúsculas, portanto pode escrever os comandos e os nomes de variáveis com portanto pode escrever os comandos e os nomes de variáveis com qualquer letra. qualquer letra.

Os comentários dentro do programa não são considerados pelo Os comentários dentro do programa não são considerados pelo computador, porém é recomendável escrever os comentários explicando o computador, porém é recomendável escrever os comentários explicando o que faz cada linha ou bloco do programa. Isso o ajudará, por exemplo, a que faz cada linha ou bloco do programa. Isso o ajudará, por exemplo, a entender o que faz o programa quando quiser voltar a usá-lo após algum entender o que faz o programa quando quiser voltar a usá-lo após algum tempo. Para escrever comentários dentro do programa use // seguido do tempo. Para escrever comentários dentro do programa use // seguido do comentário que deseja introduzir.comentário que deseja introduzir.

Page 10: Programar Em Pascal

Vamos supor agora que gostaria que o computador o informasse de Vamos supor agora que gostaria que o computador o informasse de acordo com o resultado da média se foi aprovado ou não na disciplina acordo com o resultado da média se foi aprovado ou não na disciplina de matemática.de matemática.

Para tal, elaborava o seguinte algoritmo:Para tal, elaborava o seguinte algoritmo:

1. Atribuir os valores a 1. Atribuir os valores a N1, N2, N3N1, N2, N3

2. Calcular a soma: 2. Calcular a soma: S = N1 + N2 + N3S = N1 + N2 + N3

3. Calcular a média: 3. Calcular a média: M = S/3M = S/3

4. Se a média for maior ou igual a 5: informar 4. Se a média for maior ou igual a 5: informar aprovadoaprovado

5. Caso contrário: informar 5. Caso contrário: informar reprovadoreprovado

O programa correspondente

a este algoritmo seria:

Analisando o programa observamos que uma condição é traduzida em Pascal usando os comandos IF... ELSE e a estrutura geral é a seguinte:

IF condição THEN fazer tarefa 1

ELSE fazer tarefa 2 ;

Page 11: Programar Em Pascal

Que acontece se existir mais de um comando a ser executado Que acontece se existir mais de um comando a ser executado para cada condição? para cada condição?

Para o computador saber que comandos ou tarefas fazem parte de uma Para o computador saber que comandos ou tarefas fazem parte de uma condição, vamos usar blocos. condição, vamos usar blocos.

Um bloco é uma sequência de comandos que começa com Um bloco é uma sequência de comandos que começa com BEGIN BEGIN e e termina com termina com ENDEND. .

Portanto a estrutura de IF usando bloco seria:Portanto a estrutura de IF usando bloco seria:

IFIF condição condição THEN THENBEGINBEGIN

comando1;comando1; comando2;comando2;

comando3;comando3; ............ END;END;

(Da mesma forma para o ELSE também podemos usar o bloco quando for (Da mesma forma para o ELSE também podemos usar o bloco quando for necessário. )necessário. )

Page 12: Programar Em Pascal

Já vimos alguns tipos de dados que o computador utiliza, como Já vimos alguns tipos de dados que o computador utiliza, como IntegerInteger para para número inteiros, número inteiros, RealReal para números reais e para números reais e CharChar para caracteres. para caracteres.

Vamos agora aprender um novo tipo que é o Vamos agora aprender um novo tipo que é o booleanboolean..

O computador utiliza variáveis do tipo boolean para saber o resultado de uma O computador utiliza variáveis do tipo boolean para saber o resultado de uma condição ou comparação. Portanto uma variável do tipo boolean pode ter condição ou comparação. Portanto uma variável do tipo boolean pode ter apenas dois valores: FALSO ou VERDADEIRO, em Pascal isso significa, apenas dois valores: FALSO ou VERDADEIRO, em Pascal isso significa, FALSE ou TRUE. FALSE ou TRUE.

Vejamos um exemplo de como usar as variáveis do tipo boolean. Vejamos um exemplo de como usar as variáveis do tipo boolean.

No exemplo anterior, suponha que precisamos de guardar numa variável o No exemplo anterior, suponha que precisamos de guardar numa variável o resultado (se estamos aprovados ou não). resultado (se estamos aprovados ou não).

Logo, o programa modificado seria:

Page 13: Programar Em Pascal

Para entender melhor a estrutura IF veja como o seguinte Para entender melhor a estrutura IF veja como o seguinte problema será resolvido em Pascal…problema será resolvido em Pascal…

Faça um programa que dados três números, mostre qual é o maior deles:

O Pascal permite escrever muitos comandos na mesma linha, porem é recomendado que seja escrito apenas um comando por linha para facilitar o entendimento do programa e apenas em casos de comandos simples (por exemplo, atribuições) usar mais de um comando por linha.

Apenas com um comando Writeln podemos mostrar vários resultados. Neste caso as variáveis devem ser separadas por um  ,  . Também podemos incluir textos dentro do Writeln usando duas aspas ( ' ), como mostra o seguinte exemplo: Writeln('o valor de a é : ' , a, ' e o valor de b é: ', b) Não coloque o ; no comando anterior a ELSE, nem no comando END

Page 14: Programar Em Pascal

Uma das grandes vantagens da programação é que podemos agrupar cálculos Uma das grandes vantagens da programação é que podemos agrupar cálculos repetidos e informar ao computador através da linguagem de programação que repetidos e informar ao computador através da linguagem de programação que trechos deve repetir, quantas vezes ou em que condições. trechos deve repetir, quantas vezes ou em que condições.

Para entender melhor vamos resolver o seguinte problema:Para entender melhor vamos resolver o seguinte problema:

Calcular e mostrar o quadrado de todos os número inteiros de 1 até 100…Calcular e mostrar o quadrado de todos os número inteiros de 1 até 100…

No Pascal utilizamos Comando No Pascal utilizamos Comando WHILEWHILE......DODO para indicar ao computador que para indicar ao computador que vamos repetir um trecho do programa enquanto uma condição for satisfeita. vamos repetir um trecho do programa enquanto uma condição for satisfeita.

Vejamos como fica na linguagem Pascal… Vejamos como fica na linguagem Pascal… Observando o programa vemos que além do While...Do aparecem outras duas palavras reservadas da linguagem que já conhecemos: o Begin...End.

Neste caso, estas palavras são utilizadas para informar ao computador onde começa e acaba o trecho do programa que precisa de ser repetido. O formato geral do comando WHILE é o seguinte:

WHILE condição DO BEGIN

blocos de comandosEND;

Page 15: Programar Em Pascal

Agora vamos aprender uma outra forma de entrada de dados bastante utilizada. É Agora vamos aprender uma outra forma de entrada de dados bastante utilizada. É muito trabalhoso ter que ir ao programa e mudar os valores dos dados cada vez muito trabalhoso ter que ir ao programa e mudar os valores dos dados cada vez que desejamos fazer cálculos com novos dados. que desejamos fazer cálculos com novos dados.

Por exemplo, no programa da média temos que alterar os valores de Por exemplo, no programa da média temos que alterar os valores de N1, N2N1, N2 e e N3N3 se quisermos calcular a média das notas de outro aluno. Ficaria mais fácil se se quisermos calcular a média das notas de outro aluno. Ficaria mais fácil se pudéssemos informar isso durante a execução do programa. pudéssemos informar isso durante a execução do programa.

Para fazer isso em Pascal existe o comando chamado Para fazer isso em Pascal existe o comando chamado ReadlnReadln. .

Como seria então o programa da média se quiséssemos introduzir nós Como seria então o programa da média se quiséssemos introduzir nós mesmos os valores das notas?mesmos os valores das notas?

Os comandos IF e While podem ter mais que uma condição, unidos por OR ou AND. Por exemplo:

WHILE (N >0 AND N <100) DO BEGIN ...... END;

Isso significa que o bloco dentro do While será repetido enquanto o N for maior que 0 e menor que 100.

No mesmo comando Readln podemos ler mais de um dado, por exemplo a leitura de dados no programa da media pode ser escrito ainda como:

Readln(N1,N2,N3);

Page 16: Programar Em Pascal

Como calcular o resto de uma divisão?Como calcular o resto de uma divisão?

No pascal existe um operador chamado No pascal existe um operador chamado modmod, que calcula o resto de uma divisão. Por exemplo: , que calcula o resto de uma divisão. Por exemplo:

10 10 modmod 3 é igual a 1 3 é igual a 1

O operador O operador modmod é util para saber se um número é divisível por outro. é util para saber se um número é divisível por outro.

Por exemplo para saber se 50 é divisivel por 4, calculamos o 50 Por exemplo para saber se 50 é divisivel por 4, calculamos o 50 modmod 4. Como o resultado é 4. Como o resultado é igual a 2, concluímos que 50 não é divisivel por 4. igual a 2, concluímos que 50 não é divisivel por 4.

Imagine agora que deseja criar um programa em que introduza determinado número e quer Imagine agora que deseja criar um programa em que introduza determinado número e quer que o computador calcule de forma a concluir se o número introduzido é ou não par.que o computador calcule de forma a concluir se o número introduzido é ou não par.

Como pode ver neste exemplo, aparece um novo comando que ainda não tínhamos visto. Uses crt.

Este comando permite fazer uma pausa de modo a permitir ao utilizador visualizar resultados no fim do programa.

O “Delay” deverá ficar após o resultado que quererá visualizar como mostra o exemplo.

1000 = 1 segundo de espera

10000= 10 segundos…

100000= 100 segundos…etc

Page 17: Programar Em Pascal

Como fazer para armazenar um conjunto de dados do mesmo tipo?Como fazer para armazenar um conjunto de dados do mesmo tipo?

Em Pascal, para declarar uma variável que armazena um conjunto de dados do mesmo tipo é Em Pascal, para declarar uma variável que armazena um conjunto de dados do mesmo tipo é utilizada a palavra utilizada a palavra arrayarray. Vamos supor que desejamos declarar uma variável para armazenar . Vamos supor que desejamos declarar uma variável para armazenar o nome de uma pessoa. Sabemos que um nome é constituído por caracteres, portanto a o nome de uma pessoa. Sabemos que um nome é constituído por caracteres, portanto a declaração seria:declaração seria:

Var nome: array [1..100] of charVar nome: array [1..100] of char

Esta declaração informa ao computador para reservar 100 caixinhas do tipo Esta declaração informa ao computador para reservar 100 caixinhas do tipo charchar para armazenar para armazenar o nome de uma pessoa. Na declaração entre parênteses é colocado o número máximo de o nome de uma pessoa. Na declaração entre parênteses é colocado o número máximo de elementos do array, neste caso, como não sabemos antecipadamente qual vai ser o tamanho elementos do array, neste caso, como não sabemos antecipadamente qual vai ser o tamanho do nome, colocamos um número grande. do nome, colocamos um número grande.

Vamos resolver um problema aplicando arrays.Vamos resolver um problema aplicando arrays.Dado o nome de uma pessoa, queremos determinar o número de vogais contidos no nome. Dado o nome de uma pessoa, queremos determinar o número de vogais contidos no nome.

Para determinar o número de vogais utilizámos um contador.

A cada passo fomos comparando os caracteres um por um e quando achámos uma vogal acrescentamos 1 ao contador.

Para aceder a cada caractere dentro do array, precisamos também de um contador.

Page 18: Programar Em Pascal

Temos visto que em muitos casos conhecemos o número de repetições de um bloco de Temos visto que em muitos casos conhecemos o número de repetições de um bloco de comandos, para tal temos usado o comando while juntamente com um contador. comandos, para tal temos usado o comando while juntamente com um contador.

Por exemplo, no programa anterior o bloco dentro do comando while é repitido Por exemplo, no programa anterior o bloco dentro do comando while é repitido enquanto o indice i é menor ou igual a 100 e em cada passo acrescentamos o valor enquanto o indice i é menor ou igual a 100 e em cada passo acrescentamos o valor do índice. do índice.

Para estas situações em Pascal existe o comando FOR que facilita bastante…Para estas situações em Pascal existe o comando FOR que facilita bastante…

O formato do comando é o seguinte:O formato do comando é o seguinte:

FORFOR valor inicial valor inicial TOTO valor final valor final DODO BEGINBEGIN comandoscomandos ENDEND

Este comando pode ser utilizado somente se i for declarado como número inteiro e se conhecermos os seus valores, inicial e final.

O comando for é bastante usado principalmente para aceder aos elementos de um vector.

Vejamos como seria o programa anterior usando o comando FOR:Vejamos como seria o programa anterior usando o comando FOR:

Page 19: Programar Em Pascal

Uma matriz é um array de duas dimensões. Uma matriz é útil por exemplo para Uma matriz é um array de duas dimensões. Uma matriz é útil por exemplo para armazenar tabelas, fazer cálculos matemáticos, fazer desenhos, resolver problemas, armazenar tabelas, fazer cálculos matemáticos, fazer desenhos, resolver problemas, etc. etc.

Imagine que desejamos guardar no computador a lista dos alunos com suas respectivas Imagine que desejamos guardar no computador a lista dos alunos com suas respectivas notas em todas as disciplinas durante o ano. notas em todas as disciplinas durante o ano.

Por exemplo a seguinte tabela mostra a lista de 10 alunos e as notas em 8 disciplinas.Por exemplo a seguinte tabela mostra a lista de 10 alunos e as notas em 8 disciplinas.Gostaríamos fazer um programa para armazenar essa tabela no computador e depois poder calcular, por exemplo, a média de todas as notas de todos os alunos. Inclusive para saber o desempenho da turma inteira poderíamos calcular a media das medias. Em Pascal, uma matriz é definida em forma muito parecida com um vector:

Var notas : array [1..10,1..8] of real;

O número 10 indica o número máximo de linhas da matriz e o número 8 indica o número máximo de colunas. Se não sabemos com antecedência qual será o tamanho da nossa matriz podemos reservar um número grande como fizemos com os vectores.

Para manter a informação completa da tabela no computador, poderíamos armazenar também os nomes dos alunos num vector de string e as médias dos alunos num vector de números reais.

Veremos a seguir como trabalhar com matrizes, analisando Veremos a seguir como trabalhar com matrizes, analisando o programa que lê as notas dos alunos, calcula as medias, o programa que lê as notas dos alunos, calcula as medias, guarda num vector e imprime os resultados no ecrã do guarda num vector e imprime os resultados no ecrã do computador. computador.

Page 20: Programar Em Pascal

Clique aqui para ver o programa em pascal

Para aceder aos elementos de uma matriz utilizamos dois índices:

O primeiro para definir a linha e o segundo para definir a coluna.

Os vectores e matrizes são bastante usados em cálculos matemáticos.

No programa observamos que precisamos sempre de dois lados para percorrer todos os elementos de uma matriz. Quando um lado está dentro de outro lado, estes são chamados de lados aninhados.

É muito comum encontrar em programas lados aninhamos, especialmente quando se trabalha com vectores e matrizes.

Page 21: Programar Em Pascal

Pascal é uma linguagem estruturada, já que Pascal é uma linguagem estruturada, já que permite ordenar os blocos de comandos de permite ordenar os blocos de comandos de forma a serem executados em forma forma a serem executados em forma sequencial e sem saltos longos. sequencial e sem saltos longos.

É útil para encontrar falhas no programa É útil para encontrar falhas no programa (variáveis não definidas, falta de comandos (variáveis não definidas, falta de comandos fechando blocos, etc.), acompanhar sua fechando blocos, etc.), acompanhar sua execução e entender a funcionalidade do execução e entender a funcionalidade do programa. programa.

Outro factor importante para ter um programa Outro factor importante para ter um programa mais fácil de visualizar é a mais fácil de visualizar é a indentação. indentação.

Já deve ter notado que no programa em Pascal os Já deve ter notado que no programa em Pascal os comandos não começam todos na mesma comandos não começam todos na mesma coluna. coluna.

Por exemplo, todas as linhas depois do comando Por exemplo, todas as linhas depois do comando BeginBegin têm um espaço maior. Este tipo de têm um espaço maior. Este tipo de ordenação é chamada de ordenação é chamada de indentaçãoindentação. .

Isso significa que pode começar cada linha de Isso significa que pode começar cada linha de comando deixando espaços vazios no começo. comando deixando espaços vazios no começo.

Estes espaços vazios são ignorados pelo Estes espaços vazios são ignorados pelo computador e o resultado não é alterado, computador e o resultado não é alterado, porém o seu programa fica mais fácil de ler e porém o seu programa fica mais fácil de ler e entender. entender.

Sempre que for possível tente estruturar melhor Sempre que for possível tente estruturar melhor seu programa. Num programa correctamente seu programa. Num programa correctamente indentado fica mais fácil entender o que o indentado fica mais fácil entender o que o programa faz, determinando os blocos de programa faz, determinando os blocos de condições e lados. condições e lados.

Sem

inde

ntaç

ãoC

om in

dent

ação

Page 22: Programar Em Pascal

Resumindo…Resumindo… Write Write (escrever)(escrever) : : Imprime no ecrã determinado texto editado pelo Imprime no ecrã determinado texto editado pelo

programador.programador.

Read Read (ler)(ler) : : Memoriza determinado dado introduzido pelo utilizador.Memoriza determinado dado introduzido pelo utilizador.(Ambos os comandos podem conter “ln” no final que significa mudança de linha. Exemplo: writeln, readln.)(Ambos os comandos podem conter “ln” no final que significa mudança de linha. Exemplo: writeln, readln.)

If If (se) (se) : : Utiliza uma condição. SE a condição for verdadeira então executa um Utiliza uma condição. SE a condição for verdadeira então executa um conjunto de instruções, senão executa outro conjunto de instruções.conjunto de instruções, senão executa outro conjunto de instruções.

WhileWhile (enquanto) (enquanto) : : Permite executar um conjunto de instruções enquanto uma Permite executar um conjunto de instruções enquanto uma condição mantiver o valor lógico verdadeiro. Quando o valor lógico estiver falso, condição mantiver o valor lógico verdadeiro. Quando o valor lógico estiver falso, termina o ciclo e prossegue com a execução do programa.termina o ciclo e prossegue com a execução do programa.

ForFor (para) (para) :: Repte um bloco de instruções durante um determinado número de Repte um bloco de instruções durante um determinado número de vezes.vezes.

Vector Vector (Array unidimensional)(Array unidimensional) : : Memoriza determinados dados do mesmo tipo. Memoriza determinados dados do mesmo tipo. (char, integer, etc…). Na hora de memorizar dados, apenas contém uma linha (char, integer, etc…). Na hora de memorizar dados, apenas contém uma linha com várias colunas.com várias colunas.

Matriz Matriz (Array multidimensional)(Array multidimensional): : Memoriza determinados dados, podendo ser Memoriza determinados dados, podendo ser de diferentes tipos ou não. Na hora de memorizar dados, contém várias linhas e de diferentes tipos ou não. Na hora de memorizar dados, contém várias linhas e várias colunas.várias colunas.

Page 23: Programar Em Pascal

ResumindoResumindo Uses crt :Uses crt : Permite pausar o programa de modo a permitir ao Permite pausar o programa de modo a permitir ao

utilizador visualizar o ecrã.utilizador visualizar o ecrã.

Integer :Integer : Tipo de variável usado para números inteiros.Tipo de variável usado para números inteiros.

Real :Real : Tipo de variável usado para números reais (inteiros ou Tipo de variável usado para números reais (inteiros ou decimais).decimais).

Boolean :Boolean : Tipo de variável que apenas pode conter dois Tipo de variável que apenas pode conter dois valores: valores: TrueTrue (verdadeiro) ou (verdadeiro) ou FalseFalse (falso). (falso).

String :String : Tipo de variável que apenas contem um caractere Tipo de variável que apenas contem um caractere (letra) ou um conjunto de caracteres (palavra)(letra) ou um conjunto de caracteres (palavra)

Page 24: Programar Em Pascal

Trabalho Realizado por…Trabalho Realizado por…

Pedro RochaPedro Rocha

Nº 5Nº 5

10º C10º C

Neste trabalho apenas consta matéria dada ao longo do ano lectivo de 2007/2008 de Bases de Programação.Neste trabalho apenas consta matéria dada ao longo do ano lectivo de 2007/2008 de Bases de Programação.