Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Algoritmos e Programação 1
Algoritmos e Programação
Aula Anterior
Bolo
Passo 1: Receber os ingredientes
2 xícaras de açúcar;
3 ovos;
250g de margarina;
3 xícaras de farinha de trigo;
1 e ½ colher de fermento;
1 xícara de leite.
E
n
t
r
a
d
a
s
Algoritmos e Programação 2
Algoritmos e Programação
Modo de preparo:
Passo 2: aqueça o forno a 180 graus;
Passo 3: bata as claras em neve e reserve;
Passo 4: em uma travessa, bata o açúcar, a manteiga e
as gemas;
Passo 5: misture a farinha e o leite;
Passo 6: bata bem, até ficar bem homogêneo;
Passo 7: com a ajuda de uma colher, acrescente o
fermento;
Passo 8: por último, adicione as claras em neve e mexa
cuidadosamente;
Passo 9: coloque em uma forma untada com manteiga e
farinha de trigo e leve ao forno médio para assar por
aproximadamente 35 minutos ou até que, ao espetar um
palito, esse saia seco;
Passo 10: após assado, desligue o forno e deixe o bolo
esfriar;
Passo 11: desenforme.
P
r
o
c
e
s
s
a
m
e
n
t
o
Algoritmos e Programação 3
Algoritmos e Programação
Resultado
Passo 12: Bolo pronto.
FIM S
a
í
d
a
Algoritmos e Programação 4
1. Identifique a entrada, o processamento e
a saída dos problemas abaixo:
a. Calcular e exibir a média ponderada de 2 notas
dadas. (nota1 (nota1 com peso 0,6, nota2 com
peso 0,4).
b. Reajustar um salário em 17,75%.
c. Calcular o desconto de 23% sobre o preço de um
produto.
d. Dada uma taxa de câmbio, transformar um valor
em Dólar para Reais.
e. Dada uma taxa de câmbio, transformar um valor
em Reais para Dólar.
Atividade 1
Algoritmos e Programação 5
Algoritmos e programação
Variuáveis e expressões
Algoritmos e Programação 6
Dado
Elemento, princípio ou quantidade conhecida
que serve de base para à solução de um
problema
Dado numérico: faturamento de uma loja,
temperatura ambiente, nota de uma prova, etc
Dado textual: nome de uma pessoa, endereço de
uma empresa, marca de automóvel, etc
Programa
Conjunto de instruções que manipulam dados
para se resolver um problemar ou realizar uma
tarefa
Fundamentos
Algoritmos e Programação 7
Tipos de dados
DADOS
(COMPUTADOR)
DADOS
(Mundo
externo)
Numérico
Lógico
Caractere
s
Algoritmos e Programação 8
Numérico
Inteiro
• Ex.: 1, 10, 57
Real
• Ex.: 1.5, 10, 11.745, 57
Caracteres
Sequência de valores deliminatos por aspas
(“”)
• Letras (A até Z), números (0 até 9), símbolos (i.e.,
“JuL!@n@”)
Tipos de dados (cont.)
Algoritmos e Programação 9
Lógicos (booleanos)
Alternativas: valores que sugerem uma
ÚNICA opção entre duas
• VERDADEIRO ou FALSO,
• SIM ou NÃO,
• 0 ou 1
Tipos de dados (cont.)
Algoritmos e Programação 10
“Tudo aquilo que está sujeito à variação...”
Conceito
Posição na memória (lugar) capaz de
armazenar e representar um valor ou
expressão.
Variáveis
Memória (visão simplificada)
“João” Informação
Endereço físico
12345 VERDADEIRO 3.1451
0 1 2 3
Algoritmos e Programação 11
Linguagens de programação modernas
Possibilitam associar nomes às posições de
memória em vez de trabalhar diretamente
com endereços físicos
Usuário
Tem liberdade para escolher o nome que
quiser
Ficaria livre dos endereços físicos para
trabalhar com endereços lógicos
Variáveis (cont.)
Algoritmos e Programação 12
Variáveis (cont.)
Memória (visão simplificada)
“João” Informação
Endereço físico
12345 VERDADEIRO 3.1451
0 1 2 3
nome
Algoritmos e Programação 13
Para acessar uma informação, deve-se
saber...
Tipo de dado desta informação (número de
bytes de memória por ela ocupados)
Atributos de uma variável
Nome
Tipo de dado associado
Informação por ela guardada
O nome (identificador) de uma variável
serve para diferenciá-la das demais
Variáveis (cont.)
Algoritmos e Programação 14
Pseudo-código (Portugol)
Declaração de variáveis no início do
algoritmo. Possíveis formas:
<tipo_da_variavel> <nome_da_variavel>;
<tipo_da_variavel> <lista_de_variaveis>;
Variáveis (cont.)
Algoritmos e Programação 15
Regras para escolha de identificadores
Necessário um ou mais caracteres
Não pode conter espaço em branco
O primeiro caracter não pode ser numérico
Não pode ter o mesmo nome que represente
comandos (palavras reservadas)
• Ex.: Algoritmo, Inteiro, Real, Início, Fim,
etc
Devem ser únicos – não pode haver mais de uma
variável com um certo nome
Variáveis (cont.)
Algoritmos e Programação 16
Exemplos de identificadores
caracter[30] nome, sobrenome
inteiro idade
real salario
logico tem_filhos
Variáveis (cont.)
Algoritmos e Programação 17
Valor fixo
Ex.: PI = 3.14159265
Permanecem inalteradas independente
das variáveis envolvidas na operação a
ser realizada
Constantes
Algoritmos e Programação 18
Símbolos que determinam operações
matemáticas a serem realizadas em um
computador
Operadores aritméticos
Operador Tipo Operação Prioridade Exemplo
- Unário Inversão de sinal 1 -(-1) = 1
+ Unário Manutenção de
sinal
1 +1 = 1
** Binário Exponenciação 2 9**2 = 81
% Binário Resto da divisão
inteira
3 7% 3 = 1
* Binário Multiplicação 3 6*6 = 36
/ Binário Divisão 3 8/2 = 4
+ Binário Adição 4 1 + 2 = 3
- Binário Subtração 4 4 – 5 = -1
Algoritmos e Programação 19
Prioridades definem ordem de execução
Dois ou mais operadores de mesma
prioridade: execução da esquerda para
direita
Operadores aritméticos (cont.)
1 + 2 – 3 * 20 / 5 + 2**3
5 6
4 2 3 1
Algoritmos e Programação 20
Operadores aritméticos (cont.)
1 + 2 – 3 * 20 / 5 + 2**3
5 6
4 2 3 1
(1 + 2) – ((3 * 20) / 5) + (2**3)
Organizando com parênteses
• Agrupamento de operações pelo uso de
parênteses “()” – redefinição de
prioridades
Algoritmos e Programação 21
Combinação de variáveis, operadores e
constantes para produzir um resultado
Variáveis - representam posições na memória
onde estão dados a serem processados
Constantes - símbolos usados para
representar dados
Operadores - usados para combinar variáveis
e constantes fornecendo um valor como
resposta
Expressões
Algoritmos e Programação 22
Exemplos de expressões
0.5 * base * altura
(nota1 + nota2)/2.0
(temperatura > 0) e (quantidade < limite)
4 % 3 + 5
A > B
Expressões (cont.)
Algoritmos e Programação 23
Avaliando (checando) resultado de
expressões
Observar os símbolos usados para
multiplicação (*) e divisão (/)
Avaliar primeiro as operações de maior
prioridade, por exemplo (multiplicação e
divisão)
Em caso de dois operadores de mesma
prioridade, escolher o que está mais a
esquerda
Expressões (cont.)
Algoritmos e Programação 24
Avaliando (checando) resultado de
expressões
Ex.: 4/2*3 – primeiro divide-se 4 por 2 e em
seguida multiplica-se o resultado por 3,
dando como resultado 6
Caso queira trocar a prioridade, use
parênteses
Não são permitidos outros símbolos para esta
função, tais como {} e []
Expressões (cont.)
Algoritmos e Programação 25
2. Informe o resultado das expressões a
seguir:
a. 1 / 4 =
b. 1 / 4 + 7.1 =
c. (2 + 4) / (3 - 1) =
d. 10 % 3 =
e. 1 / 3 * 3 =
f. 3 + 6 / 3 – 1 =
g. 12 / 2 % 4 =
Atividade 2
0.25
7.35
3
1
0,9999
4
2
Algoritmos e Programação 26
Atividade 3
Algoritmos e Programação 27
Atividade 3
Algoritmos e Programação 28
Sua função é atribuir um valor a uma
variável
Em algoritmos utiliza-se o símbolo “ ”
Sintaxe (regra de escrita):
• <nome_da_variavel> <expressão>
Expressão (lado direito) é avaliada (calculada). O valor
resultante é armazenado na variável (posição na
memória) (lado esquerdo)
Operador de Atribuição
Algoritmos e Programação 29
Operador de atribuição (cont.)
Memória
10 5 8 ...
0 1 2 3
Algoritmos e Programação 30
Operador de atribuição (cont.)
Memória
10 5 8 ...
0 1 2 3
Algoritmos e Programação 31
Operador de atribuição (cont.)
Memória
10 5 8 ...
0 1 2 3
Algoritmos e Programação 32
Operador de atribuição (cont.)
Memória
10 5 8 ...
0 1 2 3
Algoritmos e Programação 33
Operador de atribuição (cont.)
Memória
13 5 8 ...
0 1 2 3
Algoritmos e Programação 34
Operadores binários cujo resultado é
VERDADEIRO ou FALSO
Utilizados em comparações - Só podem ser
realizadas entre objetos de mesma natureza
(variáveis do mesmo tipo)
Operadores relacionais
Algoritmos e Programação 35
Operadores relacionais (cont.)
Operado
r
Exemplo
> maior que
< menor que
>= maior ou igual
<= menor ou igual
= igual
<> diferente
No caso de strings (cadeia de caracteres), duas
cadeias são iguais se possuem a mesma sequência
de caracteres
• Ex.: “abc” é IGUAL à “abc”, mas diferente de
“ABC”
Algoritmos e Programação 36
Operadores relacionais (cont.)
Algoritmos e Programação 37
Considere a = 3, b = 7, t = 20.0, m = 8.1
Qual o resultado das seguintes expressões:
a. t <> 100.0?
b. (m + b) <= 7.0?
c. (t/(b+a)) = 2.0?
Atividade 4
VERDADEIRO
FALSO
VERDADEIRO
Algoritmos e Programação 38
Operadores são utilizados para combinar
expressões relacionais
Possíveis resultados: VERDADEIRO ou FALSO
Operadores lógicos
Operador Tipo Operação Prioridade
OU BINÁRIO Disjunção 3
E BINÁRIO Conjunção 2
NÃO UNÁRIO Negação 1
Algoritmos e Programação 39
Atividade 5
Considere a = FALSO, b = VERDADEIRO, c
= FALSO. Qual o resultado das seguintes
expressões:
a. a OU (b E c)?
b. (a OU b) E c?
c. a E (b OU c)?
d. não (a E b)?
e. a OU b OU c?
VERDADEIRO
VERDADEIRO
FALSO
FALSO
FALSO
Algoritmos e Programação 40
Operadores lógicos (cont.)
Outros operadores podem ser obtidos
partir dos três operadores mencionados:
– OU-EXCLUSIVO – uma das variáveis
envolvidas (e apenas uma) deve ser
VERDADEIRA
– NÃO E – aplicação do operador E, seguido do
operador NÃO sobre o resultado anterior
– NÃO OU – aplicação do operador OU, seguido
do operador NÃO sobre o resultado anterior
Algoritmos e Programação 41
Operadores lógicos (cont.)
A tabela abaixo – chamada tabela-verdade
– mostra os resultados das aplicações dos
operadores lógicos conforme os valores dos
operadores envolvidos
Algoritmos e Programação 42
Operador de caracteres
O símbolo “+” pode ser usado como
operador de concatenação (junção) de
caracteres
A operação “dias” + “do” + “ano” gera “dias
do ano”
Algoritmos e Programação 43
Expressões mistas
Expressões que apresentam
operadores lógicos E relacionais
• Extremamente útil e comum em
desenvolvimento de algoritmos
• Exemplos:
– (nota1 > 7.0) OU (nota2 > 7.0)
– (salario > valor) E (ano > 2001)
• Resultado é do tipo lógico –
VERDADEIRO ou FALSO
Algoritmos e Programação 44
Atividade 6
Considere a = 5.0, b = 3.0, c = 4.0 e d =
7.1.
Qual o resultado das seguintes expressões:
a. (a > c) E (b > d)?
b. ((a + 2) = c) OU (b <= d)? VERDADEIRO
FALSO
Algoritmos e Programação 45
Atividade 6 (cont.)
Considere presente = VERDADEIRO, n1 =
7.3, e n2 = 6.2. Qual o resultado da
expressão:
a. (((n1+n2)/2.0) >=7.0) E presente?
FALSO
Algoritmos e Programação 46
Exemplos de algoritmo
Exemplo de algoritmo para calcular a média de 4 notas de um aluno:
algoritmo "MediaFinal"
var
nota1, nota2, nota3, nota4: Inteiro
media: Real
nome: Caractere
inicio
Escreva("Informe seu nome: ")
Leia(nome)
Escreva("Informe nota 1:")
Leia(nota1)
Escreva("Informe nota 2:")
Leia(nota2)
Escreva("Informe nota 3:")
Leia(nota3)
Escreva("Informe nota 4:")
Leia(nota4')
media <- (nota1 + nota2 + nota3 + nota4)/4
Escreva("O aluno ", nome, " teve média ", media)
fimalgoritmo
Algoritmos e Programação 47
Exemplos de algoritmo (cont)
Exemplo de algoritmo para calcular a área de uma circunferência:
algoritmo "AreaCircunferencia"
var
raio, area: Real
inicio
Escreva("Informe o raio: ")
Leia(raio)
area <- 3,1416 * (raio**2)
Escreva("A área de circunferência é ", area)
fimalgoritmo
Algoritmos e Programação 48
Atividade 7
Projete um algoritmo efetue as seguintes
operações:
1. Leitura de dois valores inteiros
(variáveis v1 e v2)
2. Soma de v1 e v2 armazenando na
variável soma
3. Apresentação do valor de soma (saída)
Algoritmos e Programação 49
Atividade 7 - resposta
algoritmo "Atividade 7"
var
n1, n2, soma: Inteiro
inicio
Escreva("Informe o primeiro número: ")
Leia(n1)
Escreva("Informe o segunda número: ")
Leia(n2)
soma <- n1 + n2
Escreva("A soma dos 2 número é ",
soma)
FimAlgoritmo