PITÁGORAS – VENDA NOVA
Conceitos de Algoritmos
Walter Santos
PITÁGORAS – VENDA NOVA
Introdução
Lógica de programação
Algoritmos
Fluxogramas
2
PITÁGORAS – VENDA NOVA
Lógica de programação
Lógica de programação
Técnica de encadear pensamentos para atingir determinado
objetivo.
Sequência Lógica
Passos executados até atingir um objetivo ou solução de um
problema.
3
PITÁGORAS – VENDA NOVA
Algoritmos
4
Algoritmos
Sequência finita de passos (instruções) para resolver um
determinado problema.
Sempre que desenvolvemos um algoritmo estamos estabelecendo
um padrão de comportamento que deverá ser seguido, uma
norma de execução de ações para alcançar o resultado.
PITÁGORAS – VENDA NOVA
Algoritmos
Exemplo 2
– Algoritmo para soma de dois números quaisquer
1. Escreva o primeiro número no retângulo A
2. Escreva o segundo número no retângulo B
3. Some o número do retângulo A com o número do
retângulo B e coloque o resultado no retângulo C
5
Retângulo A Retângulo B Retângulo C
PITÁGORAS – VENDA NOVA
Algoritmos
6
Teste de Mesa
Após desenvolver um algoritmo ele deverá sempre ser
testado. Este teste é chamado de TESTE DE MESA, que
significa, seguir as instruções do algoritmo de maneira
precisa para verificar se o procedimento utilizado está correto
ou não.
PITÁGORAS – VENDA NOVA
Algoritmos
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
7
A
B
C 1 2 3
PITÁGORAS – VENDA NOVA
Algoritmos
8
A
B
C
1 2 3
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
1. Acender o interruptor 1 e o interruptor 2
2. Aguarde 5 minutos
3. Apague o interruptor 2
4. Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
PITÁGORAS – VENDA NOVA
Algoritmos
9
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
1. Acender o interruptor 1 e o interruptor 2
2. Aguarde 5 minutos
3. Apague o interruptor 2
4. Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1 2 3
PITÁGORAS – VENDA NOVA Algoritmos
10
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
1. Acender o interruptor 1 e o interruptor 2
2. Aguarde 5 minutos
3. Apague o interruptor 2
4. Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1 2 3
PITÁGORAS – VENDA NOVA Algoritmos
11
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
1. Acender o interruptor 1 e o interruptor 2
2. Aguarde 5 minutos
3. Apague o interruptor 2
4. Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
1 2 3
PITÁGORAS – VENDA NOVA Algoritmos
12
1 2 3
A
B
C
Exemplo 3
– Algoritmo para verificar qual interruptor pertence a
qual lâmpada
1. Acender o interruptor 1 e o interruptor 2
2. Aguarde 5 minutos
3. Apague o interruptor 2
4. Entre na casa e verifique
Acesa: int. 1
Apagada e quente: int. 2
Apagada e fria: int. 3
PITÁGORAS – VENDA NOVA
Algoritmos
13
Para escrever um algoritmo:
Usar somente um verbo por frase
Imaginar que você está desenvolvendo 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 dúbio
PITÁGORAS – VENDA NOVA
Algoritmos
14
Partes básicas de um algoritmo
– Entrada
São as informações necessárias para execução do algoritmo
– Processamento
É a execução dos procedimentos utilizados para resolver o
problema e gerar a saída
– Saída
É o produto final do algoritmo, que pode ser a solução de um
problema, resultado do processamento
PITÁGORAS – VENDA NOVA
Algoritmos
15
Partes básicas de um algoritmo
PITÁGORAS – VENDA NOVA
Algoritmos
16
Exemplo 4
Calcule a nota final de um aluno em 4 provas (P1,
P2, P3 e P4) e forneça o resultado “Aprovado”, para
nota igual ou maior que 60, ou “Reprovado”, para
nota menor que 60.
– Quais são os dados de entrada?
– Qual o principal componente do processamento?
– Quais são os dados de saída?
Entrada
Processamento
Saída
As notas das provas P1, P2, P3 e P4.
Soma das notas e comparação com o valor da média (sessenta).
O resultado “Aprovado” ou “Reprovado”.
PITÁGORAS – VENDA NOVA Algoritmos
17
Exemplo 4
Calcule a nota final de um aluno em 4 provas (P1,
P2, P3 e P4) e forneça o resultado “Aprovado”, para
nota igual ou maior que 60, ou “Reprovado”, para
nota menor que 60.
– Algoritmo
1. Receba a nota da prova P1
2. Receba a nota da prova P2
3. Receba a nota da prova P3
4. Receba a nota da prova P4
5. Some todas as notas: NOTA = P1 + P2 + P3 + P4
6. Se NOTA ≥ 60
Mostre “APROVADO”
7. Senão
Mostre “REPROVADO”
Entrada
Processamento
Saída
Entrada de dados
Processamento
Saída
PITÁGORAS – VENDA NOVA Algoritmos
18
Exemplo 5
Algoritmo para calcular a área de uma circunferência
a partir de seu raio.
Entrada
Processamento
Saída
PITÁGORAS – VENDA NOVA Algoritmos
19
Exemplo 5
Algoritmo para calcular a área de uma circunferência
a partir de seu raio.
– Quais são os dados de entrada?
– Qual o principal componente do processamento?
– Quais são os dados de saída?
Entrada
Processamento
Saída
O valor do raio e o valor de π.
Execução da conta ÁREA = π.r2
O valor da área da circunferência.
PITÁGORAS – VENDA NOVA Algoritmos
20
Exemplo 5
Algoritmo para calcular a área de uma circunferência
a partir de seu raio.
– Algoritmo
1. π 3,14
2. Receba o valor de R (raio)
3. Calcule: A π.R2
4. Mostre A
Entrada
Processamento
Saída
Entrada de dados
Processamento
Saída
PITÁGORAS – VENDA NOVA
Tipos Primitivos de Dados
- Caractere: um caractere alfanumérico, que é representado
entre aspas duplas.
Exemplos: “M” (Masculino), “S” (Sim);
- Literal: qualquer conjunto de caracteres alfanuméricos, que
são representados entre aspas duplas.
Exemplos: “Dólar”, “Maria”, “Jupira”, “Astrogildo Pereira
Santos Carvalho Jr”.
PITÁGORAS – VENDA NOVA
Tipos Primitivos de Dados
– Inteiro (INT)
Toda e qualquer informação numérica que pertença ao conjunto
dos números inteiros relativos (negativa, nula ou positiva). [Forbellone, 2005]
Exemplos:
Ele tem 15 irmãos
Tirei 0 na prova
A profundidade é de -101 metros
× O valor de pi é 3,141 593
× O valor do número de Euler é de 2,718 281
× Tenho -0,50 reais na conta
PITÁGORAS – VENDA NOVA
Tipos Primitivos de Dados
– REAL
Toda e qualquer informação numérica que pertença ao conjunto
dos números reais (negativa, nula ou positiva). [Forbellone, 2005]
Exemplos:
Ela tem 1,73 metro de altura
Meu saldo bancário é de -215,20
Ele pesa 82,5 kg
O valor de pi é 3,141593
O valor do número de Euler é de 2,718281
× A placa diz “PARE”
× Tecla “@” do teclado
PITÁGORAS – VENDA NOVA
Tipos Primitivos de Dados
– Lógico ou Booleano (BOOL)
Toda e qualquer informação que pode assumir apenas duas
situações (biestável). [Forbellone, 2005]
Exemplos:
O valor é “VERDADEIRO” ou “FALSO”
A lâmpada pode estar “ACESA” ou “APAGADA”
A resposta é “SIM” ou “NÃO”
Valor de um bit na memória é “0” ou “1”
Na memória o nível lógico é 0V ou 5V
× Números de teclas do telefone (12 teclas)
× Campeonatos Brasileiros conquistados pelo Cruzeiro
PITÁGORAS – VENDA NOVA
Tipos de Dados, Variáveis e Constantes
Informação vs Dados
– O computador trabalha com dados, porém,
o programador que atribui informação aos
dados armazenados no PC.
Exemplo:
25
dentro do computador...
Número
30!
PITÁGORAS – VENDA NOVA
Constante
Constante é um determinado valor fixo que não se modifica ao longo do tempo, durante a execução de um programa. Conforme o seu tipo, a constante é classificada como sendo numérica, lógica e literal.
PITÁGORAS – VENDA NOVA
Variável
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 se 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
PITÁGORAS – VENDA NOVA
Declaração de variáveis
As variáveis só podem armazenar valores de
um mesmo tipo, sendo que este tipo está
relacionado com os tipos básicos ou
primitivos.
Como saber então qual o tipo da variável, ou
seja, que conjunto de valores ela pode
armazenar?
PITÁGORAS – VENDA NOVA
Para indicar o tipo de uma variável ou mais
variáveis é utilizada a declaração de
variáveis. Além disso, no momento em
que se declara uma variável, é feita a
associação do nome escolhido, ou
identificador, com a respectiva posição de
memória que o mesmo passa a
simbolizar.
Declaração de variáveis
PITÁGORAS – VENDA NOVA
Uma vez declarada a variável, qualquer
referência que se faça ao seu
identificador, implica a referência ao
conteúdo do local da memória
representado pelo mesmo.
Declaração de variáveis
PITÁGORAS – VENDA NOVA
Toda declaração de variáveis tem a
seguinte forma:
declare <lista de identificadores>
<nome do tipo>;
Onde:
Declaração de variáveis
PITÁGORAS – VENDA NOVA
declare é uma palavra-chave do algoritmo e
deve ser sublinhada.
<Lista de identificadores> são os nomes
escolhidos pelas variáveis que devem ser
separados por vírgula.
<nome do tipo> é uma das palavras reservadas
ou palavras-chave citadas anteriormente para
definir os tipos básicos de dados, também
deve ser sublinhada.
PITÁGORAS – VENDA NOVA
Obs. Ao final de uma declaração, atribuição, leitura, escrita
ou finalizar uma estrutura, comando isolado ou
expressão, utiliza-se o ponto e vírgula (;).
Exemplos:
declare CODIGO, X5 inteiro;
declare NOME, END1 literal;
declare NOTA, MEDIA real;
declare PgtoAtrasado, Maior_de_Idade lógico;
PITÁGORAS – VENDA NOVA
Declaração de Constantes
Constante é um valor fixo, que não se modifica ao
longo do tempo, durante a execução de um
programa.
Esta constante pode ser um número, um valor lógico,
sendo este verdadeiro ou falso, e até mesmo uma
sequência de caracteres, formando as palavras.
PITÁGORAS – VENDA NOVA
Exemplos:
constante NomeEmpresa “TôNaBoa Ltda”;
constante PI 3,1415;
constante VersaoPrograma “1.0.23”;
constante ImprimirEmRede verdadeiro;
Observações:
a) utilizar uma declaração de constante por linha;
b) É definida no início do algoritmo.
Declaração de Constantes
PITÁGORAS – VENDA NOVA
Tipos de variáveis
Numéricas: Específicas para armazenamento de números, que posteriormente poderão ser utilizados para cálculos. Podem ser ainda classificadas como Inteiras ou Reais.
Alfanuméricas: Para dados que contenham letras e/ou números. Pode em determinados momentos conter somente dados numéricos ou somente literais. Se usado somente para armazenamento de números, não poderá ser utilizada para operações matemáticas.
Lógicas: Armazenam somente dados lógicos que podem ser Verdadeiro ou Falso.
PITÁGORAS – VENDA NOVA
Operadores
Os operadores são meios pelo qual são
incrementados, decrementados, comparados
e avaliados dados dentro do computador.
Temos três tipos de operadores:
– Operadores Aritméticos
– Operadores Relacionais
– Operadores Lógicos
PITÁGORAS – VENDA NOVA
Operadores Aritméticos
Os operadores aritméticos são os utilizados
para obter resultados numéricos.
PITÁGORAS – VENDA NOVA
Operadores Aritméticos
Hierarquia das operações aritméticas:
– 1 º ( ) Parênteses
– 2 º Exponenciação
– 3 º Multiplicação, divisão (o que aparecer primeiro)
– 4 º + ou – (o que aparecer primeiro)
– 1 + 7 * 2 ** 2 - 1 = ?
– 3 * (1 – 2) + 4 * 2 = ?
PITÁGORAS – VENDA NOVA
Operadores relacionais
Uma expressão relacional é a comparação
realizada entre dois valores de mesmo tipo
básico.
Estes valores são representados através de
constantes, variáveis ou expressões
aritméticas.
Os operadores relacionais indicam
comparação, e são utilizados os respectivos
conectivos relacionais:
PITÁGORAS – VENDA NOVA
Sinal Nome
= Igual a
> Maior que
>= Maior ou igual a
< Menor que
<= Menor ou igual a
< > Diferente de
Operadores relacionais
PITÁGORAS – VENDA NOVA
Operadores Relacionais
Se A = 5 e B = 3 então:
A=B (falso ou verdadeiro?)
A<>B (falso ou verdadeiro?)
A>B (falso ou verdadeiro?)
A<B (falso ou verdadeiro?)
A>=B (falso ou verdadeiro?)
A<=B (falso ou verdadeiro?)
PITÁGORAS – VENDA NOVA
Noções de Lógica
Em Lógica um conceito importante
é o de “Proposição”
Você sabe o que é uma PROPOSIÇÃO?
PITÁGORAS – VENDA NOVA
Noções de Lógica
Proposição: é um enunciado verbal, ao qual deve ser atribuído,
sem ambigüidade, um valor lógico verdadeiro (V) ou falso (F).
– Exemplos de proposições:
• Robson Fidalgo é Professor (V)
• 3 + 5 = 10 (F)
• 5 < 8 (V)
– Contra-exemplos de Proposições:
• Onde você vai ?
• 3 + 5
• Os estudantes jogam vôlei. (quais ?)
PITÁGORAS – VENDA NOVA
Operações Lógicas: são usadas para formar novas proposições a
partir de proposições existentes.
– Considerando p e q duas proposições genéricas, pode-se
aplicar as seguintes operações lógicas básicas sobre elas
– Definindo a prioridade:
• Usar parênteses Ex:((p v q)^(~q)) ou
• Obedecer (~) > (^) > (v)
Operação Símbolo Significado
Negação ~ Não
Conjunção ^ E
Disjunção v OU
PITÁGORAS – VENDA NOVA
Operadores lógicos
A Álgebra das Proposições define três conectivos
usados na formação de novas proposições a
partir de outras já conhecidas. Estes conectivos
são os operadores nas expressões lógicas, a
saber:
e – utilizado em uma conjunção.
ou – utilizado em uma disjunção.
não – utilizado em uma negação.
PITÁGORAS – VENDA NOVA
Operadores Lógicos
Considerando os valores das três variáveis,
indique se é Falsa ou Verdadeira a
expressão. A = 5; B = 8; C = 1
– A = B AND B > C
– A <> B OR B < C
– A > B NOT
– A < B AND B > C
– A >= B OR B = C
– A <= B NOT
PITÁGORAS – VENDA NOVA
Operadores Lógicos
Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso.
– E / AND: Uma expressão AND (E) é verdadeira se todas as
condições forem verdadeiras
– OU / OR: Uma expressão OR (OU) é verdadeira se pelo menos uma condição for verdadeira
– NÃO / NOT: Um expressão NOT (NÃO) inverte o valor da expressão ou condição, se verdadeira inverte para falsa e vice-versa.
PITÁGORAS – VENDA NOVA
Segue tabela indicando os possíveis
resultados envolvendo operações lógicas,
onde V é verdadeiro e F é falso.
Proposições Conjunção
A B A e B
V V V
V F F
F V F
F F F
PITÁGORAS – VENDA NOVA
Proposições Disjunção
A B A ou B
V V V
V F V
F V V
F F F
PITÁGORAS – VENDA NOVA
Proposições Negação
A não A
V F
F V
PITÁGORAS – VENDA NOVA
Operações Mistas
Em operações mistas envolvendo os vários
operadores, existe uma prioridade de
execução que devemos observar:
PITÁGORAS – VENDA NOVA
Ordem de Execução Operações
1ª Parênteses e funções.
2ª
Operadores aritméticos:
1. Potência e Raiz
2. Multiplicação e Divisão
3. Adição e Subtração
3ª Operadores relacionais
(comparação).
4ª
Operadores lógicos:
1. não
2. e
3. ou
PITÁGORAS – VENDA NOVA
Comando de atribuição
Define-se comando como sendo a
descrição de uma ação a ser executada
em um dado momento.
O comando de atribuição permite que se
forneça um valor a uma certa variável,
onde a natureza deste valor tem que ser
compatível com o tipo de variável na
qual está sendo relacionada.
PITÁGORAS – VENDA NOVA
O comando de atribuição é representado da
seguinte forma:
identificador expressão
onde:
PITÁGORAS – VENDA NOVA
identificador: é o nome da variável à qual está
sendo atribuído o valor;
é o símbolo de atribuição;
expressão: é um valor simplesmente ou uma
expressão aritmética, expressão lógica ou
expressão literal de cuja avaliação é obtido
o valor a ser atribuído à variável.
PITÁGORAS – VENDA NOVA
Exemplo:
K 1;
COR “Verde”;
TESTE falso;
A B;
MEDIA SOMA/N;
PITÁGORAS – VENDA NOVA
Comandos de entrada e saída
Sabe-se que as unidades de entrada e saída
são dispositivos que possibilitam a
comunicação entre o usuário e o
computador.
Por exemplo, através do teclado, o usuário
consegue dar entrada ao programa e aos
dados na memória do computador. Por sua
vez o computador pode emitir os resultados
e outras mensagens para o usuário através
do monitor ou de uma impressora.
PITÁGORAS – VENDA NOVA
Quem determina o momento da entrada de
dados para o programa ou a saída dos
resultados obtidos para o usuário é o
programador, que assim o faz quando no
desenvolvimento do algoritmo descreve as
ações a serem executadas.
Os comandos de entrada e saída são as
ferramentas para esta finalidade.
PITÁGORAS – VENDA NOVA
Um comando de entrada é construído de
acordo com a forma geral.
leia <lista de identificadores>;
onde:
PITÁGORAS – VENDA NOVA
leia: é uma palavra chave de entrada de dados
no seu algoritmo.
<lista de identificadores> são os nomes das
variáveis, separados por vírgula, nas quais
serão armazenados os valores provenientes
do meio de entrada.
PITÁGORAS – VENDA NOVA
Exemplo:
Supondo que NOTA e NUM são variáveis do
tipo numérico real, o comando leia
NOTA, NUM; indica que dois valores
numéricos serão lidos de uma unidade de
entrada (teclado, por exemplo), quando este
comando for executado. Os valores serão
armazenados nas posições de memória
(variáveis) identificadas pelos nomes NOTA
e NUM.
PITÁGORAS – VENDA NOVA
Analogamente um comando de saída tem a
forma geral:
escreva <lista de identificadores> e ou
constantes;
Onde:
PITÁGORAS – VENDA NOVA
escreva: é uma palavra chave de saída de
dados no seu algoritmo.
<lista de identificadores> são os nomes das
variáveis, separados por vírgula, nas quais
serão armazenados os valores provenientes
do meio de entrada.
constantes: São valores declarados em
constantes anteriormente, ou em
mensagens a serem colocadas na tela no
momento da saída de dados.
PITÁGORAS – VENDA NOVA
Exemplo:
Supondo que NOTA é uma variável numérica
real, o comando escreva “O Valor é:” NOTA;
indica que será escrito na tela do
computador a frase entre aspas “O Valor é:”
e em seguida será escrito o valor
armazenado na variável NOTA naquele
momento.
PITÁGORAS – VENDA NOVA Estrutura sequencial
Usada para executar comandos passo a
passo, sabendo que todos eles serão
executados na ordem de escrita, sem
nenhum desvio. Uma sequência pode
possuir um ou vários comandos, os quais
devem ser delimitados pelos identificadores
algoritmo e fim algoritimo e ao mesmo
tempo toda a sequência é identada, ou seja,
é escrita em um espaço que pode ser
chamado de recuo em toda sua estrutura
até o fim do algoritmo.
PITÁGORAS – VENDA NOVA
algoritmo
Comando_1
...
Comando_n
fim algoritimo
PITÁGORAS – VENDA NOVA
Exemplo:
algoritmo
declare A, B, C inteiro;
leia A, B;
C (A + B) * B;
escerva A, B, C;
fim algoritmo
PITÁGORAS – VENDA NOVA
FIM