Você está na página 1de 70

Curso Profissional de Técnico de Gestão e

Programação de Sistemas Informáticos


10º ano (2013/2014)

Programação e Sistemas de
Informação

Prof. Hilário Russo


1
Módulo 1

Introdução à Programação e
Algoritmia

2
Objetivo
 Esclarecer conceitos básicos necessários à atividade de
programar, que consiste na elaboração de programas de
computador.
 Promoção do raciocínio lógico e preparação para a
resolução de problemas de programação mais ou
menos complexos.

Introdução à Programação e Algoritmia


3
Noções básicas de programação

O que é um Programa?

 É um conjunto de instruções organizadas de uma forma


lógica e previamente estabelecida destinadas a serem
processadas num sistema informático para realizar
determinada tarefa.

Introdução à Programação e Algoritmia


4
Atenção:

 Antes de se começar a escrever um programa numa


determinada linguagem de programação, há algumas
ações a ter em conta;
 Após a escrita desse programa, a atividade do
programador não termina, pois são necessárias outras
tarefas.

Introdução à Programação e Algoritmia


5
Fases/etapas de criação de um
programa
 1ª - Definição do problema;
 2ª - Planificação da resolução;
 3ª - Codificação;
 4ª - Teste e depuração;
 5ª - Documentação;
 6ª - Manutenção.

Introdução à Programação e Algoritmia


6
1ª - Definição do problema
 Tem de se definir/identificar muito bem o problema
que se pretende resolver.

 Não se pode passar à fase seguinte, sem ter um


enunciado preciso de todos os aspetos da situação
ou problema a resolver.

Introdução à Programação e Algoritmia


7
2ª - Planificação da resolução

 Depois de se ter a noção exata da situação ou


problema, devemos recorrer a uma estratégia para o
abordar.
 Diferentes estratégias de abordagem ao problema
podem conduzir à solução.
 É nesta fase que surgem os ALGORITMOS.

Introdução à Programação e Algoritmia


8
3ª Codificação

 Depois de definir o algoritmo adequado ao problema


passa-se à codificação;
 Nesta fase as ações dos algoritmos passam a

instruções da linguagem de programação que se vai


utilizar.

 Pode dizer-se que um programa consiste num algoritmo


ou num conjunto de algoritmos interligados num todo.

Introdução à Programação e Algoritmia


9
4ª Teste e Depuração

 Após a obtenção do código do programa, há que testá-lo


com diversos tipos de dados e em diferentes situações,
de modo a poderem detetar-se eventuais erros, falhas
ou omissões.

Introdução à Programação e Algoritmia


10
5ª - Documentação

 Deve-se elaborar dois tipos de documentação;


 Uma para os programadores e outra para os utilizadores.

 Para os programadores a documentação é a explicação do


código do programa e serve para possibilitar eventuais
alterações ou melhoramentos do mesmo.

 Para os utilizadores a documentação visa facilitar o modo de


operar com o programa.

Introdução à Programação e Algoritmia


11
6ª - Manutenção

 Esta fase diz respeito a alterações que sejam


necessárias ou a aperfeiçoamentos que se revelem
úteis.

 Esta fase ocupa uma grande parte do trabalho dos


programadores.

Introdução à Programação e Algoritmia


12
Algoritmos

 Conjunto finito de regras/instruções bem determinadas


para a resolução de um problema, através de um
número finito de operações.

Isto é:
Um algoritmo é uma sequência finita e logicamente
ordenada de ações para se chegar à solução de um
problema.

Introdução à Programação e Algoritmia


13
Algoritmos

Um mesmo algoritmo pode servir de base à codificação de


um programa em diversas linguagens de programação ou
com diferentes técnicas de implementação.

Introdução à Programação e Algoritmia


14
Características de um Algoritmo

 Um algoritmo deve ser rigoroso. A definição das


ações tem de ser clara e precisa, sem ambiguidades,
isto quer dizer que um algoritmo não pode estar sujeito a
diferentes interpretações.

 Um algoritmo deve ser eficaz. Deve resolver o


