Escolar Documentos
Profissional Documentos
Cultura Documentos
Fundamentos
Antes de iniciar:
• Iremos resolver um problema denominado Torre de Hanói.
• Para resolução do problema, vamos utilizar lógica.
• E...um pouco mais de lógica !!!
• Vamos descrever a solução do problema passo-a-passo.
• Iremos conhecer alguns fundamentos básicos da programação.
• Vamos começar !!!
Torre de Hanói
O que é:
"Torre de Hanói ou Torre de Lucas é um "quebra-cabeça" que consiste em uma
base contendo três pinos, em um dos quais são dispostos alguns discos uns
sobre os outros, em ordem crescente de diâmetro, de cima para baixo. O
problema consiste em passar todos os discos de um pino para outro qualquer,
usando um dos pinos como auxiliar, de maneira que um disco maior nunca fique
em cima de outro menor em nenhuma situação. O número de discos pode
variar sendo que o mais simples contém apenas três."
Fonte: https://pt.wikipedia.org/wiki/Torre_de_Han%C3%B3i
Torre de Hanói
Vamos resolver a Torre de Hanói:
• Temos 3 pinos e 3 discos. (Podemos ter mais !!!)
• Devemos transferir os 3 discos para o último pino.
• O disco maior não deve fica em cima do disco menor.
Torre de Hanói
Vamos resolver a Torre de Hanói:
Torre de Hanói
Algoritmo:
• Início.
• Mover disco 1 para C.
• Mover disco 2 para B.
• Mover disco 1 para B.
• Mover disco 3 para C.
• Mover disco 1 para A.
• Mover disco 2 para C.
• Mover disco 1 para C.
Torre de Hanói
O que utilizamos para resolver o problema:
• Utilizamos lógica para resolver o problema.
• Um raciocínio lógico.
• Uma sequência definida e ordenada de passos.
• Tivemos que seguir a sequência, para a correta resolução do problema.
• Tínhamos um objetivo. Como todo programa ou software.
• Foi escrita a sequência de passos, mostrando o movimento dos discos. Isto
é um algoritmo.
• Foi escrita em uma linguagem conhecida e interpretada facilmente.
• Computadores utilizam de linguagem para escrever algoritmos.
• Na computação existem várias linguagens de desenvolvimento.
Algoritmo
O que é?:
É uma sequência lógica de passos para atingir um determinado objetivo. Em
computação é uma sequência finita de instruções ou comandos para resolver
um problema computacional.
Algoritmo
Exemplos:
• Somar dois números.
• Trocar um pneu furado.
• Trocar a lâmpada queimada.
• Tomar banho.
• Cozinhar um bolo.
• Jogar videogame.
• Calcular raiz quadrada.
• Viajar no final de semana.
• Jogar o jogo da velha.
• Jogar o jogo Watch Dogs.
• Fazer a prova e ser aprovado.
• Multiplicar dois números.
Algoritmo
Exercícios:
• Criar o algoritmo de fritar um ovo em linguagem natural:
• Resposta:
1. Pegar frigideira, ovo, óleo e sal.
2. Colocar óleo na frigideira.
3. Acender o fogo.
4. Colocar a frigideira no fogo.
5. Esperar o óleo esquentar.
6. Colocar o ovo.
7. Retirar quando pronto.
Algoritmo
Como são feitos os programas de computador:
• Todo programa é feito com algoritmos.
• Para escrever os algoritmos precisamos de uma linguagem.
• Existem várias linguagens no mercado.
• Para escrever um programa em uma linguagem utilizamos um outro
programa.
• Este programa é conhecido como IDE (Integrated Development
Environment)
IDE
Orwell Dev-C++:
IDE
Orwell Dev-C++:
• Vamos programar em uma linguagem conhecida como C++.
• Para baixar o programa utilize o endereço abaixo:
• https://sf.net/projects/orwelldevcpp/
#include <iostream>
int main()
Função principal do programa
{
cout << "Olá Mundo !!!";
}
Variáveis
#include <iostream>
int main()
{
const float numero_pi = 3.14;
char genero = 'M';
int idade = 31;
float nota_final = 8.5;
double salario = 1200.12;
cout << "Variáveis:" << genero << "," << idade << "," << nota_final
<< "," << salario << "," << numero_pi << endl;
Operadores
#include <iostream>
int main()
{
int x = 10 + 5;// soma
int y = 4 - 20;// subtração
int j = 34 * 160;// multiplicação
int i = 6 / 2;// divisão
int p = 150 % 2;// resto da divisão
Operadores
#include <iostream>
using namespace std;
int main()
{
int correr = 20;// incremento pré-fixado
++correr;
int andar = 30;// decremento pré-fixado
--andar;
int a = 1; int b = 2; int c = 3; int d = 4; int e
= 5;
a += 1;// atribuição soma
b -= 1;// atribuição subtração
c *= 1;// atribuição multiplicação
d /= 1;// atribuição divisão
e %= 1;// atribuição resto da divisão
}
Desvios Condicionais
#include <iostream>
int main()
{
int idade;
cout << "Digite sua idade:";
cin >> idade;
Desvios Condicionais
#include <iostream>
using namespace std;
int main()
{
int opcao;
cout << "Informe uma opção (1,2,3):";
cin >> opcao;
switch (opcao)
{
case 1:
cout << "Opção 1 Selecionada";
break;
case 2:
cout << "Opção 2 Selecionada";
break;
case 3:
cout << "Opção 3 Selecionada";
break;
default:
cout << "Nenhuma Opção Selecionada";
break;
}
}
Laço (Loops)
#include <iostream>
int main()
{
for (int i=0;i<=10;i++)
cout << i << "\n";
int j = 0;
while (j <=10)
{
cout << j << "\n";
j++;
}
int k = 0;
do
{
cout << k << "\n";
k++;
}
while (k <= 10);
}
Obrigado !!!