Buscar

Algoritmos e Programação - Aula II

Prévia do material em texto

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

Continue navegando