Você está na página 1de 35

Iniciao a Computao

Semestre 2012.2

Profa. Giorgia de Oliveira Mattos giorgiamattos@gmail.com

Unidade II
Algoritmos
Definio Passos para a construo de algoritmos Formas de representao de algoritmos
Descrio narrativa Fluxograma Pseudocdigo

Elementos de um algoritmo
Constantes Variveis, tipos de dados Expresses aritmticas e lgicas Comandos de atribuio, comandos de E/S

Unidade II Algoritmos
Profa.: Giorgia de Oliveira Mattos

Introduo - Algoritmos
Definio
Sequncia finita de instrues elementares e bem definidas (no-ambguas), que levam soluo de um problema especfico. O algoritmo se define por uma sequncia lgica de passos que o computador executar fielmente para que se obtenha um resultado satisfatrio.

Introduo - Algoritmos
Voc acaba de acordar e sabe que tem que ir ao centro da cidade, quais os passos que voc executa para que o resultado satisfatrio (ir ao trabalho) acontea.
1 Passo: Levanta da cama 2 Passo:Vai ao banheiro 3 Passo:Veste a roupa 4 Passo: Sai de casa

Estes passos tem que ser executados um aps o outro, porque ningum vai ao banheiro pela manh sem levantar da cama ou ningum sai de casa primeiro antes de se vestir.

Introduo - Algoritmos
Importante:
Abordar o mximo de detalhes em um algoritmo. No esquecer como ser interpretado o que foi escrito?

Introduo - Algoritmos
Exemplo 1 Escovar os dentes pela manh

Introduo - Algoritmos
Exemplo 2 Trocar uma lmpada queimada

Introduo Algoritmos
Exemplo 2 Refinamento
1. Posicione uma escada embaixo da lmpada queimada 2. Selecione uma nova lmpada para a substituio 2.1. Se a voltagem no for a mesma da lmpada queimada, repita os passos abaixo at encontrar uma que sirva 2.1.1. Descarte a lmpada selecionada 2.1.2. Selecione uma nova 3. Repita at que a lmpada possa ser alcanada 3.1.1. Suba um degrau da escada 4. Repita at que a lmpada fique livre do soquete 4.1.1. Gire a lmpada no sentido anti-horrio 5. Posicione a nova lmpada no soquete 6. Repita at que a lmpada esteja firme 6.1.1. Gire a lmpada no sentido horrio 7. Desa da escada

Introduo - Algoritmos
Exemplo 3 Resolver Equao do 2 Grau

Algoritmos Passos para construo de um algoritmo

1. Identificar o problema (objetivo) mediante leitura atenta de seu enunciado; 2. Retirar do enunciado as entradas de dados, ou seja, identificar os dados que devem ser fornecidos e, a partir deles, verificar se desenvolvero os clculos/processamento; 3. Retirar do enunciado as sadas de dados que devem ser gerados como resultado da soluo; 4. Determinar o que deve ser feito para transformar (processar) as entradas nas sadas desejadas; 5. Construir o algoritmo; 6.Testar a soluo.

Algoritmos Exemplos
1 Construir um algoritmo para fazer um suco de laranja. Entrada: Laranja Processamento: Cortar a laranja Espremer a laranja Sada: Suco de laranja 2 - Construir um algoritmo para somar dois nmeros. Entrada: Primeiro nmero Segundo Nmero Processamento: Somar os nmeros Sada: Resultado da soma

Introduo - Algoritmos
Exerccios 1. Elabore um algoritmo para fazer pipoca em uma panela de presso, usando manteiga, sal e milho. 2. Elabore um algoritmo para realizar uma chamada telefnica local. 3. Elabore um algoritmo para realizar uma chamada telefnica de longa distncia (interurbana).

Algoritmos Formas de representao de algoritmos


Descrio narrativa
Fazemos uso da descrio narrativa quando queremos descrever um algoritmo de forma que o receptor da informao entenda do assunto mesmo no conhecendo de algoritmos Porm neste tipo de descrio temos uma impreciso e uma falta de confiabilidade no entendimento do algoritmo alm de termos uma descrio muito grande para dizer pouca coisa.

Algoritmos Descrio Narrativa


Exemplo: Dobro de um nmero
Digitar um nmero; Gravar em uma varivel; Multiplicar o nmero por 2; Gravar o resultado em outra varivel; Mostrar o resultado da operao.

Algoritmos Formas de representao de algoritmos


Fluxograma
Se utiliza de elementos grficos para descrever a soluo do problema, ajudando a compreender o que o algoritmo quer dizer mais utilizado, pois se trata de um padro mundial, alm dos smbolos dizerem muito mais que palavras, porm este complica-se a medida que o algoritmo cresce.

Smbolos do Fluxograma

Smbolos do Fluxograma Usados com maior frequncia


Terminal: usado para indicar o incio e o fim do algoritmo/fluxograma Entrada de dados: usado para indicar que uma entrada/leitura de dados atravs do teclado ser realizada Sada de dados: usado para indicar que uma apresentao/sada de dados atravs do monitor ser realizada Processo: usado para indicar clculos ou atribuies necessrias soluo do problema Deciso: indica a deciso que deve ser tomada possibilitando desvios para outras partes do fluxograma dependendo do resultado da comparao

Algoritmos Fluxograma
Exemplo: Dobro de um nmero

Algoritmos

Formas representao de algoritmos


Pseudocdigo

de

