SlideShare uma empresa Scribd logo
1
Programação e Sistemas de
Informação
Prof. Hilário Russo
Curso Profissional de Técnico de Gestão e
Programação de Sistemas Informáticos
10º ano (2013/2014)
2
Módulo 1
Introdução à Programação e
Algoritmia
3
 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.
Objetivo
Introdução à Programação e Algoritmia
4
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
5
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
6
 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
Fases/etapas de criação de um
programa
7
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
8
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
9
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
10
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
11
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
12
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
13
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
14
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.
Algoritmos
Introdução à Programação e Algoritmia
15
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
16
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
17
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
18
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
19
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
20
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
21
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
22
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
23
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
24
Exercício
Elabore um algoritmo para substituição de um pneu de um
automóvel
Introdução à Programação e Algoritmia
25
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
26
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
27
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
28
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
29
 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
30
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
31
 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.
Operações elementares de um sistema inf.
Introdução à Programação e Algoritmia
32
 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
33
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
34
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
35
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
36
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
37
Operadores aritméticos
OPERADOR OPERAÇÃO
+ Adição
- Subtracção
* Multiplicação
/ Divisão
^ Exponenciação
Introdução à Programação e Algoritmia
38
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
39
Operadores lógicos
Operador Significado
Not (não) Negação
And (e) Conjunção
Or (ou) Disjunção
Introdução à Programação e Algoritmia
40
Tabelas de Verdade
Not
p ~p
V F
F V
AND
P Q P Q
V V V
V F F
F V F
F F F
OR
P Q P Q
V V V
V F V
F V V
F F F
Introdução à Programação e Algoritmia
41
Ordem de prioridade dos operadores
(usados na linguagem Pascal)
Introdução à Programação e Algoritmia
42
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
43
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
44
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
45
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
46
Tipos de dados
Introdução à Programação e Algoritmia
47
Funções Pré definidas
Introdução à Programação e Algoritmia
48
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
49
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
50
 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.)
Constantes e Variáveis
Variável Idade : inteiro
Introdução à Programação e Algoritmia
51
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
52
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
53
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
54
 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.
Pseudocódigo
Introdução à Programação e Algoritmia
55
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
56
 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.
Fluxogramas
Introdução à Programação e Algoritmia
57
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
58
 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
59
 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
60
 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
61
 Símbolo de Comentário
………….
Este símbolo é usado para fazer comentários
explicativos do algoritmo
Introdução à Programação e Algoritmia
62
 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
63
 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
64
 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
65
 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
66
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
67
 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.
Exercício
Introdução à Programação e Algoritmia
68
 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
69
Em pseudocódigo
Inicio
Ler (comprimento, largura)
area  comprimento * largura
escrever (area)
Fim
Introdução à Programação e Algoritmia
70
O fluxograma será:
Início
Ler (comp, larg)
Área  comp * larg
Escrever (área)
Fim
Introdução à Programação e Algoritmia

Mais conteúdo relacionado

PPTX
UFCD 0781 - Análise de Sistemas de Informação.pptx
RTF
Curso Word Basico
PPTX
Informática Básica - Aula 05 - Sistema Operacional Windows
PDF
Lista de Exerícios - Manutenção e Redes de Computadores IFNMG - Campus Januária
PDF
Lógica de programação em ppt
PPT
Sistemas operativos 10º
PDF
Sistema operacional windows_10
PPTX
EXCEL 2019
UFCD 0781 - Análise de Sistemas de Informação.pptx
Curso Word Basico
Informática Básica - Aula 05 - Sistema Operacional Windows
Lista de Exerícios - Manutenção e Redes de Computadores IFNMG - Campus Januária
Lógica de programação em ppt
Sistemas operativos 10º
Sistema operacional windows_10
EXCEL 2019

Mais procurados (20)