problema, independentemente da situação, de uma
forma isenta de erros e de qualquer falha.

Introdução à Programação e Algoritmia


15
Características de um Algoritmo

 Um algoritmo deve ser eficiente. Deve ter capacidade


de resolver o problema com o mínimo de recursos.

 Um algoritmo deve terminar. O algoritmo deve levar a


uma situação em que o objetivo tenha sido atingido e
não existam mais instruções para ser executadas.

Introdução à Programação e Algoritmia


16
Exemplos de algoritmos

 A substituição de uma lâmpada fundida por uma em


bom estado;
 A substituição de um pneu de um automóvel;
 A utilização de um eletrodoméstico para uma finalidade
especifica;
 Uma receita culinária;
 A resolução de um problema de matemática.

Introdução à Programação e Algoritmia


17
Exemplo do algoritmo para substituição de uma
lâmpada fundida

O algoritmo enuncia a sequência das operações:


1 – Preparar uma lâmpada nova
2 – Retirar a lâmpada fundida
3 – Colocar a lâmpada nova

Temos uma sequência ordenada de forma linear em três


passos.

Introdução à Programação e Algoritmia


18
Mas, entretanto podemos acrescentar outras
ações:

4 – Ligar o interruptor para verificar se a nova lâmpada


acende ou não.
5 – Se a lâmpada acender, podemos dar o processo por
concluído, mas se não acender teremos de repetir os
passos de 1 a 4.

Com estas ações a sequência já não se mantém numa


simples ordem linear.

Pois a uma determinada altura surge uma condição


associada à palavra “SE”

Introdução à Programação e Algoritmia


19
Essa condição tem 2 ramificações distintas:

- se a condição se verificar (se a lâmpada acende),


processo concluído.
- se a condição não se verificar (se a lâmpada não
acender), teremos de repetir os passos anteriores.

Estas SITUAÇÕES CONDICIONAIS são um elemento comum


nos algoritmos e nos programas.

Introdução à Programação e Algoritmia


20
Mas ainda podemos acrescentar outras ações
e assim o algoritmo fica mais completo

Podemos ainda adicionar as ações ir buscar um escadote


para mudar a lâmpada, assim fica:

1 – Preparar a lâmpada nova;


2 – Colocar o escadote debaixo do candeeiro;
3 – Retirar a lâmpada fundida;
4 – Colocar a lâmpada nova;

Introdução à Programação e Algoritmia


21
5 – Descer o escadote;
6 – Ligar o interruptor para verificar se a nova lâmpada
acende ou não;
7 – Se a lâmpada acender, podemos dar o processo por
concluído;
8 – Arruma-se o escadote;
9 - Se a lâmpada não acender teremos de repetir os
passos de 1 a 6.

Assim teremos o algoritmo mais completo.

Introdução à Programação e Algoritmia


22
Regras para a construção de um algoritmo

 Usar somente um verbo por frase;


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

Introdução à Programação e Algoritmia


23
Exercício

Elabore um algoritmo para substituição de um pneu de um


automóvel

Introdução à Programação e Algoritmia


24
Resolução:

1 – Abrir o carro
2 – Retirar o pneu suplente
3 – Colocar o macaco na posição adequada
4 – Levantar o carro
5 – Retirar os parafusos do pneu
6 – Retirar o pneu furado
7 – Colocar o novo pneu
8 - Retirar o macaco do carro
9 – Arrumar o macaco

Introdução à Programação e Algoritmia


25
Metodologia Top-down

 Esta metodologia parte do topo para a base, isto é, o


problema é abordado como um todo que se vai
decompondo em blocos.

 Esta metodologia procura identificar os pontos


essenciais da questão e parte dos ponto mais gerais
para os mais particulares, até ao nível do pormenor
desejado.

Introdução à Programação e Algoritmia


26
Exemplo:

Elaborar um programa para gerir os livros de uma


biblioteca.

Antes de começarmos a elaborar o algoritmo, segundo


esta metodologia teremos de identificar as tarefas gerais
que pretendemos realizar com o nosso programa e só
passaremos aos detalhes numa fase posterior.

