Você está na página 1de 48

Módulo 6.

Fundamentos de Programação

Sistemas Digitais e Arquitetura de Computadores

Funcionamento básico de um programa num computador

Quando iniciamos um programa, estamos a carregar nas memórias RAM esse programa que está instalado no disco rígido do computador. A componente fundamental de um computador é o processador ou CPU (Central Processing Unit), onde são realizadas as operações de processamento dos dados que estão nas memórias RAM. Os resultados do processamento são novamente enviados para as memórias RAM e daí para o disco, monitor, impressora, etc.

Linguagem máquina

Todas as instruções num sistema informático são codificadas em formato binário (zeros e uns), próprio da linguagem máquina – a única que o computador reconhece. Linguagem máquina: Linguagem dos dígitos binários codificados em sinais elétricos. Linguagem Assembly: Palavras codificam as instruções em zeros e uns, especificando as características do hardware. Para qualquer instrução de zeros e uns tem que haver uma expressão e tem que se conhecer o funcionamento dos circuitos eletrónicos.

Linguagens de alto nível

Linguagens de alto nível: Muito distanciadas da linguagem máquina ou das especificações do hardware, estão escritas numa linguagem humana – em Inglês. Exemplos: Pascal, Basic. Surgiram ainda novas versões dessas linguagens para ambiente Windows: C, C++, Visual Basic.

que têm uma área para escrevermos os programas.Compiladores  A conversão dos programas de uma linguagem de alto nível para linguagem máquina é feita por programas específicos para isso. . os compiladores ou interpretadores.

 Programa executável.Programas-fonte / Código máquina  Programa-fonte ou código-fonte: É um programa escrito em linguagem de alto nível. programa-objeto ou código-máquina é o programa depois de ser compilado e já transformado em linguagem máquina. .

Ambientes de programação  Servem para permitir escrever os programas. detetar erros e corrigi-los. . convertê-los em código-máquina.

Linguagens de alto nível. Compiladores.Proposta de trabalho  Trabalho de pesquisa:          Componentes internos do computador e seu funcionamento. Ambientes de Programação Linguagem de Programação Pascal Linguagem de Programação Basic Visual Basic . Linguagem máquina. Programa-fonte/Código-máquina.

  Os componentes gerais de uma linguagem são a sua sintaxe e a sua semântica. .Linguagem de Programação  Conjunto de regras sintáticas e semânticas que permitem construir programas de computador.

.Sintaxe  A sintaxe de uma linguagem de programação consiste nas palavras. instruções e de como podem ser combinadas.

Semântica  É o significado e comportamento de cada instrução e das combinações das instruções. permite evitar ambiguidades e gerar o efeito correcto. .

Gramática  Conjunto de regras de construção das instruções do programa. .

5+num .Expressão   É uma combinação de entidades que representa o cálculo dum valor.

. São detetados na compilação e têm que ser corrigidos.Erros de Sintaxe   Erros ao escrever numa linguagem. escrever uma palavra que não faz parte da sintaxe dessa linguagem.

Por exemplo tratar um valor que é numérico como se se tratasse de um alfanumérico. . É detetado na compilação e tem que ser corrigido.Erros de Semântica  São instruções com erros de significado que não são aceites exactamente por isso.

.Erros de Lógica  É um erro que resulta de engano no raciocínio do programador. mas gera resultados errados. geralmente não é detetado na compilação.

