algoritmos e lógica de programação objetivo de

Propaganda
22/08/2015
ALGORITMOS E LÓGICA DE
PROGRAMAÇÃO
Prof. Esp. Fabiano Taguchi
http://fabianotaguchi.wordpress.com
[email protected]
Conhecer os princípios e conceitos que
envolvem o aprendizado em
construção de algoritmos e programação e a
sua importância para o
universo do desenvolvimento de sistemas.
Expressões literais, lógicas e aritméticas
Tipos de dados, variáveis e constantes
CONCEITOS INICIAIS DE
ALGORITMOS
OBJETIVO DE APRENDIZAGEM
Conhecer os tipos e as formas de representação de
algoritmos através da elaboração do fluxograma e do
pseudocódigo.
1
22/08/2015
APRENDIZAGEM
RESULTADO
Pretende-se que os alunos, além de saber identificar a
sequência de ações que o sistema precisará executar,
elaborem algoritmos em pseudocódigo e em fluxogramas e
saibam representar as expressões aritméticas, lógicas e
literais, além dos tipos de dados (compreendendo quando
utilizar cada um destes).
APRENDIZAGEM
CONHECIMENTO PRÉVIO
• Linguagem binária;
• Unidades componentes do computador;
• Diferença entre programação e algoritmos;
• Saber representar uma sequência de ações, ou seja, o
passo a passo para a realização de uma determinada
atividade ou tarefa.
OPERADORES ARITMÉTICOS
OPERAÇÃO
OPERADOR
SIGNIFICADO
SOMA
SUBTRAÇÃO
+
-
Efetuar soma de duas ou mais variáveis
Efetuar a subtração de variáveis
MULTIPLICAÇÃO
*
O produto entre variáveis
DIVISÃO
/
EXPONENCIAÇÃO
**
RESTO
mod
Realiza a divisão de duas variáveis
Utilizada para fazer calcular de
potenciação, como em 3**2
Usada para encontrar o resto de uma
divisão
DIVISÃO INTEIRA
div
Este operador exibe o resultado inteiro
de uma divisão
2
22/08/2015
OPERAÇÕES COMPLEXAS
OPERAÇÕES
FUNÇÕES
EXPLICAÇÃO
Raiz quadrada
raizq(x)
Raiz quadrada
Exponenciação
exp(x,y)
x elevado a y
Valor absoluto
abs(x)
Valor absoluto de x
Arco seno
arccos(x)
Ângulo em radianos cujo seno é x
Arco cosseno
arcsen(x)
Ângulo em radianos cujo cosseno é x
Arco tangente
arctan(x)
Ângulo em radianos
Cosseno
cos(x)
Cosseno em radianos do ângulo x
Cotangente
cotan(x)
Retorna o ângulo x em radianos
Logaritmo
log(x)
Retorna o logaritmo de x na base 10
Valor de pi
pi
Retorna o valor 3,141592
Valor aleatório
rand
Randômico entre 0 e 1
OPERADORES RELACIONAIS
OPERADOR
SIGNIFICADO
>
Maior
<
>=
Menor
Maior ou igual
<=
<>
Menor ou igual
Diferente
=
Igual
OPERADORES LÓGICOS
OPERADOR SÍMBOLO
Exclusivo
Disjunção
XOU
OU
(V)
Conjunção
E (^)
Negação
NÃO (~)
SIGNIFICADO
PRIORIDADE
Resulta verdadeiro se seus dois
operandos forem diferentes
4
Pelo menos uma das variáveis tem que
ser verdadeira
As duas variáveis envolvidas no cálculo
precisam ser verdadeiras
3
Operação que inverte o valor de uma
variável
1
2
3
22/08/2015
EXEMPLO 1
Suponha que uma concessionária tenha uma meta por
vendedor de 18 carros por mês e o mínimo de R$ 58.000,00
de valor bruto de vendas. Se esse vendedor atingir a meta,
então, ele recebera 10% de comissão. Se não, o vendedor
recebe apenas 0,08% do total como participação nas
vendas. Seja A o valor da comissão, B o total de carros
vendidos e D o valor mínimo de vendas, elabore a
expressão logica que atenda essa operação.
EXEMPLO 1
Suponha que uma concessionária tenha uma meta por
vendedor de 18 carros por mês e o mínimo de R$ 58.000,00
de valor bruto de vendas. Se esse vendedor atingir a meta,
então, ele recebera 10% de comissão. Se não, o vendedor
recebe apenas 0,08% do total como participação nas
vendas. Seja A o valor da comissão, B o total de carros
vendidos e D o valor mínimo de vendas, elabore a
expressão logica que atenda essa operação.
A= ((B>=18) e (D>= 58.000))
EXEMPLO 2
Considere agora que para o vendedor ganhar a comissão
total, precisa atingir ou o valor da meta de vendas que é de
18 carros por mês, ou o valor mínimo em reais que é de R$
58.000,00. Elabore a expressão que representa essa
condição.
4
22/08/2015
EXEMPLO 2
Considere agora que para o vendedor ganhar a comissão
total, precisa atingir ou o valor da meta de vendas que é de
18 carros por mês, ou o valor mínimo em reais que é de R$
58.000,00. Elabore a expressão que representa essa
condição.
A= ((B>=18) ou (D>=58.000))
EXERCÍCIOS
Considerando p = V e q = F, resolva as seguintes
expressões lógicas.
PROPOSIÇÃO
PROPOSIÇÃO
a) ~p
f) (~p) v q
b) ~q
c) p ^ q
g) p ^ (~q)
h) p v (~q)
d) p v q
e) (~p) ^ q
i) (~p) ^ (~q)
j) (~p) v (~q)
VARIÁVEIS
VARIÁVEL = Espaço de memória do computador que pode
receber algum valor para ser armazenado, como variáveis
primitivas temos:
•
•
•
•
Inteiro
Real
Caractere
Lógico
5
22/08/2015
VARIÁVEIS
Como próprio nome diz, uma variável pode ser modificada,
consultado ou mesmo apagado durante a execução de um
algoritmo. Mas que nomes usar para representar variáveis?
•
•
•
•
Sempre iniciar o nome com uma letra;
Não deixar espaços entre caracteres;
Caracteres especiais não devem ser usados (!, ?, *, @, #);
Palavras reservadas não podem ser utilizadas.
NOMES DE VARIÁVEIS
a
A
var
altura2
media_idade
maior valor
b@
x*y
se
inicio
media
fim
media_idade: real
altura2: real
A: caractere
ATRIBUIÇÃO DE VALORES
As atribuições de valores são comandos usados para
armazenar valores em uma variável. Para isso o caractere <é utilizado, vejamos
• numero: inteiro
• numero<-5
6
22/08/2015
ENTRADA DE DADOS
Função que serve para receber os dados do usuário, e
armazená-los em uma variável, esses dados serão utilizados
na etapa do processamento do algoritmo, utilizamos um
comando do tipo leia.
numero: inteiro
leia(numero)
SAÍDA DE DADOS
Comando do tipo escreva possuem duas utilidades:
• Solicitar para que um usuário informe dados de entrada
escreva (“Digite um valor: “)
• Imprimir mensagens na tela
escreva (“Estou estudando algoritmo.”)
EXEMPLO
algoritmo "soma dois numeros"
var
x, y: inteiro
inicio
escreval("Digite o primeiro numero: ")
leia(x)
escreval("Digite o segundo numero: ")
leia(y)
escreva("A soma dos numeros e: ",x+y)
fimalgoritmo
7
22/08/2015
EXEMPLO – LINGUAGEM C
#include <stdio.h>
#include <stdlib.h>
main() {
int a, b, soma;
printf("Informe o primeiro numero:\n");
scanf("%d", &a);
printf("Informe o segundo numero:\n");
scanf("%d", &b);
soma = a + b;
printf("A soma dos numeros e: %d”, soma);
fflush (stdin);
}
ABSTRAINDO DADOS
PROBLEMA
Formule um algoritmo que leia e apresente as seguintes
informações sobre uma pessoa: nome, idade, peso, altura e
telefone.
ENTRADA?
PROCESSAMENTO?
SAÍDA?
PRATICANDO
Nas turmas da 6ª série da escola “Estudar Faz Bem”, a professora
estava reforçando com os alunos as operações matemáticas.
Para integrar as tecnologias de informação e comunicação nas
aulas para essa turma, a professora solicitou o desenvolvimento
de um aplicativo simples que permitisse aos alunos testar em
uma calculadora amigável e interativa tais operações. O intuito é
fazer com que os alunos, desde as primeiras etapas de seu
ensino, compreendam a lógica computacional e, dessa forma,
realizem a prova real manuscrita e também visualizem outras
possibilidades de se realizar essas operações. Sua missão é
desenvolver o algoritmo que apresente as operações adição,
subtração, multiplicação e divisão, e de forma que a interface
apresentada seja fácil para esse público compreender.
8
22/08/2015
SOLUÇÃO
algoritmo “Operações matemáticas”
var
x, y: real
início
escreva(“Digite o primeiro número: “)
leia(x)
escreva(“Digite o segundo número: “)
leia(y)
escreval(“A soma e: “,x+y)
escreval(“A subtracao e: “,x-y)
escreval(“A multiplicacao e: “,x*y)
escreval(“A divisao e: “,x/y)
fimalgoritmo
EXERCÍCIOS
1. Um quadrado é uma figura geométrica com quatro lados
de mesmo comprimento e quatro ângulos retos. elabore
um algoritmo para calcular a área e o perímetro de um
quadrado. sendo a área de um quadrado (lado x lado) e
o perímetro a soma dos lados do quadrado.
2. Elabore um algoritmo que leia um número inteiro, e
apresente o seu antecessor e seu sucessor.
EXERCÍCIOS
3. Construa um algoritmo que leia o preço de um produto,
o percentual de desconto e calcule o valor a pagar e o
valor do desconto.
4. Elabore um algoritmo que leia um número inteiro e
apresente o valor deste número elevado ao quadrado.
9
22/08/2015
PRÓXIMA AULA....
• Formas de representação de algoritmos.
10
Download