computadores e linguagens de programação

39
António Tavares, 2001/2002 Acetato 1 Algoritmos Sistemas de Informação para a Gestão 1ºano 2001/2002 Diurno e Nocturno 1ª semestre [AAZ95] Azul, Artur Augusto, Técnicas e Linguagens de Programação, Porto Editora 1995 (pgs 8 - 73) Computadores e Linguagens de Programação Estrutura e funcionamento de um computador Algoritmos e Lógica da Programação

Upload: calvin-chambers

Post on 03-Jan-2016

52 views

Category:

Documents


0 download

DESCRIPTION

Computadores e Linguagens de Programação. Estrutura e funcionamento de um computador Algoritmos e Lógica da Programação. 1. Suporte físico à Programação. Compreender O que é um programa e uma linguagem de programação Como um programa se articula com um computador - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Computadores e Linguagens de Programação

António Tavares, 2001/2002 Acetato 1

Algoritmos Sistemas de Informação para a Gestão 1ºano2001/2002 Diurno e Nocturno 1ª semestre

[AAZ95]

Azul, Artur Augusto, Técnicas e Linguagens de Programação,

Porto Editora 1995 (pgs 8 - 73)

Computadores e Linguagens de Programação

Estrutura e funcionamento de um computador

Algoritmos e Lógica da Programação

Page 2: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 2

1. Suporte físico à Programação

Compreender

O que é um programa e uma linguagem de programação

Como um programa se articula com um computador

Ter algumas noções básicas acerca da estrutura e do funcionamento de um computador, as quais, apesar da evolução tecnologica, mantêm-se inalteradas à mais de 30 anos

Page 3: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 3

1.1. Estrutura e funcionamento de um computador

Computador – máquina ou cnjunto de dispositivos electrónicos capazes de processar informação

Memória Secundária

Unidade Central de Processamento

(CPU)

Memória Primária

Dispositivosde Input

Dispositivosde Output

Esquema básico de um computador

Page 4: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 4

Componentes fundamentais

CPU (Central Processing Unit) – é a componente que realiza a parte fundamental do trabalho do computador, e que consiste em processar electronicamente dados ou informação

Unidade de aquisição e deinterface com a memória primária

Registos (Registers)

Unidade de Controlo

Unidade Lógico

Aritmética (ALU)

MemóriaPrimária

Esquema básicode um microprocessador

Na memória primária ou central é armazenada

informação codificada, que vai ser chamada ao processador,

para este realizar as operações ou instruções

contidas nessa informação

A unidade de controlo envia aos outros componentes sinais de activação e sincronização das operações

Os registos são pequenos circuitos de armazenamento temporário de instruções e dados

Page 5: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 5

Estrutura Simplificada deuma Memória (RAM)

Componentes fundamentais

O processador apenas entende os sinais eléctricos que percorrem os circuitos que o constituem

Os computadores funcionam com o sistema de informação bimário (zeros e ums)

BIT – inidade minima de informação com que lida um SI (pode ser 0 ou 1)

Byte – agrupamento de 8 bits

Todos os dados e instruções que circulam entre o processador e a memória estão sobre a forma de bits e têm significado quando resultam do agrupamento de bits (bytes)

Um programa é armazenado em memória sobre a forma de uma sequência de instruções (bytes) podendo ser directamente executado pelo processador – PROGRAMA OBJECTO

células

ende

reço

s N9876543210

Page 6: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 6

Execução de um programa

Informação que entra para um sistema informático

Instruções de programas

Dados manipulados por esses programas

Instruções e dados são armazenados temporáriamente na RAM e codificadas e executadas no processador

Cada instrução é executada através de um ciclo de instrução

Ciclo de Instrução – processo que consiste em fazer com que cada instrução passe da memória para o processador, para aí poder ser executada

1. Em cada instante, o processador contém num registo próprio (Instruction Pointer-IP ou Program Counter-PC) o endereço ou posição de memória onde se encontra a próxima instrução a ser executada

2. A unidade de controlo envia um sinal à memória pedindo o conteúdo da instrução que está no endereço dado por IP

3. A instrução pedida é devolvida para um outro registo do processador (Instruction Register – IR) para então ser descodificada e executada pelo

Page 7: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 7

1.2. Níveis de um Sistema Informático

O Computador é um sistema que integra e articula dois tipos fundamentais de componentes:

Físicos - Hardware (compon. mecânicos, electrónicos e electromecânicos)

Lógicos - Software (programas = conjunto de instruções codificadas)

