Está en la 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.

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

.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.  Programa executável.

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

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

.   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.

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

.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.

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

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

. É 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. Por exemplo tratar um valor que é numérico como se se tratasse de um alfanumérico.

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

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

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

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

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

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

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.

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

Programa: Dados pessoais .

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

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

Exercícios .

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

Estruturas IF encaixadas .

Estruturas IF encaixadas (2º) .

Exercício a resolver:  Criar programa que:  pede ao utilizador as notas das disciplinas. calcula a média. 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) .

calcula a média.Exercício a resolver:  Criar um programa que:  pede ao utilizador as notas das disciplinas. 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 .

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 .

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

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

Repeat…Until… .

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

caso contrário mostra a mensagem “Construção de prédios” Pergunta se continua a calcular áreas (condição de saída) .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.

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

.:.2038.43/4/08./49077034 4897..2.8 .J/.4397E7424897.024897..80.7.:.425720394/49077034 ..J.E70.4 < 7.8 80.340.4393:.2038.E70.07.02 43897:4/0247.02 43897:4/057F/48 !07:39.147 2.84.75747.7:7./0:29077034 !0/04.7E70..... ./..476:0 2 .6:0 < < < < < !0/0.

9 &39 01 903 080 .42 #050.J.07.4.