Escolar Documentos
Profissional Documentos
Cultura Documentos
ALGORITMOS
RAV1
ALGORITMOS
Contedo Programtico desta aula Reviso dos principais assuntos ministrados nas Aulas de 1 at 5;
RAV1
ALGORITMOS
Direto ao Assunto
RAV1
ALGORITMOS
RAV1
ALGORITMOS
RAV1
ALGORITMOS
Comando de Atribuio um dos quatro comandos bsicos da programao. Consiste em se atribuir um valor a uma varivel.
RAV1
ALGORITMOS
RAV1
ALGORITMOS
Comando se...ento...seno
se simples
se composto
RAV1
ALGORITMOS
RAV1
ALGORITMOS
Comando escolha
RAV1
ALGORITMOS
LINGUAGENS ALGORTMICAS
RAV1
ALGORITMOS
VARIVEL A varivel pode ser definida como sendo um endereo, ou mais de um endereo, na memria principal que armazena dados/ informaes e cujo valor poder ser alterado durante a execuo do programa. A esse endereo ser associado a um nome.
RAV1
ALGORITMOS
ALGORITMOS
Portugol
ALGORITMOS
VARIVEL Declarando Varivel - Portugol tipo nomeDaVarivel Regras para se nomear variveis
Muitas linguagens aceitam undescore (_) alm dos algarismos e letras no acentuadas. Ateno para palavras reservadas. Mas para facilitar, nesse primeiro momento, e atender s trs linguagens algortmicas, vamos adotar aqui as seguintes regras: 1o caracter -> letra A partir do segundo, letra ou algarismo.
RAV1
ALGORITMOS
Comando de Atribuio um dos quatro comandos bsicos da programao. Consiste em se atribuir um valor a uma varivel.
Portugol
ALGORITMOS
ler nome
ler idade
RAV1
ALGORITMOS
Comando se...ento...seno
se simples
se composto
Portugol
RAV1
ALGORITMOS
Portugol
RAV1
ALGORITMOS
Comando escolha
Portugol
RAV1
ALGORITMOS
Comando escolha
Portugol
RAV1
ALGORITMOS
O cabealho obrigatrio: programa nome. As declaraes das variveis so posicionadas depois do comando declaracoes e os demais comandos sero colocados entre inicio e fim.
RAV1
ALGORITMOS
WEBportugol
ALGORITMOS
VARIVEL Declarando Varivel - WEBportugol tipo nomeDaVarivel Regras para se nomear variveis
Muitas linguagens aceitam undescore (_) alm dos algarismos e letras no acentuadas. Ateno para palavras reservadas. Mas para facilitar, nesse primeiro momento, e atender s trs linguagens algortmicas, vamos adotar aqui as seguintes regras: 1o caracter -> letra A partir do segundo, letra ou algarismo.
RAV1
ALGORITMOS
Comando de Atribuio um dos quatro comandos bsicos da programao. Consiste em se atribuir um valor a uma varivel.
WEBportugol
ALGORITMOS
leia(nome)
leia(idade)
RAV1
ALGORITMOS
Comando se...ento...seno
se simples
se composto
WEBportugol
RAV1
ALGORITMOS
WEBportugol
RAV1
ALGORITMOS
O cabealho obrigatrio: prog xxx. Todos os comandos devero ser posicionados entre os comandos prog e fimprog, comeando pela declarao das variveis.
RAV1
ALGORITMOS
UAL
ALGORITMOS
Os caracteres de controle \n e \t so usados com o comando imprima(escrever ou escreva) para que o programador possa decidir, parcialmente, onde mensagem, contedo de varivel, constante, etc, ser exibido. O \t no est disponvel no WEBportugol
RAV1
ALGORITMOS
VARIVEL Declarando Varivel - UAL tipo nomeDaVarivel; tipo nV1, nV2, nVn;
ALGORITMOS
Comando de Atribuio um dos quatro comandos bsicos da programao. Consiste em se atribuir um valor a uma varivel.
UAL
ALGORITMOS
leia nomeVarivel;
UAL
leia nome;
leia idade;
leia altura;
RAV1
ALGORITMOS
Comando se...ento...seno
se simples
se composto
UAL
RAV1
ALGORITMOS
UAL
RAV1
ALGORITMOS
Operadores Aritmticos
Operador + * / / div %
ou
Exemplo
8/5 1.6 UAL / WEBportugol 1 C++/ Portugol 8/5. 1.6 C++/ Portugol 8 div 5 1 UAL / WEBportugol 8 % 5 3 UAL /Portugol 8 mod 5 3 WEBportugol 2**3 ** 8
RAV1
** ^
ALGORITMOS
O TESTE
RAV1
ALGORITMOS
O TESTE
RAV1
ALGORITMOS
Exemplos UAL idade >= 18 n % 2 == 0 8 <> 5 sexo == "f" Portugol idade >= 18 n%2=0 8 =/= 5 sexo = "f" WEBportugol idade >= 18 n mod 2 = 0 8 != 5 sexo = "f"
RAV1
ALGORITMOS
O TESTE
RAV1
ALGORITMOS
O TESTE
RAV1
ALGORITMOS
O TESTE
Binrio Binrio
RAV1
ALGORITMOS
O TESTE
Unrio
RAV1
ALGORITMOS
Exemplos
UAL
num >=100 && num <= 999 !var Portugol num >=100 e num <= 999 nao var
WEBportugol
ALGORITMOS
seno de um ngulo(x) em radianos co-seno de um ngulo(x) em radianos tangente de um ngulo(x) em radianos valor de x independente do sinal nmero e(neperiano) elevado a x logaritmo neperiano de x raiz quadrada de x converte x para real converte x para matematicamente. inteiro, arredondando
ALGORITMOS
RAV1
ALGORITMOS
...
iostream
cmath
iomanip
cstdlib
RAV1
ALGORITMOS
#include <iostream>
#include anita.h
RAV1
ALGORITMOS
RAV1
ALGORITMOS
RAV1
ALGORITMOS
ALGORITMOS
VARIVEL Declarando Varivel C++ tipo nomeDaVarivel; tipo nV1, nV2, nVn;
ALGORITMOS
Comando de Atribuio
nomeVar = <expresso>;
ALGORITMOS
cin>>nomeVar ; cin>>nomeVar1>>nomeVar2;
cin>>altura;
cin>>AV1>>AV2>>AV3;
RAV1
ALGORITMOS
RAV1
ALGORITMOS
RAV1
ALGORITMOS
RAV1
ALGORITMOS
Comando escolha
RAV1
ALGORITMOS
C++
sin(x) cos(x) tan(x) abs(x) exp(x) log(x) neperiano sqrt(x) pow(base, expo) (float) (int)
Observao: Tanto em UAL quanto em C++, os argumentos das funes trigonomtricas precisam estar em radianos. Converta para radiano, usando: ngulo * 3.14159265/180
RAV1
ALGORITMOS
VAMOS PRATICAR
RAV1
ALGORITMOS
O Problema da Data
O operador %(mod)
151118
RAV1
ALGORITMOS
dia
100000 10000
1000
100
10
151118
RAV1
ALGORITMOS
O Problema da Data
dia
100000 10000
1000
100
10
151118
div /
RAV1
ALGORITMOS
O Problema da Data
dia
100000 10000
1000
100
10
151118
151118 div / 10000
RAV1
ALGORITMOS
O Problema da Data
mes
100000 10000
1000
100
10
151118
RAV1
ALGORITMOS
O Problema da Data
mes
100000 10000
1000
100
10
151118
div /
RAV1
ALGORITMOS
O Problema da Data
mes
100000 10000
1000
100
10
151118
151118 div / 100
RAV1
ALGORITMOS
O Problema da Data
mes
1000
100
10
1511
(151118 div / 100)
RAV1
ALGORITMOS
O Problema da Data
mes
1000
100
10
1511
(151118 div / 100) % mod
RAV1
ALGORITMOS
O Problema da Data
mes
1000
100
10
1511
(151118 div / 100) % mod 100
RAV1
ALGORITMOS
O Problema da Data
ano
10000
1000
100
10
151118
151118 % mod 100
RAV1
ALGORITMOS
RAV1
ALGORITMOS
CORRIGIDO
RAV1
ALGORITMOS
RAV1
ALGORITMOS
#include <iostream> #include <cstdlib> using namespace std; int main() { char aula; float n1, n2; cout<<"\nPrimeiro numero: "; cin>>n1; cout<<"\nSegundo numero: "; cin>>n2;
RAV1
ALGORITMOS
4) Menu com switch() cout<<"\n\n========\n"; cout<<"\nOperacao\n"; cout<<"\n+ Somar"; cout<<"\n- Subtrair"; cout<<"\n* Multiplicar"; cout<<"\n/ dividir"; cout<<"\nOpcao: "; cin>> aula;
RAV1
ALGORITMOS
switch(aula) { case '+':cout<< "\n"<<n1+n2<<"\n"; break; case '-':cout<< "\n"<<n1-n2<<"\n"; break; case '*':cout<< "\n"<<n1*n2<<"\n"; break; case '/':cout<< "\n"<<n1/n2<<"\n"; break; default: cout<<"\nOpcao invalida\n"; } cout<<"\n\n"; system("pause"); }
RAV1
ALGORITMOS
5) Reajuste Salarial
prog revisao real salario, novoSalario; imprima "\nDigite salario:"; leia salario; se( salario <= 1000.0) { novoSalario <- salario * 1.1; } senao { se( salario <= 2000.0) { novoSalario <- salario * 1.08; } senao { se( salario <= 3000.0) { novoSalario <- salario * 1.05; }
RAV1
ALGORITMOS
5) Reajuste Salarial } }
RAV1
ALGORITMOS
5) Reajuste Salarial
RAV1
ALGORITMOS
6) IMC
#include <iostream> #include <cstdlib> using namespace std; int main() { float altura, peso, IMC; cout<<"\nAltura: "; cin>>altura; cout<<"\nPeso: "; cin>>peso; IMC = peso/(altura*altura); if( IMC < 17 || IMC >= 25) cout<< "\nConsulte um medico\n"; else cout<< "\nContinue assim\n"; cout<<"\nIMC = "<<IMC<<endl; system("pause"); }
RAV1
ALGORITMOS
RAV1
ALGORITMOS
Origem do Dado
O dado um valor fornecido pelo usurio, gerado pelo programa ou lido de um arquivo
ALGORITMOS
Resumindo
RAV1