O SW permite que a máquina física (o HW) deixe de ser apenas um emaranhado de circuitos e passe a ser um um utensílio que pode realizar tarefas complexas manuseável por pessoas

O SW permite criar uma abstracção do HW (uma Máquina Virtual)

O SW é ele próprio organizado em camadas, em que, camadas de nível superior são abtracções de camadas de nível inferior

Page 8: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 8

Tipos e camadas de Software

Sistema Operativo – actua como interface entre o HW e o utilizador ou os seus programas de aplicação

Programas de aplicação - Processador de Texto; Folha de Cálculo; etc.Sobrepõem-se ao sistema operativo

Um Sistema Informático pode ser visto como uma sucessão de máquinas virtuaisas quais são criadsa usando linguagens de programação

Software de Aplicação

Software de Sistema

Programas de Aplicação

Utilizador Programador

Software de Programação

Hardware - Máquina

Interface de Comandos (Shell)

Núcleo (Kernel)

Page 9: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 9

2. Linguagens de Programação

Linguagem de Programação - é um sistemna de escrita formal para enunciar a execução de operações em computador

– tem uma terminologia ou um conjunto de termos, palavras e sinais, que

assumem determinados significados (sintaxe)

– ou conjunto de regras que estipulam o uso correcto dos termos, para

construir significados válidos (semântica)

Programa - é um conjunto de frases que utilizam os termos e as regras de uma determinada linguagem de programação, com vista a concretizar determinados objectivos

Algoritmo – forma ou fórmula para resolução de um determinado problema, mediante o estabelecimento de determinadas regras e procedimentos.

Page 10: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 10

2.1. Da Linguagem Natural à Linguagem Máquina

Programa-objectoou executável

Linguagem máquina ou código-máquina

Programa tradutor

Programa-fonte

Assemblador

Linguagens de Programação

Linguagem Natural

de “Baixo nível”(Assembly)

Page 11: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 11

2.1. Da Linguagem Natural à Linguagem Máquina

Programa-objectoou executável

Programa-objectoou executável

Linguagem máquina ou código-máquina

Programas tradutores

Programa-fonte Programa-fonte

Compilador InterpretadorAssemblador

Linguagens de Programação

Linguagem Natural

de “Alto Nível”(Pascal, C, C++, Java, ...)

de “Baixo nível”(Assembly)

Page 12: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 12

2.1. Da Linguagem Natural à Linguagem Máquina

Programa-objectoou executável

Linguagem máquina ou código-máquina

Programas tradutores

Programa-fonte Programa-fonteCompiladorOu tradutor

Assemblador

Linguagens de Programação

Linguagem Natural

de “Alto Nível”(Pascal, C, C++, Java, ...)

de “Baixo nível”(Assembly)

Page 13: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 13

2.1. Da Linguagem Natural à Linguagem Máquina

Programa-objectoPrograma-objecto

Linguagem máquina

Programa tradutor

Programa-fonte Programa-fonte

CompiladorAssemblador

Linguagens de Programação

Linguagem Natural

de “Alto Nível”(Pascal, C, C++, Java, ...)

de “Baixo nível”(Assembly)

Programa-objecto

Programa tradutor Linker

Linker - liga programas objecto - Reutilização

Page 14: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 14

2.2. Ambientes de programação

Tipos de Ficheiros:

Ficheiro de texto simples (ASCII) – informação em formato de caracteres => programa em código fonte

Ficheiro binário – informação em formato binário => programa executável (em formato binário directamente executável)

Ambiente de programação – apoia o programador nas tarefas habituais, desde a escrita à complicação dos programas, passando pela detecção e correcção dos erros que os programas possam conter. Ferramentas típicas:

– Editores

– Compiladores

– Depuradores (debbugers)

– Verificadores

– Geradores de dados para testes

– Linkers (ligadores)

– .....

Page 15: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 15

2.3. A evolução das Linguagens de Programação

Alguns aspectos que deram origem a evoluções das linguagens de programação

– autonomia do código fonte

– satisfação de necessidades sectoriais (ex. matemática)

– maior estruturação na abordagem dos problemas

– melhor manutenção

– maior expressividade (Inteligência Artificial)

– geração de código

– reutilização de código

– maior aproximação entre a linguagem natural e as linguagens de programação

– .......

As linguagens foram sendo classificadas em gerações em função das características que ofereciam, considerando-se que linguagens com caracrterísticas semelhantes pertencem à mesma geração

Page 16: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 16

2.3. A evolução das Linguagens de Programação

Linguagens máquina,assembly