Introdução à Programação e Algoritmia


27
Operações principais:

1 – Registar os livros num ficheiro


2 – Consultar os dados dos livros
3 – Registar os empréstimos e as devoluções

Depois de identificadas as operações gerais do


programa, poderíamos formular uma interface com um
menu apresentando as opções do programa,
permitindo escolher a opção desejada.

Introdução à Programação e Algoritmia


28
 De seguida, podemos tratar cada opção como um
subprograma ou um subalgoritmo.

 Por exemplo, a opção:


1 - Registar os livros num ficheiro

Pode-se subdividir em tarefas mais especificas, como:


 Criar um formulário para a introdução dos dados
relativos a cada livro (nome do autor, título da obra, etc);
 Criar um ficheiro adequado a operar com estes registos.

Isto teria de se fazer para todas as opções até termos


todos os detalhes necessários ao programa.
Introdução à Programação e Algoritmia
29
Operações elementares de um sistema inf.

 Um sistema informático é constituído por blocos


ou unidades funcionais, tais como:
 Dispositivos de input ou entrada de dados.

 Unidade central de processamento ( a que

podemos associar a memória primária).


 Dispositivos de output ou saída de dados.

Introdução à Programação e Algoritmia


30
Operações elementares de um sistema inf.

 Assim sendo, podemos considerar que as


operações básicas e fundamentais de um
sistema informático são:
 Operações de input – ou entrada de dados;
 Operações de processamento interno;
 Operações de output ou saída de dados.

 Para a elaboração de um algoritmo devemos


convencionar determinadas palavras para as
referidas operações elementares.
Introdução à Programação e Algoritmia
31
 Exemplo:
 Para as operações de entrada ou input de dados
utilizamos as palavras LER ou OBTER
 Para as operações de saída ou output de dados,
utilizamos ESCREVER ou APRESENTAR
 Nas operações de processamento, não interessa
o que o processador faz (a nível de linguagem
máquina), mas as operações que pretendemos
realizar.

Essas operações serão essencialmente operações


de cálculos aritméticos e lógicos

Introdução à Programação e Algoritmia


32
Exemplo: Calcular a média final do aluno

 Os alunos realizaram 3 provas: P1, P2 e P3.


Onde: Média Final = (P1+P2+P3)/3

Para elaborar 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
Introdução à Programação e Algoritmia
33
O algoritmo para calcular média do aluno seria:
1. Obter a nota da prova1.
2. Obter a nota de prova2.
3. Obter a nota de prova3.
4. Somar todas as notas e dividir o resultado
por 3.
5. Apresentar o resultado da divisão, ou seja, o
valor da média.
Introdução à Programação e Algoritmia
34
Exercício

Elabore um algoritmo que visa calcular a


área de um rectângulo a partir das medidas
dadas em relação ao comprimento e à
largura desse mesmo rectângulo.

Introdução à Programação e Algoritmia


35
O algoritmo para calcular a área do rectângulo
seria:
1. Obter valor do comprimento
2. Obter valor da largura
3. Calcular área: comprimento x largura
4. Apresentar o valor da área

Introdução à Programação e Algoritmia


36
Operadores aritméticos

OPERADOR OPERAÇÃO
Adição
+
Subtracção
-
Multiplicação
*
Divisão
/
Exponenciação
^
Introdução à Programação e Algoritmia
37
Operadores relacionais ou de comparação
Operador Significado
Igualdade
=
Menor
<
Maior
>
Menor ou igual
<=
Maior ou igual
>=
Diferente de
<>
Introdução à Programação e Algoritmia
38
Operadores lógicos

Operador Significado
Not (não) Negação
And (e) Conjunção
Or (ou) Disjunção

Introdução à Programação e Algoritmia


39
Tabelas de Verdade
Not
p ~p
V F
F V
AND OR
P Q P Q P Q P Q
V V V V V V
V F F V F V
F V F F V V
F F F F F F
Introdução à Programação e Algoritmia
40
Ordem de prioridade dos operadores
(usados na linguagem Pascal)