um cdigo simplrio, ou seja, no um cdigo real, mas um cdigo imaginrio que lembra o cdigo de programao Muito utilizado para apresentar a lgica algortmica de forma mais simples, sem ter que se preocupar muito com o aspecto tcnico das linguagens reais O pseudocdigo no segue um padro definido

Algoritmos - Pseudocdigo
Exemplo: Dobro de um nmero
Incio real num, dobro; escreva (Digite um nmero: ); leia (num); dobro = num * 2; escreva (Dobro do nmero: , dobro); Fim.

Elementos de um algoritmo
Constantes
Uma constante um determinado valor fixo que no se modifica ao longo do tempo, durante a execuo de um programa. As constantes podem ser:
a) Numricas: um nmero inteiro ou real ou nulo, precedidos ou no de sinal. Caso no exista sinal, a constante considerada positiva Exemplo: Pi = 3.1416; neg = -1; tam = 10;

Elementos de um algoritmo
Constantes
b) Literais: Uma constante deste tipo pode ser qualquer sequncia de caracteres (letras, dgitos ou smbolos). Toda constante literal que aparecer no algoritmo ser colocada entre aspas Exemplo: ex = O resultado ; c) Lgicas: So constantes definidas com um valor F (0) ou V (1) Exemplo: flag = V; OK = F;

Elementos de um algoritmo
Variveis
Uma formao classificada como varivel quando tem a possibilidade de ser alterada em algum instante no decorrer do tempo Num programa de computador, uma varivel uma entidade que possui um valor sendo conhecida no programa por um nome Uma varivel pode receber muitos valores diferentes, mas num dado instante, ela pode ter somente um valor

Elementos de um algoritmo
Variveis
Nos algoritmos, cada varivel corresponde a uma posio de memria cujo contedo pode variar de acordo com o tempo durante a execuo Tipos
Numrico (inteiro, real) Literal (caracter) Lgico

Elementos de um algoritmo
Declarao de variveis
No ambiente computacional, as informaes variveis so guardadas em dispositivos eletrnicos chamados de memria Podemos identificar essa memria como sendo um armrio repleto de gavetas, no qual as gavetas seriam os locais fsicos responsveis por armazenar objetos Os objetos que podem ser substitudos seriam os dados e as gavetas, as variveis

Elementos de um algoritmo
Declarao de variveis
Para identificar o tipo de uma ou mais variveis usada a declarao de variveis. Alm disso, no momento em que se declara uma varivel, feita a associao do nome escolhido com a respectiva posio de memria Uma vez declarada uma varivel, qualquer referncia ao seu identificador implica a referncia ao contedo do local da memria representado pelo identificador

Elementos de um algoritmo
Regras para a formao de identificadores
a) Devem comear por um caracter alfabtico; b) Podem ser seguidos por mais caracteres alfabticos e numricos; c) No permitido o uso de caracteres especiais com exceo do _; d) Os caracteres alfabticos devem, preferencialmente, ser escritos em minsculo; e) Devem possuir nomes que lembrem o contedo que representam.

Elementos de um algoritmo
Sintaxe: tipo lista de variveis; Exemplos: inteiro ano, dia, mes, x1, x2; caracter nome, cidade, bairro; real media, peso, valor_dolar;

Elementos de um algoritmo
Expresses Aritmticas
So aquelas cujos operadores so aritmticos e cujos operandos so constantes e/ou variveis do tipo numrico
a) Operadores Aritmticos: conjunto de smbolos que representam as operaes bsicas da matemtica, a saber: +, -, *, / b) Operaes Matemticas no convencionais:
%: resto da diviso inteira; /: quociente da diviso inteira.

c) Smbolos auxiliares: so os parnteses, cuja principal funo modificar a prioridade da execuo.

Elementos de um algoritmo
Expresses Lgicas
So aquelas cujos operadores so lgicos e/ou relacionais e cujos operandos so relaes e/ou variveis e/ou constantes
a) Operadores Relacionais: Utilizados para realizar comparaes entre dois valores. Tais valores so representados por constantes, variveis ou expresses aritmticas, a saber: ==, !=, >, <, >=, <=. b) Operadores Lgicos: utilizados para formar proposies. Os operadores lgicos so: &&, ||, !

Elementos de um algoritmo
Tabela Verdade
A V V F F B V F V F A && B V F F F A || B V V V F !A F F V V !B F V F V

Elementos de um algoritmo
Comandos de atribuio
Atribuem, armazenam um valor em uma varivel Exemplo x = 10; y = x * 2; z = x + y;

Elementos de um algoritmo
Comandos de Entrada/Sada
Leia
Obtm/l um valor do teclado e armazena-o em uma varivel. Exemplo: leia (nome); leia (num);

Escreva
Mostra/escreve o resultado armazenado em uma varivel. Tambm usado para escrever uma mensagem simples. Exemplo: escreva (Digite o nome do veculo:); escreva (dobro); escreva (Mdia = , m);

Exerccios Fluxograma e pseudocdigo


1. 2.

3.

4. 5.

Fazer um algoritmo que leia um nmero e mostre o seu antecessor e o seu sucessor. Fazer um algoritmo que obtenha dois nmeros inteiros, x e y, mostre o quociente e o resto da diviso inteira entre eles. Fazer um algoritmo que calcule e mostre a) A soma entre dois nmeros b) O produto deles c) O quociente entre eles. Fazer um algoritmo que converta centmetros para polegadas (obs.: 1pol = 2.54cm). Fazer um algoritmo que calcule e mostre a rea e o volume de um cilindro (A = 2 r(h+r), V = r h).

Você também pode gostar