Primeiras linguagens

Linguagens estruturadas,4GL

Linguagens Orientadaspor Objectos

1960 1970 1980 1990 2000

Com

plexidade do SW

Page 17: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 17

2.3. A evolução das Linguagens de Programação

Ling. 1ª geração

– Dependentes da máquina, ao mais baixo nível de abstracção.

– Codificação em Assembly Ling. 2ª geração

– Oferecem algum nível de abstracção e Introduzem as Bibliotecas de Software Ling. 3ª geração (Linguagens Estruturadas)

– Ricas em capacidades procedimentais e estrutuas de dados. Dividem-se em:• General Purpose High Order Languages (Pascal, C, ...)• Object Oriented Languages

Ling. 4ª geração

– Sintaxe distinta para controlo e representação de estruturas de dados

– O seu elevado nível de abtracção elimina a necessidade de especificação algoritmica exaustivamente detalhada

– Combinam características procedimentais com não-procedimentais

– Query Languages e Geradores de Aplicações. Ling. 5ª geração

– Linguagens não-procedimentais que permitem a declaração do problema a resolver possuindo a própria linguagem mecanismos para a sua resolução

– Linguagens declarativas (Prolog)

Page 18: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 18

2.3. A evolução das Linguagens de Programação

Smalltalk

Simula

C Pascal

Módula-2

Ada

OO Pascal

Objective C

C #

C ++

JavaActor

Eiffel

Fortran Cobol

Algol

Primeiras Linguagens

Linguagens Estruturadas

Linguagens percursorasOO

LinguagensOO

Page 19: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 19

2.4. Paradigmas de Linguagens de Programação

Paradigma de programação– define um modelo ou norma a seguir pelas linguagens de programação baseadas

no paradigma

Programação procedimental, sequencial, imperativa ou estrutural– O programa é uma sequência de comandos ou instruções que o programador

fornece ao computador e que este executa sequencialmente

Programação declarativa– O programador declara o conhecimento que o computador deve ter necessário à

resolução do problema e como este deve proceder para atingir a solução

Programação funcional– Os programas baseiam-se em principios matemáticos (funções e conjuntos)

Programação OO– Surge como uma evolução da programação estruturada e modular

– Os programas são substituidos por objectos que encapsulam dados e instruções

.....

Page 20: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 20

3. A Lógica da Programação

Enfoque: Programação Estruturada

Os Algoritmos– permitem-nos partir dos problemas e obter os programas

– são a forma de lidar com a complexidade natural da actividade de programação

– São a fase intermédia entre a compreensão do problema e a escrita do programa numa linguagem de programação

Algoritmo

– é uma sequência ordenada e precisa de passos, acções ou operações, que conduzem à solução de um dado problema

– a sua formulação consiste na descrição de forma ordenada, com clareza e rigor, das operações que se pretendem realizar em computador para resolver um problema ou atingir determinados objectivos

Page 21: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 21

3.1. Fases tipicas na elaboração de um programa

Análise do Problema

Formulação de um Algoritmo

Tradução do algoritmo numprograma-fonte

Tradução do programa-fontepara código-máquina

Testes de verificação lógica

Programa Terminado

Detecção deerros de escrita

Detecção deerros de lógica

sim

não

sim

não

Rev

isã

o d

o T

exto

Rev

isã

o d

o a

lgor

itmo

Page 22: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 22

3.2. Entidades fundamentais da lógica de programação

Nos algoritmos destinados a programas de computador, tem de se recorrer a diversas estruturas de representação das acções ou operações a realizar

Entidades fundamentais:

– Dados

– Instruções básicas

– Estruturas de controlo

– Condições ou expressões lógicas

– Subprogramas

Um programa executa sequencialmente um conjunto de instruções básicas sobre dados

São no entanto necessárias situações em que:– Uma instrução tenha de ser repetida várias vezes

– Decidir sobre se deve ou não executar determinada instrução em função de uma determinada condição

– Seleccionar a acção a realizar de entre um conjunto de alternativas

Page 23: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 23

3.3. Exemplo:

Problema:– É dado o preço de um terreno de forma rectangular, bem como as

medidas de dois dos lados adjacentes

– Pretendemos saber se o seu preço por metro quadrado está acima ou abaixo da média dos preços praticados na zona (que nos é dado)

Formulação do algoritmo:

Táctica : decompor o problema em problemas mais simples

1. Temos de saber: o preço do terreno; a medida do lado A (em metros); a medida do lado B (em metros); o preço médio por metro quadrado