Introdução à Programação e Algoritmia


41
Calculo de expressões

a) 10 + 5 > 10 AND 10 < 10 – 5


15 > 10 AND 10 < 5
V AND F
F
b) R = 3; Y=2
R*Y/2
3*2/2
6 /2
3

Introdução à Programação e Algoritmia


42
Exercícios com expressões lógicas

1 - Considerando que P=3 e Q=2, determine o


valor das expressões:
a) P+Q*5
b) (P + Q ) * 5
c) P+5*Q/2
d) (P + 5 * Q) / 2

Introdução à Programação e Algoritmia


43
2 – Determine os valores lógicos de cada expressão,
sabendo que X=10 e Y=5 (apresente todos os
cálculos).
a) X > 5 and X >= 10
b) X > 0 or X > 20
c) X = 10 and Y<>5
d) Not (Y=5) or X <> 10
e) X >= 10 and y < 5
f) Not (X > 10) and (Y<5)
g) Not (X>10) or (Y<5)
h) X >=5 and x <10 or y>=0 and y <=5

Introdução à Programação e Algoritmia


44
Tipos de dados

 Os principais tipos de dados utilizados em


algoritmia e programação são:
 Caracteres, cadeias de caracteres ou texto;
 Números (podendo este ser de diferentes tipos,
inteiros (negativos, zero e positivos), reais (com
casas decimais));
 Dados do tipo lógico ou booleano, este têm
apenas 2 resultados possíveis verdadeiro (true)
ou falso (false)

Introdução à Programação e Algoritmia


45
Tipos de dados

Introdução à Programação e Algoritmia


46
Funções Pré definidas

Introdução à Programação e Algoritmia


47
Constantes e Variáveis

 Em algoritmos e em programas, os dados


podem surgir sob a forma de constantes ou
de variáveis.
 Constante - é um dado que permanece
inalterável do início ao fim do algoritmo.
 Variável - é um dado que pode sofrer alterações
durante o algoritmo.

Introdução à Programação e Algoritmia


48
Constantes e Variáveis

 As constantes podem surgir:


 Sob a forma directa, ou seja, valores numéricos ou
alfanuméricos, por exemplo: 0,75; “Junho”.
 Sob a forma de identificadores, ou seja, nomes
que representam ou identificam determinados
dados, por exemplo:

Introdução à Programação e Algoritmia


49
Constantes e Variáveis

 Identificador – é um nome que é associado


(pelo programador) a uma constante, a uma
variável ou a outro tipo de elemento.
 As variáveis surgem sempre designadas
através de identificadores, ou seja, os nomes
que as identificam.
 Cada variável surge associada a um
determinado tipo de dados (inteiro, real, string,
etc.)
Variável Idade : inteiro

Introdução à Programação e Algoritmia


50
Constantes e Variáveis

 Instruções de atribuição – são


as operações
internas de um algoritmo ou programa que
atribuem valores às variáveis
 Nos algoritmos o símbolo que se utiliza na
operação de atribuição é

Nome ”Maria João” Custo 15

Introdução à Programação e Algoritmia


51
Pseudocódigo e Fluxogramas

 Pseudocódigo – Representa o código de um


programa numa linguagem formal, com termos
convencionais que representam as acções a
executar pelo programa.

 Fluxogramas – É outra forma de representar os


algoritmos, recorrendo a símbolos convencionais,
que representam as sequências de acções dos
algoritmos.

Introdução à Programação e Algoritmia


52
Pseudocódigo
 Vantagens:
 Como é baseado na linguagem corrente, é fácil
de elaborar;
 Pode atingir vários níveis de complexidade,
conforme o detalhe com que se escrever;
 Permite acompanhar o tratamento dos dados
facilitando o teste do programa;
 Permite implementar as estruturas elementares
da programação estruturada;
 Serve de base à própria documentação
Introdução à Programação e Algoritmia
53
Pseudocódigo
 Desvantagens:
 Não possui regras padrão, pois depende do estilo
de escrita de cada programador;
 Não permite uma rápida visualização de
