Você está na página 1de 27

CENTRO FEDERAL DE EDUCAO TECNOLGICA DO AMAZONAS CEFET/AM UNIDADE DE ENSINO DESCENTRALIZADA DE MANAUS UNED/MANAUS

Disciplina: Lgica e Linguagem de Programao Assunto: Desenvolvendo Algoritmos Prof Barbara Kelly da Silva Belota

Roteiro da Aula
1. Desenvolvendo Algoritmos; 1.1 Pseudocdigo; 1.2 Regras para Construo de Algoritmos; 1.3 Fases; 1.4 Exemplo de Algoritmo; 1.5 Teste de Mesa; 1.6 Diagrama de Bloco ou Fluxograma; 1.7 Exerccios; 1.8 Solues dos Exerccios.

1. Desenvolvendo Algoritmos
1.1 Pseudocdigo Os algoritmos so descritos em uma linguagem chamada pseudocdigo. Este nome uma aluso posterior implementao em uma linguagem de programao, ou seja, quando formos programar em uma linguagem, por exemplo Visual Basic, estaremos gerando cdigo em Visual Basic. Por isso os algoritmos so independentes das linguagens de programao. Ao contrrio de uma linguagem de programao no existe um formalismo rgido de como deve ser escrito o algoritmo. O algoritmo deve ser fcil de se interpretar e fcil de codificar. Ou seja, ele deve ser o intermedirio entre a linguagem falada e a linguagem de programao.

1. Desenvolvendo Algoritmos
1.2 Regras para construo de Algoritmos Para escrever um algoritmo precisamos descrever a seqncia de instrues, de maneira simples e objetiva. Para isso utilizaremos algumas tcnicas: Usar somente um verbo no infinitivo por frase; Imaginar que voc est desenvolvendo um algoritmo para pessoas que no trabalham com informtica; Usar frases curtas e simples; Ser objetivo; Procurar usar palavras que no tenham sentido dbio.

1. Desenvolvendo Algoritmos
1.3 Fases J vimos que ALGORITMO uma seqncia lgica de instrues que podem ser executadas. importante ressaltar que qualquer tarefa que siga determinado padro pode ser descrita por um algoritmo, como por exemplo: COMO FAZER ARROZ DOCE ou ento CALCULAR O SALDO FINANCEIRO DE UM ESTOQUE Entretanto ao montar um algoritmo, precisamos primeiro dividir o problema apresentado em trs fases fundamentais.

1. Desenvolvendo Algoritmos
1.3 Fases

Onde temos: ENTRADA: So os dados de entrada do algoritmo PROCESSAMENTO: So os procedimentos utilizados para chegar ao resultado final SADA: So os dados j processados

1. Desenvolvendo Algoritmos
1.3 Fases Analogia com o homem:

1. Desenvolvendo Algoritmos
1.4 Exemplo de Algoritmo
Imagine o seguinte problema: Calcular a mdia final dos alunos da 3 Srie. Os alunos realizaro quatro provas: P1, P2, P3 e P4. Onde: Mdia Final = P1 + P2 + P3 + P4 4 Para montar o algoritmo proposto, faremos trs perguntas: a) Quais so os dados de entrada? R: Os dados de entrada so P1, P2, P3 e P4 b) Qual ser o processamento a ser utilizado? R: O procedimento ser somar todos os dados de entrada e dividi-los por 4 (quatro) c) Quais sero os dados de sada? R: O dado de sada ser a mdia final

1. Desenvolvendo Algoritmos
1.4 Exemplo de Algoritmo Receba a nota da prova1 Receba a nota de prova2 Receba a nota de prova3 Receba a nota da prova4 Some todas as notas e divida o resultado por 4 Mostre o resultado da diviso

1. Desenvolvendo Algoritmos
1.5 Teste de Mesa
Aps desenvolver um algoritmo ele dever sempre ser testado. Este teste chamado de TESTE DE MESA, que significa, seguir as instrues do algoritmo de maneira precisa para verificar se o procedimento utilizado est correto ou no. Nota da Prova 1 Nota da Prova 2 Nota da Prova 3 Nota da Prova 4

Veja o exemplo:

Utilize a tabela abaixo:

P1

P2

P3

P4

Mdia

1. Desenvolvendo Algoritmos
1.6 Diagrama de Bloco ou Fluxograma O que um diagrama de bloco? O diagrama de blocos uma forma padronizada e eficaz para representar os passos lgicos de um determinado processamento. Com o diagrama podemos definir uma seqncia de smbolos, com significado bem definido, portanto, sua principal funo a de facilitar a visualizao dos passos de um processamento.