2. Calcular a área do terreno: área = lado A x lado B

3. Calcular o preço por m2: preço por m2 = preço do terreno / área

4. Comparar os preços por m2

SE preço por m2 > preço médio ENTÃO o preço está acima da média

SE preço por m2 < preço médio ENTÃO o preço está abaixo ao da média SENÃO o preço está abaixo da média

Page 24: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 24

3.4. Formas de representar algoritmos

Existem essencialmente duas para a programação estruturada:

Fluxogramas – descrição gráfica

Pseudocódigo – descrição textual que se aproxima da linguagem natural

Os Fluxogramas estão em desuso, pelo que vamos optar nesta disciplina, em exclusivo, pela utilização do Pseudocódigo, e fazer um paralelo constante entre o pseudocódigo e as linguagens de programação que vamos utilizar.

Page 25: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 25

Fluxogramas

Simbolos Significado Exemplo

Processamento em geral

Leitura/Escritade dados

Inicio/Fimde Processamento

Linha de Fluxo

Conector de Fluxos

Decisão condicional

Escolha múltipla

Subprograma

x x+1

Escreve x

Inicio

X>5

Rotina x

Caso x

Page 26: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 26

Fluxogramas

EscreverValores iguais

Inicio

Fim

Ler valor 1

Ler valor 2

Valor 1 > Valor2

EscreverValor 1 é maior

Valor 1 > Valor2

EscreverValor 2 é maior

Não

Sim

Não

Page 27: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 27

Pseudocódigo

Código de escrita que :

– utiliza uma combinação de termos convencionais para indicar as instruções do programa

– os termos utilizados são usualmente um misto de palavras da nossa linguagem natural com palavras e notações típicas das linguagens de programação.

Características:

– Não tem um notação standard

– Tem maior proximidade com as linguagens de programação permitindo diminuir o esforço gasto no desenvolvimento/codificação

Page 28: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 28

Pseudocódigo

Início

Escrever (“Introduza dois valores”)

Ler (valor1)

Ler (valor2)

SE valor 1 > valor ENTÃO

Escrevrer (valor 1, “é maior”)

SENÃO

SE valor 1 < valor 2 ENTÃO

Escrever (valor 2, “é maior”)

SENÃO

Escrever (“valores iguais”)

Fim

Page 29: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 29

3.5. Ciclo de obtenção do produto final

Ciclo: Formulação, Codificação, Compilação, Depuração

Situação/Problema

Escrita de um programa - tradução do algoritmo em

linguagem de programação

Linguagens de programação

Tradução doprograma-fonte em linguagem-máquina

CompiladoresInterpretadores

Programa Terminado

Programa em código-máquina

Formulação de um algoritmo como

solução do problemaDiagramas

FluxogramasPseudocódigo

Verificação e depuração do

programa

Page 30: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 30

3.6. A abordagem Estruturada

Linguagens de Programação Estruturadas => Abordagem Estruturada

Abordagem Estruturada - abordagem sistemática da construção de SW que os princípios como:

1. a separação das definições de dados e de programa

2. aconcepção descendente ou “Top-Down”

3. e refinamento progressivo

=> A separação das definições de dados e de programa– Os programas surgem com duas partes principais bem diferenciadas:

– Parte declarativa: declaram-se os tipos de dados e variáveis a utilizar no corpo das instruções do programa

– Parte operativa: o corpo de instruções com que se pretende concretizar as operações e atingir os objectivos pretendidos

Page 31: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 31

3.6. A abordagem Estruturada

=> A concepção descendente ou “Top-Down” – É um método de abordagem dos problemas que se decompondo o problema

original em problemas particulares, em níveis sucessivamente mais concretos até ao pormenor desejado

=> Refinamento Progressivo – É um complemento lógico da abordagem descendente– Consiste em ir concretizando, cada vez com mais detalhe, com maior

exactidãoe perfeição, os passos sucessivos do projecto em questão– Muito útil no desenvolvimento de pseudocódigo

Abordagem Modular – apresenta semelhanças com a abordagem estruturada, consistindo na decomposição de um problema complexo nos seus componentes, aos quais se chamam módulos

– Os módulos são unidades com alguma autonomia, mas também relacionáveis entre si, pois podem-se integrar (ligar) num todo

– Reutilização de bibliotecas de módulos

Page 32: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 32

4. Componentes fundamentais de um programa

Estruturação e componentes fundamentais de um programa“A estruturação de programas subdivide-se na estruturação das suas acções e na estruturação

