Aula 1 – Lógica de Programação e Algoritmos Algoritmos e Estruturas de Dados (AEDS) Professor:...
Transcript of Aula 1 – Lógica de Programação e Algoritmos Algoritmos e Estruturas de Dados (AEDS) Professor:...
Aula 1 – Lógica de Programação e Algoritmos
Algoritmos e Estruturas de Dados (AEDS)Professor: Jonas Potros
Objetivo
• Entender os princípios de Lógica Matemática (valores lógicos, lógica proposicional e de predicados) que regem os programas de computador;
• Usar a lógica na programação de computadores;
• Representar problemas reais por meio de algoritmos, para depois programá-los.
Ambiente
• Bloodshed DEV C++, disponível em: www.bloodshed.net• Code::Blocks, disponível em www.codeblocks.gov
• São todas oriundas de softwares livres ou open source, que podem ser utilizadas ou modificadas, sem a concessão prévia do autor.
Qual é o proposito da lógica?• Está relacionada ao pensamento racional e ordenado.
Todo homem é mortal.Sócrates é homem. Portanto, Sócrates é mortal.
Qual é o proposito da lógica?No linguajar comum, usamos afirmações e interrogações, o problema é que o uso destas pode ser imprecisas, mas o computador não pode agir com tal comportamento, dada a precisão que caracteriza a computação. Por isso precisamos de ferramentas e técnicas lógicas para programar maquinas.
Isso se faz por meio de sentenças (ou proposições), que pode ser de dois tipos: verdadeiro ou falso, ou ainda do inglês true ou false.
Qual é o proposito da lógica?Dez é menor do que seis. Associada a um valor lógico, que no caso é
falso.
Como vai? Não é uma sentença dentro do campo da lógica.
Existe vida fora da terra. É uma sentença, que será verdadeiro ou falso
Tabela-verdade
• Conectivos: “e”; “ou”; “não”.
• Em lógica, usamos símbolos para representar os conectivos lógicos, que são:• “e” representado por “^”;• “ou” representado por “v”;• “não” representado por “~”;
Tabela-verdade
A B A^BV V
V F
F V
F F
Conjunção (“e”)
A^B
V
F
F
F
A B AvBV V
V F
F V
F F
Conjunção (“ou”)
AvB
V
V
V
F
A ~AV
F
Conjunção (“não”)
~A
F
V
Lógica de programação
Os conectores lógicos e, ou e não, são equivalentes em inglês AND, OR e NOT.• São usados na programação de computadores;• São combinados entre si; Exemplo em sala• A tabela-verdade que decidem o resultado de sua
combinação.
Algoritmos
Algoritmo é um conjunto de passos, passível de repetição que resolve um problema.
Como construir um algoritmo?Exemplo em sala (nota do aluno);• Analisar o problema;• Identificar as entradas de dados; • Determinar que transformações devem ser feitas
pelo algoritmo (processamento);• Identificar as saídas (solução);• Construir o algoritmo com o diagrama de blocos;
Diagrama de Blocos
Programação estruturada
DecisãoSimples Composta
Exemplo
1 . Desenhar um algoritmo que calcule o valor do comprimento da circunferência, a partir do raio.
2. Desenhe um algoritmo que receba dois números e exiba o resultado da soma.
3 . Desenhe um algoritmo que receba um número e diga se este está no intervalo 100 e 200.
Repetição
Com teste no início Com teste no fim Com variável de controle
Exemplo
1. Desenhe um algoritmo que mostre a tabuada de 3.
2. Desenhe um algoritmo que imprima de 1 a 100.
3. Desenhe um algoritmo que leia N nomes de alunos e N notas e diga qual aluno tirou a maior nota;