PPT
Tipos de Sistemas Operacionais
PDF
mod1-algoritmia
PDF
Periféricos - Curso de Informática
PPTX
Introdução ao Word
PPTX
Os sistemas operativos da microsoft corporation
PPTX
Aula 1: Virtualização
PDF
Sistemas operacionais
PDF
TIC - Conceitos Básicos
PDF
Apostila Microsoft Office Word 2016
PDF
Lista de exercícios em portugol
PPTX
Informática Básica - Aula 04 - Software
PPTX
Aula 01 - Sistemas Operacionais - Windows 10
PDF
1.Introdução Banco de Dados
ODP
Modelos de processos de software
PDF
Introdução a Informática
PPTX
Redes de Computadores - Aula 02
PPTX
Visualg
PPTX
Informática Básica - Aula 03 - Hardware
PDF
Análise e Projeto de Sistemas
PPTX
Aula 05 - Como funciona o Computador
Tipos de Sistemas Operacionais
mod1-algoritmia
Periféricos - Curso de Informática
Introdução ao Word
Os sistemas operativos da microsoft corporation
Aula 1: Virtualização
Sistemas operacionais
TIC - Conceitos Básicos
Apostila Microsoft Office Word 2016
Lista de exercícios em portugol
Informática Básica - Aula 04 - Software
Aula 01 - Sistemas Operacionais - Windows 10
1.Introdução Banco de Dados
Modelos de processos de software
Introdução a Informática
Redes de Computadores - Aula 02
Visualg
Informática Básica - Aula 03 - Hardware
Análise e Projeto de Sistemas
Aula 05 - Como funciona o Computador
Anúncio

Destaque (20)

PDF
Manual básico de conversão de pseudocódigo para C#
PPTX
Estruturas em c joão carlos batista
PPTX
Keep in shape
PPT
Aula 1 módulo v - psi
PDF
Fundamentos da programação de computadores 1ª edição
PDF
Lógica de Programção - Módulo 1 - algoritmos-introdução
PDF
Pged 02
PDF
Aula 2 - Lógica de Programação
PDF
Apostila C ANSI
ODP
Linguagem C 08 Definicao De Tipos
PDF
Lista de exercicios algoritmos com pseudocodigo
PDF
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
PPT
Aula 3 algoritmos
PDF
PPT
Estruturas de Dados em C#
PDF
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
PDF
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
PDF
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
DOC
1008 ProgramaçãO C Completo
 
Manual básico de conversão de pseudocódigo para C#
Estruturas em c joão carlos batista
Keep in shape
Aula 1 módulo v - psi
Fundamentos da programação de computadores 1ª edição
Lógica de Programção - Módulo 1 - algoritmos-introdução
Pged 02
Aula 2 - Lógica de Programação
Apostila C ANSI
Linguagem C 08 Definicao De Tipos
Lista de exercicios algoritmos com pseudocodigo
Algoritmos e Programação: Funcionamento do computador. Conceito e definição d...
Aula 3 algoritmos
Estruturas de Dados em C#
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
1008 ProgramaçãO C Completo
 
Anúncio

Semelhante a Módulo 1 de PSI (20)

PPTX
Introdução à Programação Módulo 1 - GPSI
PDF
Algoritmia (Conceitos)
PDF
Prova algoritmos
PDF
Visualg primeira interação
DOC
Algoritmos e linguagem pascal
DOC
Algoritmos e linguagem pascal
PDF
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
PPT
Introdução à programação
PPTX
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
PDF
Apontamentos.pdf
PPT
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
PPTX
Introdução aos algoritmos e à algoritmia.pptx
PPTX
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
PPT
Lógica de programação 2
PPT
Algoritmos
PDF
A.S 7 ELEMENTOS BÁSICOS COMANDO.pdf da
PDF
Algoritmos e Lógica de Programação
PPTX
Algoritmos - Aula 03 - Necessidade Do Uso da Logica
PPT
FC-Logic
PPT
Algoritmos_em_Pseudocodigo.ppt - aula sobre algoritmo
Introdução à Programação Módulo 1 - GPSI
Algoritmia (Conceitos)
Prova algoritmos
Visualg primeira interação
Algoritmos e linguagem pascal
Algoritmos e linguagem pascal
TREINAMENTO EM LOGICA DE PROGRAMAÇÃO (Sandra Rita) (z-lib.org).pdf
Introdução à programação
1 - Introdução à Lógica de Programação - Comandos Básicos.pptx
Apontamentos.pdf
INFORMATICA LOGICA DE PROGRAMAÇÃO E ALGORITIMOS AULA- 01.ppt
Introdução aos algoritmos e à algoritmia.pptx
Aula02_Vars_Ident_Ent_Saida_Algoritmos.pptx
Lógica de programação 2
Algoritmos
A.S 7 ELEMENTOS BÁSICOS COMANDO.pdf da
Algoritmos e Lógica de Programação
Algoritmos - Aula 03 - Necessidade Do Uso da Logica
FC-Logic
Algoritmos_em_Pseudocodigo.ppt - aula sobre algoritmo

Último (20)