pormenores, pois usa a linguagem escrita, o que
obriga à sua leitura integral;
 Para problemas mais complicados a linguagem
torna-se muito complexa e de difícil
compreensão.

Introdução à Programação e Algoritmia


54
Fluxogramas

 Vantagens:
 Como são baseados numa representação gráfica,
é mais fácil de visualizar;
 Os símbolos utilizados são normalizados e
universais;
 Como cada símbolo tem um significado, isso
simplifica a resolução do problema;
 São fáceis de testar e permitem uma rápida
detecção e correcção de erros de lógica.

Introdução à Programação e Algoritmia


55
Fluxogramas
 Desvantagens:
 São pouco práticos para efectuar alterações;
 Os dados tem de ser definidos à parte, porque os
fluxogramas não permitem representar a estrutura
dos dados;
 Se os programas forem muito grandes os
fluxogramas tornam-se muito grandes e
complexos.

Introdução à Programação e Algoritmia


56
Símbolos utilizados nos fluxogramas

Símbolo de inicio ou de fim

Estes são usados para representar o inicio ou


o fim das operações de um algoritmo

Introdução à Programação e Algoritmia


57
 Símbolo de linha de fluxo

Estabelece a ligação entre as acções e indica o


sentido da sequência delas

Introdução à Programação e Algoritmia


58
 Símbolo de entrada ou de saída de dados

Representa uma acção de entrada (input) ou


de saída (output) de dados no sistema

Introdução à Programação e Algoritmia


59
 Símbolo de processamento interno

Representa uma operação de processamento interno,


como, por exemplo, a atribuição de um valor a uma
variável

Introdução à Programação e Algoritmia


60
 Símbolo de Comentário

………….

Este símbolo é usado para fazer comentários


explicativos do algoritmo

Introdução à Programação e Algoritmia


61
 Símbolo de conector

Usado para representar a ligação ou conexão


entre diferentes fluxos de acções
representadas num algoritmo

Introdução à Programação e Algoritmia


62
 Símbolo de decisão

Representa uma condição ou expressão lógica


de que dependerá uma decisão a seguir num
sentido ou noutro

Introdução à Programação e Algoritmia


63
 Símbolo de selecção múltipla

Representa uma situação em que o algoritmo


pode seguir por diversas vias, opções ou
sequência de acções

Introdução à Programação e Algoritmia


64
 Símbolo de subalgoritmo

Representa um subalgoritmo, ou seja uma


unidade mais pequena em que o algoritmo
foi decomposto, por outras palavras é uma
rotina, um procedimento ou um conjunto de
instruções
Introdução à Programação e Algoritmia
65
Convenções do pseudocódigo
 Aqui, não há regras generalizadas, mas existem
palavras que representam as principais operações
que os algoritmos poderão conter.
 Exemplo:
 LER – Entrada de dados
 Escrever – Saída de dados
 As strings estão sempre entre “ “ ou ‘ ‘
 As variáveis começam sempre por letras e não utilizam
acentos, nem espaços
 O simbolo  indica a operação de atribuição

Introdução à Programação e Algoritmia


66
Exercício
 Criar um algoritmo que calcule a área de um
rectângulo, em linguagem informal:

1 – Obter o valor do comprimento


2 – Obter o valor da largura
3 – Calcular a área: comprimento x largura
4 – Apresentar o valor da área.

Para fazermos o algoritmo correcto teremos de


utilizar os operadores utilizados em algoritmia e em
programação.
Introdução à Programação e Algoritmia
67
 Problema:

Calcular a área de um rectângulo

 Dados de entrada (input) : comprimento e largura


 Dados de saída (output) : valor da área

Introdução à Programação e Algoritmia


68
Em pseudocódigo

Inicio
Ler (comprimento, largura)
area  comprimento * largura
escrever (area)
Fim

Introdução à Programação e Algoritmia


69
O fluxograma será:

Início

Ler (comp, larg)

Área  comp * larg

Escrever (área)

Fim

Introdução à Programação e Algoritmia


70

Você também pode gostar