dos seus dados.A escolha destas estruturas é o problema fundamental da programação estruturada. Da escolha criteriosa destas estruturas depende que o programa seja eficaz, compreensível, robusto, modular e versátil.

A sintaxe de uma linguagem define determinados construtores, de entre os quais os mais importantes são as expressões e os comandos

Uma expressão é uma fórmula ou regra de computação que especifica um valor ou um resultado. Uma espressão consiste em operandos e operadores.

Os operandos são constantes, variáveis, ou valores gerados por funções.

Os operadores são usualmente classificados em monádicos ou unários (operam sobre um único operador) e diádicos (operam sobre dois operadores).

Um comando é uma formula que especifica uma acção que o computador deve executar para produzir certo efeito”

Coelho, Helder

Programa = Dados + Instruções básicas + Expressões + Estruturas de Controlo + Subprogramas

Page 33: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 33

4.1. Dados

Dados – constantes, variáveis e identificadores Qualquer programa opera com dados Os dados podem ser utilizados sob a forma de constantes ou de variáveis As variáveis são sempre associadas a identificadores e num dado instante apenas

podem conter um determinado valor (simples ou composto) Identificadores são nomes que se atribuem a variáveis, constantes ou outros

elementos com que se opera num algoritmo As variáveis pretencem sempre a um tipo de dados, o qual define o tipo de valores

que a variável pode conter ao longo do tempo

Variáveis versus constantes: Uma constante é um dado directo, inserido directamnete numa instrução do algoritmo

Ex. Escrever (“Bem-Vindo”) e Escrever (1999) Quando os dados são ser introduzidos, processados, calculados, ..., devemos usar

variáveis

Ler(quantidade, preço)

Total := quantidade*preço

Escrever(total)

Page 34: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 34

Variáveis: identificadores e endereços de memória

Identificadoresde variáveis

Nome

Morada

Telefone

Conteúdodas variáveis

Ana

Coimbra

6000

Endereçosde memória

Conteúdo dascélulas

Ana

6000

Coimbra

1001

1002

1005

1003

1006

1004

Page 35: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 35

Tipos de dados

Tipos de Dados

Simples Estruturados Dinâmicos

Ordinais

Ficheiros

Definidos peloutilizador

Predefinidos

Enumerados

Subconjuntos

Inteiros/Reais

Caracteres

Booleanos

Matrizes

Registos

Conjuntos

Ficheiros

Ponteiros

Page 36: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 36

Tipos de dados Simples

Ficheiro: Os seus valores são de um determinado tipo e estão armazenados num ficheiro (memória secundária).

- Tipo pré-definido é o ficheiro de texto (String)

- Existem tipos de ficheiros estruturados

Inteiro: de –32xxx a 64000

Real: de xx x 10-123 até xxx

Caracter: Tabela ASCII

Booleano: Verdadeiro ou falso

Subconjunto enumerado

dias-úteis = (segunda, terça, quarta, quinta, sexta)

Subconjunto ordenado

notas_validas = 0..20

maiúsculas = ‘A’..’Z’

Simples

Ordinais

Ficheiros

Definidos peloutilizador

Predefinidos

Enumerados

Subconjuntos

Inteiros/Reais

Caracteres

Booleanos

Page 37: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 37

Tipos de dados Estruturados

São conjuntos ou estruturas que agrupam dados simples ou também outroa dados estruturados

Array

Matriz de variáveis todas do mesmo tipo

Registo

Agrupamentos de dados que podem ser de tipos diferentes

Conjunto

Agrupamentos de dados do mesmo tipo sem repetições

Ficheiro

Agrupamentos de dados do mesmo tipo num ficheiro em meória secundária

Estruturados

Matrizes

Registos

Conjuntos

Ficheiros

Page 38: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 38

4.2. Instruções básicas

Instruções de escrita ou output

Escrever(“O resultado é:”, resultado)

Instruções de leitura ou input

Ler (nome, morada, resultado)

Instruções de atribuição

quantidade 500

preço 1,5

nome “Silva”

resultado preço * quantidade

Page 39: Computadores e Linguagens de Programação

António Tavares, 2001/2002 01 – Computadores e Linguagens de Programação Acetato 39

4.3. Expressões

Uma expressão é um conjunto de operandos articulados entre si por operadores

Os operandos podem ser dados directos, identificadores de constantes ou variáveis.

Os operadores agrupam-se em:– Operadores aritméticos

+, - , *, /, ...

– Operadores relacionais ou de comparação<, >, <=, >=, <>, =

– Operadores lógicos ou booleanose, ou, negação, ....