LÓGICA DE PROGRAMAÇÃO Conceitos sobre Algoritmo Aula I Prof. Rosemary Silveira Conceitos sobre Algoritmo Definição • Sequência de passos ou ações que visam atingir um objetivo ou alcançar um resultado. Relação entre lógica e algoritmo • Na medida que precisa especificar uma sequência de passos, é necessário utilizar ordem, ou seja, ‘pensar em ordem’, portanto é preciso utilizar a lógica. • Lógica pode ser definida como a ordenção ou organização do pensamento. ex.: Maria é mais velha que João João é mais velho que Rita Portanto, Maria é mais velha que Rita • Um mesmo raciocínio pode ser expresso em qualquer um dos inúmeros idiomas existentes, mas continuará representando o mesmo raciocínio, usando outra convenção. • Algo similar ocorre com a lógica de Programação e pode ser representado em qualquer uma das inúmeras linguagens de programação existentes. Essas, por sua vez, são muito atreladas a uma grande diversidade de detalhes computacionais. Conceitos sobre Algoritmo Relação entre lógica e algoritmo • • • Para representar o raciocínio da lógica de Programação, utilizamos algoritmos. Apesar do nome pouco usual, algoritmos são comuns em nosso cotidiano. Ex.: fazer bolo trocar lâmpada dirigir um carro trocar o pneu de um carro Para nos comunicarmos com o computador e fazer com que ele execute as tarefas que desejamos, é preciso descrever como estas tarefas devem ser executadas. Ex1.: Algoritmo – Troca de lâmpada - pegar uma escada - posicionar a escada embaixo da lâmpada - buscar uma lâmpada nova - subir na escada - retirar a lâmpada velha - colocar a lâmpada nova Ex2.: Troca de lâmpada com teste - pegar uma escada - posicionar a escada embaixo da lâmpada - buscar uma lâmpada nova - acionar o interruptor - se a lâmpada não acender, então - subir na escada - retirar a lâmpada queimada - colocar a lâmpada nova Conceitos sobre Algoritmo Importante: • Cada linha do algoritmo pode ser chamada de instrução, logo, podemos dizer que um algoritmo é um conjunto de instruções. • Instrução indica ao computador uma ação elementar a ser executada. Formas de Representação de Algoritmo • Algumas formas de representação de algoritmo tratam do problema apenas em nível lógico, abstraindo os detalhes de implementação muitas vezes relacionados com alguma linguagem específica, outras possuem uma riqueza de detalhes que acabam obscurecendo a idéia principal. • Dentre as formas mais conhecidas têm-se: – Descrição narrativa – representação em linguagem natural – Fluxograma convencional (diagrama de blocos) – Diagrama de chapin – Pseudocódigo (Português estruturado ou Portugol) Conceitos sobre Algoritmo Ex.: Descrição Narrativa Algoritmo Troca de pneu furado - afrouxar ligeiramente as porcas - suspender o carro - retirar as porcas e o pneu - colocar o pneu reserva - apertar as porcas - abaixar o carro - dar o aperto final nas porcas Conceitos sobre Algoritmo Fluxograma Convencional • Representação gráfica de algoritmos, onde formas geométricas diferentes implicam em ações/instruções distintas = início e final do fluxograma = operação de entrada de dados = operação de saída de dados = operação de atribuição e chamada ou retorno de subalgoritmo = operação de decisão Conceitos sobre Algoritmo Ex.: Representação do algoritmo de cálculo da média de um aluno sob a forma de um fluxograma. início Leia Nt1, Nt2 Media (Nt1 + Nt2)/2 Media >= 7 sim “Aprovado” não “Reprovado” Fim Conceitos sobre Algoritmo Diagrama de Chapin • Surgiu para substituir o fluxograma tradicional por um diagrama que apresenta uma visão hierárquica e estruturada da lógica do programa. • Assemelha-se bastante à forma em que os programas são escritos. Ex.: Representação do algoritmo de cálculo da média de um aluno sob a forma de um diagrama de Chapin. início Leia Nt1, Nt2 sim Media >= 7 Escreva “Aprovado” não Escreva “Reprovado” Fim