de forma a ser entendida por qualquer pessoa) sem necessidade de conhecer a sintaxe de nenhuma linguagem de programação.Pseudocódigo  É uma forma genérica de escrever um raciocínio. . utilizando uma linguagem simples (nativa a quem o escreve.

Representa os passos necessários para realizar uma tarefa e pode ser implementado num computador.  .Algoritmos  Instruções bem definidas. embora muitos algoritmos sejam mais complexos.  Exemplo de uma receita culinária.

Pode mudar de valor através duma instrução de atribuição.  .Variáveis  São como que recipientes onde podemos guardar valores. estão em memória e são definidas por um nome.

. é sempre o mesmo desde que é atribuído. mas o valor nunca muda.Constantes  São como as variáveis.

símbolos).Valores numéricos. alfanuméricos e lógicos  As variáveis podem conter:    Numéricos (apenas números). Lógicos (Verdadeiro ou falso) . Alfanuméricos (números. carateres.

Proposta de trabalho  Trabalho de pesquisa:              Linguagens de programação Sintaxe Semântica Gramática Expressão Erros de sintaxe Erros de semântica Erros de lógica Pseudocódigo Algoritmos Variáveis Constantes Valores numéricos. alfanuméricos e lógicos .

org .pascaland.Instalar compilador  Pesquisar e fazer download de compiladores de Pascal Sugestões:    PZIM Consultar www.

Estrutura de um programa em Pascal  Contem:   Uma parte de declarações – indicação dos dados a utilizar. Uma parte de instruções – com as instruções do programa. .

Programa: Dados pessoais .

 Criar um programa que pede ao utilizador o preço sem iva e calcula o preço com iva.Exercícios  Criar um pequeno programa que pede ao utilizador três números e calcula a sua soma. Criar programa que calcule a média final de todas as disciplinas.  .

 De repetição:     De salto:  .Estruturas de controlo    As instruções básicas que vimos só se utilizam excepcionalmente em programas muito simples.THEN.. As estruturas de controlo podem ser:  De decisão:   IF….…ELSE CASE…OF WHILE….DO REPEAT…UNTIL FOR…TO…DO GOTO…. Existem tipos de instruções – as estruturas de controlo – que permitem ao programa escolher uma entre várias alternativas. em programação necessitamos constantemente de instruções mais complexas.

Exercícios .

calcula a média. .Exercícios  Criar programa que pede a classificação final e diz se é aprovado(>=10) ou reprovado (<10). e diz se é aprovado ou reprovado.  Criar um pequeno programa que pede ao utilizador as notas das disciplinas.

Estruturas IF encaixadas .

Estruturas IF encaixadas (2º) .

calcula a média.Exercício a resolver:  Criar programa que:  pede ao utilizador as notas das disciplinas. e se: média = 9  média < 9  média > 9  –> o aluno tem que fazer exames –> o aluno reprova –> o aluno aprova  .

Estruturas Case…Of (com valores isolados)  .

Estruturas Case…Of (com conjuntos de valores) .

e dá a mensagem se:       média = 9 média < 9 –> Classificação: Tem que realizar exame –> Classificação: Reprovado –> Classificação: Suficiente –> Classificação: Bom –> Classificação: Muito Bom –> Classificação: Excelente média entre 10 e 13 média entre 14 e 16 média entre 117 e 18 média entre 19 e 20 . calcula a média.Exercício a resolver:  Criar um programa que:  pede ao utilizador as notas das disciplinas.

Estrutura While … Do .

Estrutura While … Do .

Estrutura For…To…Do .

Estrutura For…To…Do .

Estrutura For…To…Do .

Exercício: Calcula o preço com iva .

Exercício:preço com iva e condição de saída .

condição de saída e soma todos .Exercício:preço com iva.

Exercício:  Criar programa que:   Pede 2 números Diz qual é o maior. .

Repeat…Until… .

Exercício com: Repeat…Until e Case…of .

Exercício:  Criar programa que:      Pede a largura de um terreno Pede o comprimento do terreno Calcula e mostra no ecrã a área do terreno Mostra a mensagem “Construção de moradias” se a área for maior que 700 m. caso contrário mostra a mensagem “Construção de prédios” Pergunta se continua a calcular áreas (condição de saída) .

Exercício com: Repeat…Until e If…then…else .

2038.J/.7.75747..J..6:0 < < < < < !0/0.E70.2038.:.02 43897:4/057F/48 !07:39.80..4 < 7.8 80.2.476:0 2 .../.84.147 2.425720394/49077034 .:.4393:./49077034 4897./0:29077034 !0/04.02 43897:4/0247.8 .07.4397E7424897.E70..340. ..024897.7:7.7E70...43/4/08.

42 #050.J.4.9 &39 01 903 080 .07.