MC 102 – Algoritmos e programação de computadores Profa

Propaganda
MC 102 – Algoritmos e programação de computadores
Profa. Wanessa Machado do Amaral
Lógica de programação e diagrama de blocos
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
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.
Profa. Wanessa Machado do Amaral
Exemplo
Faça uma sequencia lógica para calçar um sapato.
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. 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.
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 repetindo­se a mesma sequência de passos logicamente válidos. 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.
●
Profa. Wanessa Machado do Amaral
Importância
Porque devo me preocupar em representar meu programa de maneira adequada?
Profa. Wanessa Machado do Amaral
http://vidadeprogramador.com.
Br/2011/03/22
/logica­de­programacao/
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.
●
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
Inicio
Escreva “Ola Mundo”
Fim
Profa. Wanessa Machado do Amaral
Exemplo: Programa para escrever “Ola Mundo”
Inicio
Escreva “Ola Mundo”
Fim
inicio
Ola Mundo
Profa. Wanessa Machado do Amaral
fim
Exemplo: Programa para escrever “Ola Mundo”
Inicio
Escreva “Ola Mundo”
Fim
inicio
Ola Mundo
main(){
printf(“Ola Mundo”);
}
Profa. Wanessa Machado do Amaral
fim
Exemplo: Programa para escrever “Ola Mundo”
Inicio
Escreva “Ola Mundo”
Fim
inicio
Ola Mundo
ALGORITMO
fim
DIAGRAMA
main(){
printf(“Ola Mundo”);
}
Profa. Wanessa Machado do Amaral
PROGRAMA
Alguns símbolos do diagrama de blocos
Início (e fim)
Exibição de dados na tela
Entrada
conector
Decisão
Processamento
Profa. Wanessa Machado do Amaral
Exemplo: entrada de dados
Inicio
Leia idade
Escreva “Ola”
Fim
inicio
Leia idade
Ola Main(){
int idade;
scanf(“%d”, &idade);
printf(“Ola”);
Profa. Wanessa Machado do Amaral
}
fim
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.
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.
Inicio
Leia nota1
Se nota1<0
Escreva “nota inválida”
Leia nota2
Se nota2<0
Escreva “nota inválida”
Media = (nota1+nota2)/2
Escreva Media
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.
Inicio
Leia nota1
Se nota1<0
Escreva “nota inválida”
Leia nota2
Se nota2<0
Escreva “nota inválida”
Media = (nota1+nota2)/2
Escreva Media
Profa. Wanessa Machado do Amaral
Retirado de http://www.rmfais.com/rmfais/artigos/relatorio.php?titulo=DIAGRAMAS%20DE%20BLOCO%20-%20FLUXOGRAMAS
Pense...
E como ficaria em C?
Inicio
Leia nota1
Se nota1<0
Escreva “nota inválida”
Leia nota2
Se nota2<0
Escreva “nota inválida”
Media = (nota1+nota2)/2
Escreva Media
Profa. Wanessa Machado do Amaral
Retirado de http://www.rmfais.com/rmfais/artigos/relatorio.php?titulo=DIAGRAMAS%20DE%20BLOCO%20-%20FLUXOGRAMAS
Repetição
Algoritmo para ler n1 e validá­
la, aceitando somente um valor maior que zero.
Ler n1
sim
n1<0
Como fica em C?
Ler n2
Profa. Wanessa Machado do Amaral
If's aninhados
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.
●
Profa. Wanessa Machado do Amaral
Download