MC 102 – Algoritmos e programação de computadores Profa...
Transcript of MC 102 – Algoritmos e programação de computadores Profa...
![Page 1: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/1.jpg)
Profa. Wanessa Machado do Amaral
MC 102 – Algoritmos e programação de computadoresProfa. Wanessa Machado do Amaral
Lógica de programação e diagrama de blocos
![Page 2: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/2.jpg)
Profa. Wanessa Machado do Amaral
Definições
Lógica é o estudo filosófico do raciocínio, estudada principalmente nas disciplinas de filosofia, matemática,
semântica e ciência da computação.
Estátua: O Pensador
http://www.americanthinker.com/2010/01/american_thinkers_first_six_ye_1.html
![Page 3: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/3.jpg)
Profa. Wanessa Machado do Amaral
Definições
Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo.
Seqüência Lógica são passos executados até atingir um objetivo ou solução de um problema.
![Page 4: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/4.jpg)
Profa. Wanessa Machado do Amaral
Exemplo
Faça uma sequencia lógica para calçar um sapato.
![Page 5: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/5.jpg)
Profa. Wanessa Machado do Amaral
Exemplo
Faça uma sequencia lógica para calçar um sapato.
Instrução #1: Segurar a meia com as mãos. Instrução #2: Colocar o pé dentro da meia. Instrução #3: Ajustar a meia no pé. Instrução #4: Abrir o sapato. Instrução #5: Colocar o pé dentro do sapato. Instrução #6: Amarrar os cadarços.
![Page 6: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/6.jpg)
Profa. Wanessa Machado do Amaral
Definições
Em informática, instrução é a informação que indica a um computador uma ação elementar a executar.
Um programa de computador é uma coleção de instruções que descrevem uma tarefa a ser realizada.
Algoritmo: sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita.
![Page 7: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/7.jpg)
Profa. Wanessa Machado do Amaral
Lógica de programação
A Lógica [na programação] é uma sequência de pensamentos (idéias e argumentos racionais) baseada num conjunto de regras, com o objetivo de representar um raciocício válido.
Uma consequência é que o mesmo resultado pode ser obtido repetindose a mesma sequência de passos logicamente válidos.
![Page 8: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/8.jpg)
Profa. Wanessa Machado do Amaral
Representações
Os algoritmos podem ser representados de várias formas:
● Através de uma língua (português, inglês, etc.): manuais de instruções, receitas culinárias, bulas.
● Representações gráficas: são bastante recomendáveis, já que um "desenho" (fluxograma) muitas vezes substitui, com vantagem, várias palavras.
● Linguagem de programação: Pascal, C, Php, Java.
![Page 9: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/9.jpg)
Profa. Wanessa Machado do Amaral
Importância
Porque devo me preocupar em representar meu programa de maneira adequada?
![Page 10: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/10.jpg)
Profa. Wanessa Machado do Amaral
http://vidadeprogramador.com.Br/2011/03/22/logicadeprogramacao/
![Page 11: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/11.jpg)
Profa. Wanessa Machado do Amaral
Fluxograma ou diagrama de blocos
●Representações gráficas de um algoritmo.
●Utiliza formas geométricas para desenhar a seqüência lógica de um programa.
●Utiliza retas e setas para ligar as figuras geométricas e indicar a direção do fluxo de dados.
![Page 12: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/12.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
![Page 13: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/13.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
InicioEscreva “Ola Mundo”
Fim
![Page 14: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/14.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
InicioEscreva “Ola Mundo”
Fim
inicio fimOla Mundo
![Page 15: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/15.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
InicioEscreva “Ola Mundo”
Fim
main(){printf(“Ola Mundo”);
}
inicio fimOla Mundo
![Page 16: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/16.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
InicioEscreva “Ola Mundo”
Fim
main(){printf(“Ola Mundo”);
}
inicio fimOla Mundo
ALGORITMO
DIAGRAMA
PROGRAMA
![Page 17: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/17.jpg)
Profa. Wanessa Machado do Amaral
Alguns símbolos do diagrama de blocos
Início (e fim)
Entrada
Decisão
Processamento
Exibição de dados na tela
conector
![Page 18: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/18.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: entrada de dados
InicioLeia idadeEscreva “Ola”
Fim
Main(){ int idade;
scanf(“%d”, &idade);printf(“Ola”);
}
inicio fimOla Leia idade
![Page 19: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/19.jpg)
Profa. Wanessa Machado do Amaral
Exemplo: decisão
Faça um algoritmo para ler duas notas, calcular e exibir a média aritmética das notas. Se a nota for menor que zero, exibir mensagem de nota inválida.
![Page 20: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/20.jpg)
Profa. Wanessa Machado do Amaral
Exemplo
Faça um algoritmo para ler duas notas, calcular e exibir a média aritmética das notas. Se a nota for menor que zero, exibir mensagem de nota inválida.
InicioLeia nota1Se nota1<0
Escreva “nota inválida”Leia nota2Se nota2<0
Escreva “nota inválida”Media = (nota1+nota2)/2Escreva Media
![Page 21: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/21.jpg)
Profa. Wanessa Machado do Amaral
Exemplo
Retirado de http://www.rmfais.com/rmfais/artigos/relatorio.php?titulo=DIAGRAMAS%20DE%20BLOCO%20-%20FLUXOGRAMAS
Faça um algoritmo para ler duas notas, calcular e exibir a média aritmética das notas. Se a nota for menor que zero, exibir mensagem de nota inválida.
InicioLeia nota1Se nota1<0
Escreva “nota inválida”Leia nota2Se nota2<0
Escreva “nota inválida”Media = (nota1+nota2)/2Escreva Media
![Page 22: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/22.jpg)
Profa. Wanessa Machado do Amaral
Pense...
Retirado de http://www.rmfais.com/rmfais/artigos/relatorio.php?titulo=DIAGRAMAS%20DE%20BLOCO%20-%20FLUXOGRAMAS
E como ficaria em C?
InicioLeia nota1Se nota1<0
Escreva “nota inválida”Leia nota2Se nota2<0
Escreva “nota inválida”Media = (nota1+nota2)/2Escreva Media
![Page 23: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/23.jpg)
Profa. Wanessa Machado do Amaral
Repetição
Ler n1
n1<0
sim
Ler n2
Algoritmo para ler n1 e validála, aceitando somente um valor maior que zero.
Como fica em C?
![Page 24: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/24.jpg)
Profa. Wanessa Machado do Amaral
If's aninhados
![Page 25: MC 102 – Algoritmos e programação de computadores Profa ...wmamaral/mc102/files/aulaDiagramas.pdf · Lógica de programação A Lógica [na programação] é uma sequência de](https://reader031.fdocumentos.tips/reader031/viewer/2022022112/5c5f1c9609d3f2e26a8ce8a5/html5/thumbnails/25.jpg)
Profa. Wanessa Machado do Amaral
Porque utilizar diagramas?
● Facilitar o entendimento da lógica do programa.
● Permitir a verificação de possíveis falhas.
● Facilitar manutenções.
● Documentar o programa.
●Compartilhar o programa com outros programadores, de forma a evitar o entendimento erroneo e eliminar ambiguidades.