0% acharam este documento útil (0 voto)
33 visualizações30 páginas

Logica 02

Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
33 visualizações30 páginas

Logica 02

Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 30

Algoritmos computacionais

Vagner Simões Santos (vagnersantos.bsi@gmail.com)


Técnico em Desenvolvimento de Sistemas
Disciplina de Lógica de Programação
Conceitos Básicos
• Simboliza ações formais na programação de
computadores, objetivando racionalidade e
desenvolvimento de técnicas que cooperem
para a produção de soluções logicamente
válidas e coerentes, que resolvam com
qualidade os problemas que se deseja
programar
• Raciocínio Lógico aplicado aos computadores
Algoritmo
• É uma seqüência finita de ações, ordenadas de
forma lógica, que devem ser executadas para
que se possa resolver uma determinada
tarefa
• Uma ação é um evento que ocorre num período
de tempo finito, estabelecendo um efeito
intencionado e bem definido.
• Exemplos: Pegar uma caneta na gaveta, Dirigir Carro, Trocar Pneu, Tomar
Banho, etc…
• Na construção de um algoritmo deve-se
abstrair uma série de detalhes
computacionais que podem ser
resolvidos mais tarde
Programa
• Quando a forma de se expressar essas ações
obedecem às regras de alguma linguagem de
programação, passamos a chamá-lo de
programa
• Algoritmo é o usado para passar instruções ao
computador, utilizando uma linguagem de
programação
• Uma vez concebida uma solução algorítmica de
um problema, esta pode ser traduzida para
qualquer linguagem de programação
Programas
• Os computadores, infelizmente só fazem
aquilo que mandamos e não necessariamente o
que desejamos que eles façam!
• Computador não tem senso próprio => deve
receber instruções explícitas
• Não deve haver ambigüidade nas instruções do
programa
• Ex. “calcule as médias das notas neste teste e informe quantos ficaram acima
da média da faculdade”
• Onde estão as notas, quantas são, qual a média
da faculdade, os ausentes devem ser
incluídos??? 
Qualidades de um
Algoritmo
1- O algoritmo deve ter um início 
2- Cada passo do algoritmo deve ser uma
instrução que possa ser realizada 
3- A ordem dos passos deve ser
precisamente determinada 
4- O algoritmo deve ter um fim
Fases da Construção de um
Algoritmo
• Identificação do Problema;

• Definir cada passo precisamente;

• Deve existir uma ou mais saídas;

• Deve existir uma condição de fim sempre atingida


para quaisquer entradas e num tempo finito;te do
Algoritmo.
Dicas!
• Algoritmos não se aprendem:
- Copiando algoritmos
- Estudando algoritmos

• Algoritmos só se aprendem:
- Construindo algoritmos
- Testando algoritmos
- Através de muitos exercícios
- Organizando as idéias antes de começar
- Entendendo as entradas, os objetivos
e as saídas desejadas
Formas de Representar
um Algoritmo
• Existem diversas formas de
representação de algoritmos, você deve
escolher a que lhe é mais clara. Dentre as
mais conhecidas:
• Descrição Narrativa
• Fluxograma Convencional
• Diagrama de Chapin
• Pseudocódigo (ou Português Estruturado)
Descrição Narrativa
• Os algoritmos são expressos diretamente
em linguagem natural. Muitas vezes dá
oportunidade a más interpretações,
ambigüidades e imprecisões. Exemplos:
Algoritmo Lavar Cabelo
1 -- Molhe o cabelo Algoritmo Fritar Ovo
2 -- Repita duas vezes 1 -- pegar frigideira , ovo , oleo e sal
Coloque xampu no cabelo 2 -- colocar oleo na frigideira
Massageie até fazer espuma 3 -- acender fogo
Enxague 4 -- colocar a frigideira no fogo
5 -- esperar o oleo esquentar
6 -- colocar o ovo
7 -- retirar quando pronto
Fluxograma Convencional
• É uma representação gráfica de algoritmos
onde formas geométricas diferentes
implicam ações (instruções, comandos)
distintas.
Início e final Operações de atribuição
do fluxograma e chamada ou retorno de
subalgoritmo
Entrada de
Dados