PDF
Apple Pippin Uma breve introdução. - David Glotz
PPTX
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PPTX
Aula sobre desenvolvimento de aplicativos
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Processos na gestão de transportes, TM100 Col18
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPTX
Émile Durkheim slide elaborado muito bom
PPTX
Curso de Java 9 - (Threads) Multitarefas.pptx
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
PPTX
Aula sobre banco de dados com firebase db
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Apple Pippin Uma breve introdução. - David Glotz
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Aula sobre desenvolvimento de aplicativos
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Processos na gestão de transportes, TM100 Col18
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Émile Durkheim slide elaborado muito bom
Curso de Java 9 - (Threads) Multitarefas.pptx
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
Aula sobre banco de dados com firebase db
COBITxITIL-Entenda as diferença em uso governança TI
Custos e liquidação no SAP Transportation Management, TM130 Col18
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss

Módulo 1 de PSI

  • 1. 1 Programação e Sistemas de Informação Prof. Hilário Russo Curso Profissional de Técnico de Gestão e Programação de Sistemas Informáticos 10º ano (2013/2014)
  • 2. 2 Módulo 1 Introdução à Programação e Algoritmia
  • 3. 3  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. Objetivo Introdução à Programação e Algoritmia
  • 4. 4 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
  • 5. 5 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
  • 6. 6  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 Fases/etapas de criação de um programa
  • 7. 7 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
  • 8. 8 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
  • 9. 9 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
  • 10. 10 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
  • 11. 11 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
  • 12. 12 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
  • 13. 13 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
  • 14. 14 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. Algoritmos Introdução à Programação e Algoritmia
  • 15. 15 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
  • 16. 16 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
  • 17. 17 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
  • 18. 18 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
  • 19. 19 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
  • 20. 20 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
  • 21. 21 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
  • 22. 22 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
  • 23. 23 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
  • 24. 24 Exercício Elabore um algoritmo para substituição de um pneu de um automóvel Introdução à Programação e Algoritmia
  • 25. 25 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
  • 26. 26 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
  • 27. 27 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
  • 28. 28 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
  • 29. 29  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
  • 30. 30 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
  • 31. 31  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. Operações elementares de um sistema inf. Introdução à Programação e Algoritmia
  • 32. 32  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
  • 33. 33 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
  • 34. 34 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
  • 35. 35 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
  • 36. 36 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
  • 37. 37 Operadores aritméticos OPERADOR OPERAÇÃO + Adição - Subtracção * Multiplicação / Divisão ^ Exponenciação Introdução à Programação e Algoritmia
  • 38. 38 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
  • 39. 39 Operadores lógicos Operador Significado Not (não) Negação And (e) Conjunção Or (ou) Disjunção Introdução à Programação e Algoritmia
  • 40. 40 Tabelas de Verdade Not p ~p V F F V AND P Q P Q V V V V F F F V F F F F OR P Q P Q V V V V F V F V V F F F Introdução à Programação e Algoritmia
  • 41. 41 Ordem de prioridade dos operadores (usados na linguagem Pascal) Introdução à Programação e Algoritmia
  • 42. 42 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
  • 43. 43 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
  • 44. 44 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
  • 45. 45 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
  • 46. 46 Tipos de dados Introdução à Programação e Algoritmia
  • 47. 47 Funções Pré definidas Introdução à Programação e Algoritmia
  • 48. 48 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
  • 49. 49 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
  • 50. 50  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.) Constantes e Variáveis Variável Idade : inteiro Introdução à Programação e Algoritmia
  • 51. 51 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
  • 52. 52 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
  • 53. 53 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
  • 54. 54  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. Pseudocódigo Introdução à Programação e Algoritmia
  • 55. 55 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
  • 56. 56  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. Fluxogramas Introdução à Programação e Algoritmia
  • 57. 57 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
  • 58. 58  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
  • 59. 59  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
  • 60. 60  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
  • 61. 61  Símbolo de Comentário …………. Este símbolo é usado para fazer comentários explicativos do algoritmo Introdução à Programação e Algoritmia
  • 62. 62  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
  • 63. 63  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
  • 64. 64  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
  • 65. 65  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
  • 66. 66 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
  • 67. 67  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. Exercício Introdução à Programação e Algoritmia
  • 68. 68  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
  • 69. 69 Em pseudocódigo Inicio Ler (comprimento, largura) area  comprimento * largura escrever (area) Fim Introdução à Programação e Algoritmia
  • 70. 70 O fluxograma será: Início Ler (comp, larg) Área  comp * larg Escrever (área) Fim Introdução à Programação e Algoritmia