Você está na página 1de 27

Curso profissional de nível secundário

Linguagens de Programação - LP

Técnico de Informática de Gestão (TIG)

Módulo 1: Algoritmia
Prof.: António Dias
Módulo 1: Algoritmia

Aspetos genéricos sobre linguagens de programação e Algoritmia

Linguagem de programação
Sistema de escrita formal , constituído por um conjunto de regras para a escrita de
programas de computador.
TIG: Linguagens de Programação - LP

Programa (código)
Conjunto de instruções numa linguagem de programação.

Instrução
Especificação ao processador da ação a executar.

Classificação das gerações das linguagens de programação


Próximas da linguagem-máquina Linguagem-máquina ou
Baixo nível ou hardware. Usa apenas o binária
1ª e 2ª geração código binário (0 ou 1) ou notação
simbólica Linguagem Assembly
Próximas da linguagem humana. Pascal; Visual Basic; C; C#; Java;
Alto Nível Necessitam de compiladores ou SQL; Clipper; Dbase
3ª, 4ª e 5ª
interpretadores para as traduzir LISP; Prolog; Python; PHP
geração
para linguagem-máquina
Módulo 1: Algoritmia

Aspetos genéricos sobre linguagens de programação e Algoritmia

A forma como se concebe e organiza a sequência de operações ou


instruções de um programa para resolver um determinado
TIG: Linguagens de Programação - LP

problema ou alcançar determinados objetivos corresponde àquilo


a que se chama ALGORITMO.

Problema O que se pretende resolver.

Sequência finita de instruções descritas de forma lógica,


Algoritmo ordenada, clara e precisa a fim de resolver o problema.

Programa Algoritmo codificado numa linguagem de programação.


Módulo 1: Algoritmia

Algoritmo: fluxogramas e pseudocódigos

Um algoritmo pode ser escrito com o auxilio de uma linguagem


Algoritmo

natural , utilizando expressões precisas. Mas existem outros modos


de especificação que são o fluxograma (representação gráfica) e o
TIG: Linguagens de Programação - LP

pseudocódigo (representação textual).

Os fluxogramas utilizam símbolos gráficos para representar o fluxo


Fluxograma

das ações necessárias para resolver um problema:


Pseudocódigo

Os pseudocódigos utilizam uma representação textual (narrativa)


constituída por palavras da linguagem natural e pela sintaxe
característica das linguagens de programação estruturada.
Módulo 1: Algoritmia

Exemplo: soma de dois números

Linguagem Natural Fluxograma Pseudocódigo Código em Python

1. Inicio
TIG: Linguagens de Programação - LP

2. Ler dois n.ºs


inteiros a, b
3. Escrever o
resultado de a+b
4. Fim
Módulo 1: Algoritmia

Regras para construção do Algoritmo

• Usar apenas um verbo por frase.


TIG: Linguagens de Programação - LP

• Imaginar que se está a desenvolver um


algoritmo para pessoas que não trabalham
com informática.
• Usar frases curtas e simples.
• Ser objetivo.
• Procurar usar palavras que não tenham
sentido duvidoso.
Módulo 1: Algoritmia

Fases para construir um algoritmo

ENTRADA São os dados de entrada do algoritmo


TIG: Linguagens de Programação - LP

São os procedimentos utilizados para chegar


PROCESSAMENTO
ao resultado final

SAÍDA São os dados já processados

ENTRADA PROCESSAMENTO SAÍDA


Módulo 1: Algoritmia

Exemplo de um Algoritmo

Imagine o seguinte problema: Calcular a média final dos alunos sabendo


que irão realizar três provas: P1, P2 e P3.
Onde: Média Final = (P1+P2+P3)/3
TIG: Linguagens de Programação - LP

Para escrever o algoritmo proposto, faremos três perguntas:


a) Quais são os dados de entrada?
R: Os dados de entrada são P1, P2 e P3
b) Qual será o processamento a ser utilizado?
R: O procedimento será somar todos os dados de entrada e dividi-los
por 3: (P1 + P2 + P3)/3
c) Quais serão os dados de saída?
R: O dado de saída será a Média final
Módulo 1: Algoritmia

Teste do Algoritmo
Após escrever um algoritmo, este deve ser testado para verificar se
os resultados são os espectáveis.
TIG: Linguagens de Programação - LP

Deve seguir-se as instruções do algoritmo de maneira precisa para


verificar se o procedimento utilizado está correto ou não.
Exemplo:
Nota da Prova 1
Nota da Prova 2
Nota da Prova 3
Utilizar a tabela abaixo:

P1 P2 P3 Média
12 14 16 14 
11 15 15 13,66 
Módulo 1: Algoritmia

Exemplo de pseudocódigo/algoritmo
Algoritmo circunferência
[Este algoritmo calcula a área e o
perímetro de uma circunferência]
TIG: Linguagens de Programação - LP

Dados
raio: inteiro
área, perímetro: reais
PI  3,14159
Início
Ler (raio)
área  PI x raio2
perímetro  2 x PI x raio
Escrever (área, perímetro)
Fim
Módulo 1: Algoritmia

Pseudocódigo
Num algoritmo, podemos definir três secções:
Cabeçalho
TIG: Linguagens de Programação - LP

• É dado o nome ao algoritmo. Começa com a palavra "Algoritmo".


Declarações
• Descrição das variáveis usadas.
Corpo
• Contém a sequência dos passos (ações) do algoritmo.
Inicia-se com a palavra "Início“ e termina com "Fim".
Comentários
• Cada passo do algoritmo pode iniciar com um comentário entre dois
parênteses retos. Estes comentários dão uma breve descrição do
passo ou dum grupo de passos seguintes.
• Os comentários são uma parte importante do algoritmo.
Eles servem para tornar a leitura, do algoritmo, mais fácil e clara.
Módulo 1: Algoritmia

Exemplo de Fluxograma
Algoritmo Comparar
Dados
valor1, valor2: Inteiros
Resultado: Caracteres
TIG: Linguagens de Programação - LP

Início
Ler (valor1, valor2)
Se valor1 > valor2 então
Resultado  “valor1 é maior”
Senão
Se valor1 < valor2 então
Resultado  “valor2 é maior””
Senão
Resultado  “valores iguais”
Fim se
Fim se
Escrever (Resultado)
Fim
Módulo 1: Algoritmia

Aspetos genéricos sobre linguagens de programação


ALGORITMOS em linguagem INFORMAL e em linguagem FORMAL:
Linguagem Informal: utiliza uma linguagem natural

Ex:
TIG: Linguagens de Programação - LP

1. Obter os valores do comprimento e da largura


2. Calcular: área = comprimento x largura
3. Apresentar o valor da área
Linguagem Formal: utiliza uma forma de escrita convencional, com rigor.
Ex:
Variáveis Area, Comp, Larg: inteiros;
Inicio
Ler (Comp, Larg)
Area ←Comp * Larg
Escrever (Area)
Fim
Módulo 1: Algoritmia

PROGRAMA e LINGUAGEM DE PROGRAMAÇÃO

Escrever um PROGRAMA de computador é, essencialmente, traduzir um


algoritmo (ou conjunto de algoritmos interligados) para instruções capazes de
TIG: Linguagens de Programação - LP

serem expressas e executadas em computador.

Para se escreverem programas de computador foram inventadas linguagens


de programação.

Uma LINGUAGEM DE PROGRAMAÇÃO é um sistema de escrita para enunciar


as operações a executar por um computador.
Módulo 1: Algoritmia

Linguagens de programação

Programa XYZ
Var Taxa, Custo: Real; Programa numa linguagem de alto nível
TIG: Linguagens de Programação - LP

Begin Ex: Basic, Pascal, C, etc.


Writeln (‘Venda’);

MOV AL, DH
Em Assembly ou linguagem de baixo nível
DIV BL
ADD AL, DL

1011010011001010111010 Programa em linguagem-máquina – em


0101110100101000110101 contacto com o hardware
HARDWARE
Módulo 1: Algoritmia

Conceitos fundamentais
O computador é uma máquina constituída por hardware e software que tem
a capacidade de receber, armazenar e fornecer dados, depois de
processados de forma automática.
Hardware: componentes físicos do computador (disco, memória RAM,
TIG: Linguagens de Programação - LP

teclado, …)
Software: conjunto de instruções (programas) que fazem funcionar o
hardware.

Esquema de um sistema informático


Sistema informático

Esquema de Von Neumman


Módulo 1: Algoritmia

Conceitos fundamentais
Esquema representativo da interligação do hardware, com o software e as
diferentes etapas de desenvolvimento de um programa (por exemplo na
linguagem de programação Pascal).
TIG: Linguagens de Programação - LP
Módulo 1: Algoritmia

Constantes, Variáveis e Tipos de Dados

• Variáveis e constantes são os elementos básicos que um programa


manipula.
• Uma variável é um espaço reservado na memória do computador para
TIG: Linguagens de Programação - LP

armazenar um tipo de dado determinado.