Decisão
Saída de
Dados
Fluxograma Convencional
Exemplo
Início
Algoritmo para cálculo
N1, N2 da média de um aluno

Média =
(N1+N2)/2

Média N
“Reprovado”
>=7
S

“Aprovado” Fim
Diagrama de Chapin
Criado por Ned Chapin a partir de trabalhos de
Nassi-Shneiderman, os quais resolveram substituir o
fluxograma tradicional por um diagrama que apresenta
uma visão hierárquica e estruturada da lógica do
programa.
Início

Leia N1, N2
Média = (N1+N2)/2

Média >=7
Sim Não

Escreva Escreva
“Aprovado” “Reprovado”

Fim
Português Estruturado ou
Pseudocódigo
• É rico em detalhes e, por algoritmo: media_aluno
assemelhar-se bastante à
forma em que os programas inicio
variaveis
são escritos. Será a forma float N1, N2, Media;
adotada nesta disciplina. leia (N1 , N2);
Media = ( N1+N2 )/2;
se (Media >= 7)
imprima ("Aprovado“)
senao
imprima (“Em Analise“);
fim
Exercícios
• Utilizando a descrição narrativa, elabore os
seguintes algoritmos:
• Trocar uma lâmpada
• Responder a uma prova de cinco questões
• Utilizando o fluxograma convencional, elabore
os seguintes algoritmos:
• Informar a idade de uma pessoa daqui a 12 anos
• Informe se a temperatura da cidade está quente,
agradável ou fria (quente: acima de 35º; fria:
abaixo de 15º; agradável: intervalo entre quente e
fria)
Variável
• Tanto na informática como na matemática – é a
representação simbólica dos elementos de um
certo conjunto.

Exemplo: y = ax2 + bx + c => x e y são variáveis

A Variável
25
Memóri Valor contido
a na variável
16
Representação das Informações
• A variável é composta de dois elementos básicos:

• Identificador – nome dado à variável.

• Conteúdo – valor da variável em um determinado


instante.

• Regras para definição dos nomes das variáveis:


Representação das Informações
• Tipos de variáveis: um dos tipos de dados.
• Ex: inteiro, real, caractere,etc.

• DEFINIÇÃO DE VARIÁVEIS:
• Todas as variáveis definidas pelo Usuário devem
ser declaradas no início do programa.
O nome da variável
não pode ter acento,
Exemplos: int x,y; cedilha ou espaços em
branco
• real z, salario;
18
Expressões Lógicas e Aritméticas
• Expressões Aritméticas: Representa um valor numérico.

Exemplo: A * B + C
• Operadores Aritméticos:
Expressões Lógicas e Aritméticas
• Expressões Lógicas: Expressões que são formadas por operadores
lógicos e/ou relacionais, envolvendo variáveis ou constantes.

Exemplos: A + B > C (x > y) && (x <> 0)

Operadores relacionais Operadores lógicos:


Expressões Lógicas e Aritméticas
• Tabela Verdade: É o conjunto de todas as possibilidades
combinatórias entre os valores de diversas variáveis lógicas e
um conjunto de operadores lógicos:
Operações Primitivas
• Atribuição:
▪ Fornecer um valor à uma variável.
▪ Armazenar um valor numa posição de memória representada
simbolicamente pela variável.

• Representação: variável <- expressão ; , onde

✔ variável é o identificador
✔ <-é o símbolo de atribuição
✔ expressão é a variável, constante ou expressão cujo resultado será
armazenado na variável.
Exemplos: A <- 16 ;
Operações Primitivas
• Leitura:
▪ Permite a leitura de valores/dados e a atribuição para as variáveis
indicadas.
▪ Indica que os dados são fornecidos por meio externo e são
armazenados na memória do computador.
▪ Dentro da operação de leitura existe uma operação de atribuiçaõ
embutida.

Representação: leia <variável>;

Exemplo: leia MATRICULA ;


Operações Primitivas
• Impressão:
▪ Permite a impressão (escrita) de dados que estavam armazenados em
variáveis.
▪ Mostra o conteúdo de qualquer variável ou expressão.
▪ Indica que os dados armazenados na memória serão fornecidos para
um meio externo.

Representação: imprima <lista de variáveis /


texto>

Exemplo:imprima MATRICULA;
Elaboração Estruturada de Algoritmos
• Todo ALGORITMO é composto por:
Cabeçalho: Que começa com a palavra PROG <nome do programa> seguido da
lista de variáveis a serem usadas durante o programa.

Bloco Principal do Programa:


Instruções, que é o corpo do programa.

• Exemplo:
prog aula
int x;
imprima “Digite um numero: “;
leia x;
imprima “Vc digitou: “, x;
fimprog
25
Exemplo de um Algoritmo
• Exemplo: Escrever um algoritmo para ler
as três notas de um aluno e imprimir a
sua média aritmética.

prog calcula_media
real nota1, nota2, nota3, media;
imprima “Digite a primeira nota: “;
• leia nota1;
imprima “Digite a segunda nota: “;
• leia nota2;
imprima “Digite a terceira nota: “;
leia nota3;
media <- (nota1 + nota2 + nota3) / 3;
imprima “A media do aluno é: “,media;
fimprog 26
Elaboração Estruturada de Algoritmos
• Observações:
▪ Palavras reservadas – são palavras que tem significado
especial previamente definido, não podendo ser usadas
como identificador de variáveis. Ex: escreva, leia, inicio,
fim, etc.
▪ Comentários – texto explicativo entre iniciado com “//”,
para auxiliar no entendimento dos diversos blocos do
programa.
▪ Identação – artifício utilizado para auxiliar no
entendimento da lógica do programa.
27
Estruturas de Controle
• Seleção Simples: SE( <condição>){
Comandos A;
}
PROG CALCULA_MEDIA2
REAL NOTA1, NOTA2, NOTA3, MEDIA;
IMPRIMA “DIGITE A PRIMEIRA NOTA: “;
LEIA NOTA1;
IMPRIMA “DIGITE A SEGUNDA NOTA: “;
•Exemplo: Escrever um algoritmo LEIA NOTA2;
para ler as duas notas de um MEDIA <- (NOTA1 + NOTA2 + NOTA3) /
aluno e imprimir a sua média 3;
aritmética. Se a nota for maior IMPRIMA “A MEDIA DO ALUNO É: “ ,
ou igual a 7 deve ser impressa MEDIA;
também a mensagem de aluno SE( MEDIA >= 7){
aprovado. IMPRIMA “ALUNO APROVADO”;
}
FIMPROG
Estruturas de Controle
• Seleção Composta: SE( <condição>){
Comandos A;
}SENAO{
• Comandos B;
}
PROG CALCULA_MEDIA2
Exemplo1: Escrever um REAL NOTA1, NOTA2, NOTA3, MEDIA;
algoritmo para ler as três notas IMPRIMA “DIGITE A PRIMEIRA NOTA: “;
de um aluno e imprimir a sua LEIA NOTA1;
média aritmética. Se a nota for IMPRIMA “DIGITE A SEGUNDA NOTA: “;
maior ou igual a 7 deve ser LEIA NOTA2;
impresso “Aluno Aprovado” caso MEDIA <- (NOTA1 + NOTA2 + NOTA3) / 3;
contrário “Reprovado”. IMPRIMA “A MEDIA DO ALUNO É: “ ,
MEDIA;
SE( MEDIA >= 7){
IMPRIMA “ALUNO APROVADO”;
} SENAO {
IMPRIMA “ALUNO REPROVADO”;
}
FIMPROG
FIM

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy