View
221
Download
0
Category
Preview:
DESCRIPTION
Itens fundamentais de um algoritmo
Citation preview
ALGORITMOS E LINGUAGENS DE
PROGRAMAÇÃO I
MILLYS FABRIELLE ARAUJO CARVALHAES
ITENS FUNDAMENTAIS
OBJETIVOS
• Entender a forma básica de um algoritmo;
• Identificar os itens fundamentais que compõe um algoritmo;
• Resolução de exercícios para fixação;
Prof. Millys Fabrielle A. Carvalhaes 2
FORMA BÁSICA DE UM ALGORITMO
Prof. Millys Fabrielle A. Carvalhaes 3
EXEMPLO DE UM ALGORITMO
Considere o algoritmo abaixo que soma dois número inteiros
Prof. Millys Fabrielle A. Carvalhaes 4
Algoritmo SOMA_NUMEROSvar
X, A, B : inteiroinício
leia Aleia BX ←A + Bescreva X
fim
TIPOS DE DADOS
• Dados são elementos utilizados para o processamento de uma informação.
• Usuários fornecem dados de entrada aos algoritmos para serem processados
• Os algoritmos retornam os dados processados aos usuários.
• Definir o tipo de dados mais adequado para o armazenamento de um valor é de grande importância.
Prof. Millys Fabrielle A. Carvalhaes 5
TIPOS DE DADOS
Tipo Definição
Literal Pode receber letras, números e símbolos
Obs. 1: Números armazenados em literais não podem ser
utilizados para cálculos
Obs. 2: Dados literais que aparece em um algoritmo deve ser
colocada entre aspas, para não ser confundida com outro tipo
Inteiro Poderá receber número inteiros positivos ou negativos
Real Poderá receber números reais, isto é, com casas decimais,
positivos ou negativos
Lógico Poderá receber somente os valores Verdadeiro ou Falso
Prof. Millys Fabrielle A. Carvalhaes 6
TIPOS DE DADOS : LITERAIS
São utilizados por exemplo em:
• Tratamento de textos;
• Exibição de mensagens aos usuários;
• Tratamento de dados do tipo, nome, endereço, etc...
Prof. Millys Fabrielle A. Carvalhaes 7
TIPOS DE DADOS : LITERAIS
Composição:
• Dados literais são compostos por caracteres;
• Caracteres são basicamente letras maiúsculas e minúsculas, algarismos, sinais de pontuação, etc. ;
• Caracteres são representados por códigos binários, pois computadores armazenam somente números;
• O código mais utilizado é o ASCII, Exemplo:
• ‘a’ = 97
• ‘z’ = 122
• ‘+’ = 43
• ‘$’ = 36
Prof. Millys Fabrielle A. Carvalhaes 8
TIPOS DE DADOS : INTEIROS / REAIS
Usados para representação de :
• Medida, Quantidade, etc...
• Os números são representados em base decimal;
• Os computadores armazenam números em base binária;
• Exemplo: 25 ↔ 11001
Prof. Millys Fabrielle A. Carvalhaes 9
TIPOS DE DADOS : LÓGICOS
• Aplicados no processo de tomada de decisões que o computador faz;
• Os dados desse tipo podem ser verdadeiro ou falso;
• Exemplo: Será que chove hoje ?
• Sim (verdadeiro) ou Não (falso) ?
• Exemplo 2: Média é maior ou igual a 8 ?
• Sim (verdadeiro) ou Não (falso) ?
Prof. Millys Fabrielle A. Carvalhaes 10
TIPOS DE DADOS
Identifique o tipo de cada uma das constantes abaixo:
1. 21;
2. “BOLA”;
3. “Verdadeiro”;
4. 0,21 x 102;
5. Falso;
Prof. Millys Fabrielle A. Carvalhaes 11
TIPOS DE DADOS
Identifique o tipo de cada uma das constantes abaixo:
1. 21; Inteiro
2. “BOLA”; Literal
3. “Verdadeiro”; Literal
4. 0,21 x 102; Real
5. Falso; Lógico
Prof. Millys Fabrielle A. Carvalhaes 12
ITENS IMPORTANTES EM UM ALGORITMO
Prof. Millys Fabrielle A. Carvalhaes 13
ITENS IMPORTANTES EM UM ALGORITMO : EXEMPLO
Considere o algoritmo abaixo que soma dois número inteiros
Prof. Millys Fabrielle A. Carvalhaes 14
Algoritmo SOMA_NUMEROSvar
X, A, B : inteiro
início
leia A { comentário 1 }leia B
X ←A + B
escreva Xfim
CONSTANTES
São valores que não sofrem alterações ao longo doprocessamento do algoritmo ou execução do programa. Aconstante pode ser um número, um valor lógico ou uma sequênciade caracteres qualquer.
• Exemplo: Calcular 𝐴𝑅𝐸𝐴 = 𝑃𝐼 ∗ 𝑅2 circunferência
Prof. Millys Fabrielle A. Carvalhaes 15
Algoritmo AREA_CIRCUNFERENCIAconst
PI = 3.14início....fim
VARIÁVEIS
Nos algoritmos variáveis são utilizadas para representar valoresdesconhecidos, porém necessários, que poderão ser alterados deacordo com a situação. Assim dizemos que variáveis armazenamvalores temporariamente.
Prof. Millys Fabrielle A. Carvalhaes 16
Algoritmo AREA_CIRCUNFERENCIAconst
PI = 3.14var
AREA, RAIO : realinício....fim
FORMAÇÃO DOS NOMES (IDENTIFICADORES)
Toda variável deve ser identificada, isto é, receber um nome ou identificador. O nome deve ser único no algoritmo e estar de acordo com algumas regras.
• Não utilizar espaço entre letras.
• Exemplo, em vez de utilizar nome do cliente o correto seria nome_do_cliente.
• O “sublinha” ou “underline” ( _ ) pode ser utilizado para representar o espaço.
• O primeiro caractere do identificador deve ser obrigatoriamente uma letra, e os caracteres seguintes letras ou dígitos, porém, NÃO é permitido o uso de símbolos especiais
• Cada variável deve receber um nome diferente.
• Não é feito diferenciação entre maiúsculo e minúsculo.
Prof. Millys Fabrielle A. Carvalhaes 17
FORMAÇÃO DOS NOMES : DICAS
• Escolher nomes significativos para as variáveis
• Ex. salario, nota_final, pagamento
• Não alongar desnecessariamente os nomes
• Ex. total_de_recebimentos_do_ano
Prof. Millys Fabrielle A. Carvalhaes 18
FORMAÇÃO DOS NOMES : DICAS
Identifique se os nomes abaixo estão corretos ou incorretos:
• soma$;
• salario total;
• Prova1;
• Salário;
• 1aula;
• salário/hora;
Prof. Millys Fabrielle A. Carvalhaes 19
FORMAÇÃO DOS NOMES : DICAS
Identifique se os nomes abaixo estão corretos ou incorretos:
• soma$; Incorreto
• salario total; Incorreto
• prova1; Correto
• salário; Correto
• 1aula; Incorreto
• salário/hora; Incorreto
Prof. Millys Fabrielle A. Carvalhaes 20
COMENTÁRIOS
Comentários são frases que aparecem delimitadas por{comentário}, que tem como objetivo aumentar a facilidade terãode compreender o que está escrito no algoritmo. Eles podem sercolocados em qualquer ponto do algoritmo onde seja necessário.
Prof. Millys Fabrielle A. Carvalhaes 21
Algoritmo AREA_CIRCUNFERENCIAconst
PI = 3.14 {constante matemática}início....fim
OPERADORES
• São utilizados para representar expressões de cálculo, comparação, condição e atribuição.
Prof. Millys Fabrielle A. Carvalhaes 22
OPERADORES : ATRIBUIÇÃO
• São utilizados para expressar o armazenamento de um valor em uma variável. Esse valor pode ser predefinido ou ser resultado de um processamento.
Prof. Millys Fabrielle A. Carvalhaes 23
Algoritmo AREA_CIRCUNFERENCIAconst
PI = 3.14 var
AREA, RAIO : realinício...AREA ← PI * R * R...fim
OPERADORES : ARITMÉTICOS
• São utilizados para a realização de diversos cálculos matemáticos
Prof. Millys Fabrielle A. Carvalhaes 24
Operador Representação
Incremento A + 1
Decremento A – 1
Multiplicação *
Divisão /
Exponenciação ^ ou ** Ex. 25 2^5
Adição +
Subtração -
Módulo A mod B *resto da divisão
OPERADORES : ARITMÉTICOS
Dadas as seguintes atribuições, resolva as expressões:
A ← 9B ← 2C ← 5
• A ← A + 1;• B ← A * 2 * C;• A ← A mod B; • A ← C ^ B;• A ← 2 ^ 3;
Prof. Millys Fabrielle A. Carvalhaes 25
OPERADORES : ARITMÉTICOS
Dadas as seguintes atribuições, resolva as expressões:
A ← 9B ← 2C ← 5
• A ← A + 1; A ← 9 + 1 10• B ← A * 2 * C; B ← 9 * 2 * 5 90• A ← A mod B; A ← 9 mod 2 1• A ← C ^ B; A ← 5 ^ 2 25• A ← 2 ^ 3; 8
Prof. Millys Fabrielle A. Carvalhaes 26
OPERADORES : RELACIONAIS
• São utilizados para estabelecer uma relação de comparação entre valores ou expressões
Prof. Millys Fabrielle A. Carvalhaes 27
Operador Representação
Maior >
Maior ou Igual >=
Menor <
Menor ou Igual <=
Igual =
Diferente <>
OPERADORES : ARITMÉTICOS
Dadas as seguintes atribuições, indique verdadeiro ou falso para as expressões:
A ← 8B ← 2C ← 5D ← 3
• A = B;• B >= (C – D);• A <> (C + D); • A = B ^ D;
Prof. Millys Fabrielle A. Carvalhaes 28
OPERADORES : ARITMÉTICOS
Dadas as seguintes atribuições, indique verdadeiro ou falso para as expressões:
A ← 8B ← 2C ← 5D ← 3
• A = B; 8 = 2 (falso)• B >= (C – D); 2 >= 2 (verdadeiro) • A <> (C + D); 8 <> 8 (falso)• A = B ^ D; 8 = 8 (verdadeiro)
Prof. Millys Fabrielle A. Carvalhaes 29
OPERADORES : LÓGICOS
• São utilizados para concatenar ou associar expressões que estabelecem uma relação de comparação entre valores. Duas proposições podem ser combinas para criar uma nova proposição chamada conjunção.
Prof. Millys Fabrielle A. Carvalhaes 30
Operador Representação Prioridade
NÃO .não. 1
E .e. 2
OU .ou. 3
OPERADORES : LÓGICOS (ANÁLOGIA)
• Considere
Prof. Millys Fabrielle A. Carvalhaes 31
Verdadeiro
Falso
OPERADORES : LÓGICOS (E)
Prof. Millys Fabrielle A. Carvalhaes 32
A B
A .e. B é falso
OPERADORES : LÓGICOS (OU)
Prof. Millys Fabrielle A. Carvalhaes 33
A
B
A .ou. B é Verdadeiro
OPERADORES : LÓGICOS (NÃO)
Prof. Millys Fabrielle A. Carvalhaes 34
A
B
.não. A
.não. B
OPERADORES : LÓGICOS (TABELA VERDADE)
Prof. Millys Fabrielle A. Carvalhaes 35
A B .ou. .e. .não. A
0 0 0 0 1
0 1 1 0 1
1 0 1 0 0
1 1 1 1 0
Fazendo uma analogia que:
• .ou. Sendo uma soma
• .e. Sendo uma multiplicação
OPERADORES : LÓGICOS
Dadas as seguintes atribuições, indique verdadeiro ou falso para as expressões:
A ← 8B ← 2C ← 5D ← 3
• A = B .e. B >= (C – D); • A <> (C + D) .ou. A = B ^ D; • .não. A = B ^ D;
Prof. Millys Fabrielle A. Carvalhaes 36
OPERADORES : LÓGICOS
Dadas as seguintes atribuições, indique verdadeiro ou falso para as expressões:
A ← 8B ← 2C ← 5D ← 3
• A = B .e. B >= (C – D); falso .e. verdadeiro FALSO• A <> (C + D) .ou. A = B ^ D; Verdadeiro .ou. Verdadeiro VERDADEIRO• .não. A = B ^ D; .não. Verdadeiro FALSO
Prof. Millys Fabrielle A. Carvalhaes 37
OPERADORES : PRIORIDADE
Pode ter mais de um operador na expressão. Em alguns casos a ordem que são efetuadas as operações afeta o resultado final.
Ex. .não. A <> (C + D) .ou. A = B ^ D
Prof. Millys Fabrielle A. Carvalhaes 38
Operador Prioridade
Aritmético 1
Relacional 2
NÃO 3
E 4
OU 5
COMANDOS DE ENTRADA E SAÍDA DE DADOS
• Um algoritmo normalmente recebe dados para serem processados (entrada de dados)
• Um algoritmo devem devolver o resultado desse processamento (saída de dados)
Prof. Millys Fabrielle A. Carvalhaes 39
Algoritmo SOMA_NUMEROSvar
X, A, B : inteiroinício
leia A leia BX ←A + Bescreva X
fim
COMANDOS DE ENTRADA E SAÍDA DE DADOS
• Entrada
• leia < uma variável ou uma lista delas>
• Exemplos:
• leia X
• leia AREA, RAIO
• Saída
• escreva < lista de saída >
• Exemplos:
• escreva AREA
• escreva “MENSAGEM”
Prof. Millys Fabrielle A. Carvalhaes 40
ENTRADA DE DADOS
• Em um programa dados podem ser lidos de um teclado, disco rígido, pen-drive, etc..,
Prof. Millys Fabrielle A. Carvalhaes 41
SAÍDA DE DADOS
• Os dados de saída podem ser escritos em uma impressora, monitor, disco rígido, etc...
Prof. Millys Fabrielle A. Carvalhaes 42
TESTE DE MESA OU TESTE CHINÊS
• Forma de testar os algoritmos.
• Consiste no acompanhamento passo a passo, com objetivo de identificar falhas lógicas.
• O algoritmo apenas é correto se produzir um resultado esperado para qualquer entrada informada
Prof. Millys Fabrielle A. Carvalhaes 43
TESTE DE MESA OU TESTE CHINÊS
Considere o seguinte algoritmo de calcular salário:
• Informar o salário-base;
• Haverá uma gratificação de 5% do valor do salário-base;
• Haverá um imposto que é 3% do valor do salário-base;
• O salário a receber é a soma do salário-base com a gratificação descontado o imposto.
Prof. Millys Fabrielle A. Carvalhaes 44
TESTE DE MESA OU TESTE CHINÊS
Prof. Millys Fabrielle A. Carvalhaes 45
TESTE DE MESA OU TESTE CHINÊS
Prof. Millys Fabrielle A. Carvalhaes 46
REFERÊNCIAS ADICIONAIS
Prof. Millys Fabrielle A. Carvalhaes 47
Araújo, Rogério; Lógica de Programação e Estruturas de Dados
Recommended