• Variáveis devem receber identificadores (nomes) para poderem ser
referenciadas e modificadas quando necessário.
• Um programa deve conter declarações que especificam de que tipo são as
variáveis que ele utilizará e por vezes um valor inicial.
• Tipos de dados podem ser por exemplo: inteiros, reais, caracteres, lógico,
etc.
• As expressões combinam variáveis e constantes para calcular novos
valores.
Módulo 1: Algoritmia

Constantes e Variáveis

• Constante é um determinado valor fixo que não se modifica ao longo do


tempo, durante a execução de um programa.
TIG: Linguagens de Programação - LP

• Variável é a representação simbólica dos elementos de um certo conjunto.


✔ Cada variável corresponde a uma posição de memória, cujo conteúdo
pode ser alterado ao longo do tempo durante a execução de um
programa.
✔ Embora uma variável possa assumir diferentes valores, ela só pode
armazenar um valor a cada instante.
Módulo 1: Algoritmia

Tipos de Dados

Caracter
TIG: Linguagens de Programação - LP

Alfanuméricos
String (Cadeia de caracteres)
Tipos de Dados

Inteiros
Numéricos Inteiros Longos
Reais

Verdadeiro - TRUE
Lógicos
Falso - FALSE
Módulo 1: Algoritmia

Operadores

Os operadores são meios pelo qual incrementamos,


TIG: Linguagens de Programação - LP

decrementamos, comparamos e avaliamos dados


dentro do computador. Temos três tipos de
operadores:

• Operadores Aritméticos
• Operadores Relacionais
• Operadores Lógicos
Módulo 1: Algoritmia

Operadores Aritméticos

• Os operadores aritméticos são os utilizados para obter resultados


numéricos.
TIG: Linguagens de Programação - LP

• Além da adição, subtração, multiplicação e divisão, podem utilizar


também o operador para exponenciação.
• Alguns símbolos para os operadores aritméticos são os seguintes,
dispostos com prioridade em ordem decrescente:

^ ou ** Exponenciação
- Negação
*,/ Multiplicação e divisão
DIV ou // Divisão inteira (Quociente)
MOD ou % Resto da divisão (Resto)
+e– Adição e subtração
Módulo 1: Algoritmia

Operadores Relacionais

• Os operadores relacionais são utilizados para comparar Strings de


caracteres e números.
• Os valores a serem comparados podem ser caracteres ou variáveis.
TIG: Linguagens de Programação - LP

• Estes operadores sempre retornam valores lógicos (Verdadeiro ou Falso /


True ou False)
• Para estabelecer prioridades no que diz respeito a qual operação executar
primeiro, utilize os parênteses.

== Igual a X == Y
<> Ou != Diferente de X <> Y ou x!=y
> Maior que X>Y
< Menor que X<Y
>= Maior ou igual a X >= Y
<= Menor ou igual a X <= Y
Módulo 1: Algoritmia

Operadores Lógicos
• Os operadores lógicos servem para combinar resultados de expressões,
retornando se o resultado final é verdadeiro ou falso.
• Os operadores lógicos são:
TIG: Linguagens de Programação - LP

OU OR
E AND
NÃO NOT

NOT AND OR
X NOT X X Y X AND Y X Y X OR Y
V F V V V V V V
V F V F F V F V
F V F V F F V V
F V F F F F F F
Módulo 1: Algoritmia

Instruções Básicas
• Comado de leitura:
– Ler(NOME)
– Ler(IDADE, NOME)
TIG: Linguagens de Programação - LP

• Comando de escrita:
– Escrever(“Paula”)
– Escrever(“A minha idade é: “, IDADE)

• Instruções de declaração
– Nome: Texto
– Idade: Inteiro
• Instruções de atribuição
– A  VALOR
– NUM  3
– A3+B/2
– CIDADE  “Lisboa”
Módulo 1: Algoritmia

Principais símbolos usados nos fluxogramas


# Flowgorithm #
TIG: Linguagens de Programação - LP
Módulo 1: Algoritmia

Exemplo de um algoritmo (# Flowgorithm #)


Pseudocódigo Fluxograma

Subprograma Principal
Declarar Texto Nome
TIG: Linguagens de Programação - LP

Declarar Inteiro Idade


Escrever "Por favor escreva o seu nome: "
Ler Nome
Escrever "Por favor insira a sua idade: "
Ler Idade
Escrever "Olá " & Nome & ", tens " & Idade & " anos
de idade."
Fim

Resultado da execução:

Por favor escreva o seu nome: António Dias


Por favor insira a sua idade: 57
Olá António Dias, tens 57 anos de idade.

Você também pode gostar