1. Desenvolvendo Algoritmos
Principais Smbolos: = Incio e final do fluxograma = Operao de entrada de dados = Operao de sada de dados em impressora = Operao de sada de dados em vdeo = Operaes de atribuio e chamada ou retorno de subalgoritmo = Deciso = Seta do Fluxo de Dados = Conector utilizado quando preciso particionar o diagrama, colocando uma letra ou nmero no smbolo para identificar os pares da conexo = Conector especfico para indicar conexo do fluxo de execuo em outra pgina = Preparao - operaes que utilizam uma chave que modifica a execuo do programa

1. Desenvolvendo Algoritmos
1.7 Exerccios:
2. Em uma escola, a mdia final dada pela mdia aritmtica de trs notas. E a mesma tem o seguinte esquema de avaliao: MDIA 0 4.9 5 6.9 7 10 SITUAO DO ALUNO Aluno em recuperao Aluno em prova final Aluno passado por mdia

Desenvolva um algoritmo (fluxograma e pseudocdigo) e que a partir da entrada das trs notas mostre a situao do aluno. No caso do aluno em recuperao e prova final, mostre tambm quanto o aluno ir precisar para passar. No caso da recuperao a nota necessria para passar dada por 10 Mdia + 2 e na prova final dado por 10 Mdia. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 1:

1. Desenvolvendo Algoritmos
1.7 Exerccios:
2. Em uma loja e CDs existem apenas quatro tipos de preos que esto associados a cores. Assim os CDs que ficam na loja no so marcados por preos e sim por cores. Desenvolva o algoritmo (fluxograma e pseudocdigo) que a partir a entrada da cor o software mostre o preo. A loja est atualmente com a seguinte tabela de preos. COR Verde Azul Amarelo Vermelho PREO 10,00 20,00 30,00 40,00

Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 2:

1. Desenvolvendo Algoritmos
1.7 Exerccios: 2. Desenvolva um algoritmo (fluxograma e pseudocdigo) capaz de encontrar o menor dentre 3 nmeros inteiros quaisquer dados pelo teclado. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 3:

1. Desenvolvendo Algoritmos
1.7 Exerccios: 2. Desenvolva um algoritmo (fluxograma e pseudocdigo) capaz de verificar se uns nmeros inteiros, dados como entrada, par ou impar. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 4:

1. Desenvolvendo Algoritmos
1.7 Exerccios: 2. Joo papo-de-pescador, homem de bem, comprou um microcomputador para controlar o rendimento dirio do seu trabalho. Toda vez que ele traz um peso de peixes maior que o estabelecido pelo regulamento de pesca do estado do Amazonas (50 quilos) deve pagar uma multa de R$ 4,00 por quilo excedente, Joo precisa que voc faa um algoritmo (fluxograma e pseudocdigo) que leia a varivel P (peso de peixes) e verifique se h excesso. Se houver, gravar na varivel E (excesso) e na varivel M o valor da multa que Joo dever pagar. Caso contrrio mostrar tais variveis com o contedo ZERO. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 5:

1. Desenvolvendo Algoritmos
1.7 Exerccios: 2. Elabore um algoritmo (fluxograma e pseudocdigo) que leia as variveis C e N respectivamente cdigo e nmero de horas trabalhadas de um operrio. E calcule o salrio sabendo-se que ele ganha R$ 10,00 por hora. Quando o nmero de horas exceder a 50 calcule o excesso e pagamento armazenando-o na varivel E, caso contrrio zerar tal varivel. A hora excedente de trabalho vale R$ 20,00. No final do processamento imprimir o salrio total e o salrio excedente. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 6:

1. Desenvolvendo Algoritmos
1.7 Exerccios: A secretria de Meio Ambiente que controla o ndice de poluio mantm 3 grupos que so altamente poluentes do meio ambiente. O ndice de poluio aceitvel varia de 0,05 at 0,25. Se o ndice sobe para 0,3 as indstrias do 1 grupo so intimadas a suspenderem suas atividades, se o ndice crescer para 0,4 as indstrias do 1 e 2 grupo so intimadas a suspenderem suas atividades, se o ndice atingir 0,5 todos os grupos devem ser notificados a paralisarem suas atividades. Faa um algoritmo (fluxograma e pseudocdigo) que leia ondice de poluio medido e emita a notificao adequada aos diferentes grupos de empresas. Voc tem 10 minutos para escrever o algoritmo.

1. Desenvolvendo Algoritmos
1.8 Soluo do Exerccio 7:

Fontes de Consulta:

Exerccios Resolvidos de Algoritmos em Fluxogramas


Autor: Alexsandro Moreira