![Page 1: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/1.jpg)
Programação ComputacionalAula 5: Algoritmos
Profa. Madeleine Medrano
![Page 2: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/2.jpg)
Roteiro Lógica Algoritmos
Conceito de Algoritmo Partes de um algoritmo Características Representação de um algoritmo
Fluxograma Pseudocódigo
![Page 3: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/3.jpg)
Lógica
Observe as seguintes afirmações:
O número 4 é menor que o número 7. O número 9 é maior que o número 7. Logo, o número 4 é menor
que os números 9 e 7.
Um casal com três filhos notou que um vaso estava quebrado, enquanto duas das crianças estavam na escola. Quem é o culpado?
Há uma caneta dentro de uma gaveta fechada. Sabemos que, para pegar a caneta, devemos, antes, abrir a gaveta.
![Page 4: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/4.jpg)
Podemos deduzir a partir dessas afirmações, que em nosso cotidiano, sempre que pensamos, já estamos utilizando a lógica.
Se consultarmos em um dicionário da língua portuguesa o verbete "lógica", veremos que se trata de uma parte da filosofia que estuda as leis do raciocínio.
É uma ciência que estuda as formas do pensamento.
Lógica
![Page 5: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/5.jpg)
Lógica
“é uma sequência coerente, regular e necessária de acontecimentos, de coisas".
Veja, a seguir, uma sequência de passos para comprar um determinado produto em uma loja. Imagine se seria possível comprar o produto seguindo os passos dessa sequência:
sair da loja; pagar pelo produto; entrar na loja; retirar o dinheiro da carteira; dirigir-se ao caixa; escolher o produto na prateleira.
![Page 6: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/6.jpg)
Lógica Seria impossível conseguir efetuar a compra, pois apesar de
todas as ações estarem corretas, a sequência está errada. Como você poderia pagar pelo produto após sair da loja? Ou
escolher o produto após pagar por ele? A sequência correta, nesse caso, seria: entrar na loja; escolher o produto na prateleira; dirigir-se ao caixa; retirar o dinheiro da carteira; pagar pelo produto; sair da loja.
![Page 7: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/7.jpg)
Lógica
A lógica, dessa forma, é utilizada para conduzir pensamentos ou ações voltados para a solução de problemas. Assim, a lógica está correta em determinada situação, se a solução do problema tiver sido atingida.
Na programação de computadores, o treino dessa habilidade é fundamental para aprimorarmos a nossa capacidade de resolver problemas e programar.
Devemos, portanto, aprender a pensar de forma estruturada.
Significa desenvolver e aperfeiçoar a técnica de pensamento, dentro de um raciocínio lógico e matemático, que é a base de todo o trabalho na programação de computadores
![Page 8: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/8.jpg)
Algoritmo
Para resolver um problema em um computador, de modo semelhante ao que fazemos para resolver um problema do nosso cotidiano, devemos encontrar uma maneira de descrever esse problema de uma forma clara e precisa, através de uma sequência de passos a serem seguidos até que se atinja a solução procurada.
Essa estruturação deve seguir uma determinada lógica. A lógica aplicada à programação de computadores, deve buscar a melhor sequência de ações para se resolver um problema. Essa sequência de ações damos o nome de algoritmo.
![Page 9: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/9.jpg)
Algoritmo
é um conjunto finito de regras que fornece uma sequência de operações para resolver um problema específico. É algo como uma receita, ou uma rotina.
![Page 10: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/10.jpg)
Algoritmo
Para o desenvolvimento de um algoritmo eficiente é necessário obedecermos algumas premissas básicas no momento de sua construção:
Definir ações simples e sem ambiguidade;
Organizar as ações de forma ordenada
Estabelecer as ações dentro de uma sequência finita de passos
![Page 11: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/11.jpg)
Algoritmo
O algoritmo 1 é um exemplo simples de algoritmo (sem condições ou repetições) para troca de um pneu.
Os algoritmos são capazes de realizar tarefas como:
Ler e escrever dados;
Avaliar expressões algébricas, relacionais e lógicas;
Tomar decisões com base nos resultados das expressões avaliadas;
Repetir um conjunto de ações de acordo com uma condição;
![Page 12: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/12.jpg)
Algoritmo
Um algoritmo quando programado num computador é constituído pelo menos das 3 partes, sendo elas:
1. Entrada de dados;
2. Processamento de dados;
3. Saída de dados;
![Page 13: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/13.jpg)
Algoritmo
Na parte de entrada, são fornecidas as informações necessárias para que o algoritmo possa ser executado.
Estas informações podem ser fornecidas no momento em que o programa está sendo executado ou podem estar embutidas dentro do mesmo.
Na parte do processamento são avaliadas todas as expressões algébricas, relacionais e lógicas, assim como todas as estruturas de controle existentes no algoritmo (condição e/ou repetição).
Na parte de saída, todos os resultados do processamento (ou parte deles) são enviados para um ou mais dispositivos de saída, como: monitor, impressora, ou até mesmo a própria memória do computador.
![Page 14: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/14.jpg)
Algoritmo 1 Troca de pneu do carro.
Passo 1: desligar o carroPasso 2: pegar as ferramentas (chave e macaco)Passo 3: pegar o estepePasso 4: suspender o carro com o macacoPasso 5: desenroscar os 4 parafusos do pneu furadoPasso 6: colocar o estepePasso 7: enroscar os 4 parafusosPasso 8: baixar o carro com o macacoPasso 9: guardar as ferramentas
![Page 15: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/15.jpg)
Algoritmo: Bolo de Chocolate
Passo1 – Receber os ingredientes: 2 xícaras de açúcar; 3 ovos; 250g de margarina; 3 xícaras de farinha de trigo; 1 e ½ colher de fermento; 1 xícara de leite. Passo 2: aqueça o forno a 180 graus;
Passo 3: bata as claras em neve e reserve;
Passo 4: em uma travessa, bata o açúcar, a manteiga e as gemas;
![Page 16: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/16.jpg)
Algoritmo: Bolo de Chocolate Passo 5: misture a farinha e o leite;
Passo 6: bata bem, até ficar bem homogêneo;
Passo 7: com a ajuda de uma colher, acrescente o fermento;
Passo 8: por último, adicione as claras em neve e mexa cuidadosamente; Passo 9: coloque em uma forma untada com manteiga e farinha de trigo e
leve ao forno médio para assar por aproximadamente 35 minutos ou até que, ao espetar um palito, esse saia seco;
Passo 10: após assado, desligue o forno e deixe o bolo esfriar;
Passo 11: desenforme e saboreie.
![Page 17: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/17.jpg)
Algoritmo: Características Podemos observar cinco características inerentes aos algoritmos: Finitude – Um algoritmo sempre deve terminar após um número
finito de passos. Ex. Encerra no momento em que o bolo está pronto.
Definição – Cada passo do algoritmo deve ser bem definido e sem ambiguidades
Não deve dar margem para uma interpretação dupla.
Entradas – Um algoritmo deve ter uma ou mais entradas, que são as informações que devem ser fornecidas antes do algoritmo ser iniciado
No caso da receita de bolo, as entradas são os ingredientes
![Page 18: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/18.jpg)
Algoritmo: Características
Podemos observar cinco características inerentes aos algoritmos
Saídas – Um algoritmo deve ter uma ou mais saídas. Observando a nossa receita, vemos que os ingredientes
(entradas) são misturados, gerando uma única saída (o bolo).
Efetividade – Todo algoritmo deve ser descrito por operações básicas e possíveis de ser realizadas de forma precisa, dentro de um determinado tempo, por qualquer pessoa.
Se na receita víssemos uma instrução do tipo "coloque açúcar à vontade", isso impossibilitaria a sua execução de uma forma precisa.
![Page 19: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/19.jpg)
Algoritmo – Utilizando números e expressões matemáticas
Cálculo da média aritmética de um aluno:
Passo 1: informe a primeira nota; Passo 2: informe a segunda nota; Passo 3: some a primeira nota com a segunda
nota; Passo 4: divida o resultado da soma por dois; Passo 5: mostre o resultado obtido.
![Page 20: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/20.jpg)
Algoritmo – Utilizando números e expressões matemáticas
Podemos observar que esse algoritmo têm: Início e fim Passos bem definidos Dados de entrada (primeira nota e segunda nota), Dados de saída (média) Instruções de cada passo são precisas O exemplo reúne as 5 características mencionadas
anteriormente. Podemos afirmar que a construção de algoritmos é uma
atividade que faz parte do nosso cotidiano Seguem uma sequência lógica de passos e geram suas
respectivas saídas (que são os resultados alcançados).
![Page 21: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/21.jpg)
Algoritmo – Utilizando números e expressões matemáticas
É importante lembrar que podem existir várias maneiras de solucionar um problema.
O importante é chegar à solução. Melhor ainda, se essa solução for atingida de forma eficiente e eficaz.
A eficiência a capacidade de produzir com maior qualidade e com os mesmos ou menos recursos
A eficácia caracteriza-se por fazer o que é necessário para alcançar determinado resultado
![Page 22: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/22.jpg)
Atividade
Escreva o seu algoritmo usual para ir à Universidade.
Escreva um algoritmo para fritar batatas. Escreva o seu algoritmo usual para tomar
banho. Escreva um algoritmo que, dado um número,
exiba o seu antecessor. Faça o mesmo para exibir o sucessor do
número dado.
![Page 23: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/23.jpg)
Nota:
Antes de fazer a atividade, considere as técnicas para elaboração de um algoritmo:
Ler atentamente o enunciado Destacando os pontos mais importantes; Definir os dados de entrada; Definir os dados de saída O que se deseja obter Definir o processamento De que maneira será ordenada a sequência de passos Construir o algoritmo;
![Page 24: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/24.jpg)
Formas de Representação dos Algoritmos
Descrição narrativa
Fluxogramas
Pseudocódigo
![Page 25: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/25.jpg)
Formas de Representação dos Algoritmos :Descrição narrativa Nessa forma de representação, analisamos o enunciado do problema e
descrevemos a sequência de passos em nossa língua nativa (em nosso caso, o português).
A vantagem de se utilizar esse procedimento é que não precisamos aprender nenhum conceito novo, pois já temos domínio sobre a nossa língua nativa.
A desvantagem é que a língua natural pode ser interpretada de diferentes maneiras. Em comparação com uma linguagem de programação, a linguagem natural é abstrata, imprecisa e pouco confiável.
Isso poderia trazer problemas na hora de transcrever o algoritmo para o programa (em uma linguagem de programação).
![Page 26: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/26.jpg)
Formas de Representação dos Algoritmos :Descrição narrativa
Considere o algoritmo – Receita de Bolo
Passo 9: coloque em uma forma untada com manteiga e farinha de trigo e leve ao forno médio para assar por aproximadamente 35 minutos ou até que, ao espetar um palito, esse saia seco;
A informação sublinhada é imprecisa e pode ser interpretada de diferentes.
"aproximadamente 35 minutos" pode ser um pouco menos que 35 minutos pra uma pessoa e um pouco mais que 35 minutos pra outra pessoa executando a mesma receita.
Não fica clara a quantidade de manteiga e farinha de trigo que deve ser aplicada na forma.
![Page 27: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/27.jpg)
Formas de Representação dos Algoritmos : Fluxograma
Fluxograma Nessa forma de representação, escrevemos o algoritmo utilizando símbolos
gráficos predefinidos, enfatizando os passos individuais e suas interconexões.
![Page 28: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/28.jpg)
Formas de Representação dos Algoritmos : Fluxograma
A principal vantagem é que é mais fácil entender o conteúdo descrito de forma gráfica do que um descrito textualmente. Além disso, os fluxogramas obedecem a um padrão mundial quanto à simbologia.
As desvantagens são as seguintes: Os dados podem não ser suficientemente detalhados, dificultando a transcrição do algoritmo para o programa a ser desenvolvido; É necessário aprender a simbologia dos fluxogramas; Para algoritmos mais extensos, a construção do fluxograma pode se tornar mais complicada.
![Page 29: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/29.jpg)
Formas de Representação dos Algoritmos : Fluxograma
Fluxograma Exemplo para calcular a nota média de uma aluno
![Page 30: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/30.jpg)
Formas de Representação dos Algoritmos : Fluxograma
Fluxograma Exemplo para calcular a nota média de uma aluno: As entradas para a execução do algoritmo são a primeira e a
segunda nota Veja, as notas 1 e 2 estão no símbolo de fluxograma
correspondente à entrada de dados. O cálculo da média é efetuado no símbolo seguinte Símbolo referente ao processamento, ou seja, os cálculos. O símbolo de saída de dados do fluxograma exibe o resultado A média do aluno Os símbolos de Início e Fim são os delimitadores de execução
![Page 31: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/31.jpg)
Caracterize com suas próprias palavras uma descrição narrativa.
Faça um algoritmo que descreva alguma situação do seu dia a dia (ex. tomar banho) e construa um fluxograma contendo os símbolos já vistos.
Atividade
![Page 32: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/32.jpg)
Formas de Representação dos Algoritmos : Pseudocódigo
É uma combinação das melhores características das duas formas de representação anteriores.
A principal vantagem da utilização do pseudocódigo é que, mesmo sendo independente de qualquer linguagem de programação, sua estruturação facilita a transcrição do algoritmo criado para o código dessas linguagens
A desvantagem é que precisamos aprender as regras dessa forma de representação. Também figura como desvantagem a não padronização de sua estruturação. Isso quer dizer que você encontrará um mesmo termo descrito de formas diferentes em diferentes literaturas.
![Page 33: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/33.jpg)
Pseudocódigo
![Page 34: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/34.jpg)
Pseudocódigo
![Page 35: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/35.jpg)
Formas de Representação dos Algoritmos : Pseudocódigo
Vamos chamar as instruções que estão entre as palavras início e fim de bloco de execução do algoritmo.
Veja que o bloco de execução não está posicionado no mesmo alinhamento das palavras início e fim.
Chamamos esse recuo de identação. A identação torna o código mais legível, pois facilita a visualização da
delimitação dos blocos de execução. As palavras em negrito, são as palavras reservadas da linguagem. Palavras reservadas são os comandos fornecidos pelas linguagens de
programação que permitem a expressão dos algoritmos. Alguns exemplos de palavras reservadas são comandos de escrita ou
leitura de dados e a declaração de variáveis O comentários explicam o algoritmo (em verde)
![Page 36: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/36.jpg)
Formas de Representação dos Algoritmos : Pseudocódigo
![Page 37: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/37.jpg)
Formas de Representação dos Algoritmos : Pseudocódigo
![Page 38: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/38.jpg)
Exemplos: comandos de controle
![Page 39: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/39.jpg)
Exemplos de Algoritmos em Pseudocódigo
Como exemplo de um algoritmo matemático, vamos a considerar o problema de resolver uma equação do primeiro grau da forma
Ax+b=0
A solução desta equação é
X=-b/a
Se o valor de a for diferente de 0.
Caso a seja igual a 1, a equação não possui solução, já que não é possivel dividir por 0.
![Page 40: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/40.jpg)
Exemplos de Algoritmos em Fluxograma
![Page 41: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/41.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 42: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/42.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 43: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/43.jpg)
Comandos de Repetição
As linguagens de programação normalmente possuem diversos comandos que permitem que um trecho de algoritmo seja repetido um numero de vezes.
Para estes exemplos iniciais iremos apresentar um comando de repetição que é suficientemente geral para substituir todos os outros.
![Page 44: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/44.jpg)
Comandos de Repetição
O comando ENQUANTO funciona da seguinte maneira:
Passo 1: Testar se a condição é verdadeira. Caso seja verdadeira executar o bloco de comandos situados entre o inicio do comando e o final do comando (FIM ENQUANTO).
Passo 2: Executar o bloco de comandos até o fim do enquanto. Quando chegar ao fim retornar automaticamente para o inicio do comando e refazer o passo 1.
![Page 45: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/45.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 46: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/46.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 47: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/47.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 48: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/48.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 49: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/49.jpg)
Exemplos de Algoritmos em Pseudocódigo
![Page 50: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/50.jpg)
Atividade
1) Identifique os dados de entrada, processamento e saída no algoritmo abaixo
Receba código do produto
Receba valor do produto
Receba Quantidade de produtos
Calcule o valor total do produto (Quantidade * Valor do produto) Mostre o código do produto e seu valor total
![Page 51: Programação Computacional Aula 5: Algoritmos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br madeleine@icte.uftm.edu.br](https://reader035.vdocuments.net/reader035/viewer/2022081507/5706384f1a28abb8238f7995/html5/thumbnails/51.jpg)
Fim da apresentação
Obrigada pela atenção