Buscar

logica de programacao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 1
Lógica de Programação 
 
1 – INTRODUÇÃO 
 Conteúdo da disciplina 
 Métodos de avaliação 
 
2 – ALGORITMO 
O programador é um resolvedor de problemas, onde sua principal ferramenta é o 
computador. 
A resolução de problemas pode ser muito difícil devido a sua complexidade. Para 
torná-la mais fácil, dividiremos sistematicamente em duas partes: resolução do 
problema e implementação. 
A fase de resolução do problema consiste na elaboração de um algoritmo. Após a 
formulação de um algoritmo adequado, é que se passa para a fase de implementação 
no qual consiste da codificação do algoritmo em alguma linguagem de programação. 
Caso um algoritmo seja preciso, sua codificação é prática, rápida e direta. 
Portanto um algoritmo poderá ser definido como uma sequência ordenada, e sem 
ambiguidade, de passos que levam à resolução de um problema. 
 
3 – CONCEITOS 
Para a formulação do algoritmo será necessário o conhecimento de algumas regras e 
convenções. 
3.1 – Constantes 
Constante é um determinado valor fixo que não se altera diante a execução do 
programa. Podem ser do tipo Numéricas, Lógicas ou Literais. 
 
3.1.1 – Constantes Numéricas 
Podem ser do tipo inteira ou real. 
Inteiras: correspondem aos números inteiros da aritmética, podendo ser positivos (+) 
ou negativos (-). 
Exemplo: 
13 -10 
5 120 
Reais: correspondem aos números reais, sendo sempre representado com o fator 
decimal. 
Exemplo: 
3.0 -5.0 
10.1 -12.2545 
Para representar os potencias de 10, utilizaremos a letra “E”. 
Exemplo: 
 2.45 E 10 = 2.45*1010 
 3.0 E –3 = 3.0* 10-3 
 
 
 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 2
3.1.2 Constantes Lógicas 
Possuem apenas 2 valores: FALSO ou VERDADEIRO. 
 
3.1.3 Constantes Literais 
Uma constante literal é uma sequência de itens, que podem ser as letras do 
alfabeto(a,b,...z), os dígitos (0...9) e os caracteres especiais(espaço em branco, =, /, *,...). 
Uma constante literal é representada nos algoritmos com seu início e final por 
aspas(“) ou apóstrofes (‘). 
Exemplo: 
 ‘Ana Maria’ “X/A*1” 
 “João” ‘3 + 4 = 0’ 
 
EXERCÍCIOS: 
01) Identifique o tipo de cada uma das constantes abaixo: 
a) 5 f) 10.01 E –10 
b) 5.0 g) 102040 
c) ‘Maria’ h) – 5.01 E 3 
d) ‘Falso’ i) Falso 
e) Verdadeiro j) “João” 
 
3.2 – Operadores Básicos 
A notação utilizada nos algoritmos é basicamente a mesma de matemática, com 
algumas exceções: 
OPERADORES NOTAÇÃO 
ADIÇÃO + 
SUBTRAÇÃO - 
MULTIPLICAÇÃO * 
POTENCIAÇÃO ↑ 
DIVISÃO / 
RADICIAÇÃO SQRT ( ) 
 
Exemplos: 
4 + 5 → 4 + 5 5 – 1 → 5 – 1 
4 . 12 → 4 * 12 2 →SQRT (2) 
12
4
→4/12 23 → 2 ↑ 3 
 
EXERCÍCIOS: 
01) Transforme as expressões matemáticas abaixo em expressões utilizadas em 
algoritmos: 
a) 


 ++
3
321 nnn
 b) 




 +
2
. zyx
 
 
 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 3
3.3 – Variáveis 
Uma variável, nos algoritmos, corresponde a uma posição de memória, onde o seu 
conteúdo poderá variar ao longo da execução. Embora uma variável possa assumir 
diferentes valores, ela só poderá armazenar um valor por vez. 
Para se dar o nome da variável algumas regras devem ser cumpridas: 
a) Deve sempre começar com uma letra; 
b) Não aceita espaços em branco ou caracteres especiais; 
c) Não difere entre maiúsculos ou minúsculos; 
d) A quantidade de caracteres que compõem o nome, dependerá da 
implementação da linguagem. 
As variáveis são classificadas em Numéricas, Lógicas ou Literais, pelo fato de só 
poderem armazenar valores de um mesmo tipo. Portanto se uma variável for declarada 
numérica, ela não poderá receber valores Literais ou Lógicas. 
Exemplos: 
Válidos Não Válidos 
M123 1 M 2 3 
João_da_Silva João/da/Silva 
Lado3 Lado 3 
XY Sal Real 
XibB Nome-Literal 
Nome Teste*Lógico 
Eu Sal ↑ P 
 
EXERCÍCIO: 
01) Identifique as variáveis válidas: 
João X555 
5 Pedro São-Bráz 
São_Bráz X/Z 
XZ X *Pedro 
Bola10 joao de_barro 
Nome/aluno salmensal 
Data010596 falso 
 
3.4 – Expressões Aritméticas e Prioridades 
Expressões Aritméticas são todas aquelas que os operadores são aritméticos e os 
operandos são constantes ou variáveis. Exemplos: 
X + Y Sal + In 
4 + 5 SQRT (Sal + X+Y) 
Nas expressões aritméticas, as operações apresentam uma relação de prioridade, 
podendo ser usados vários níveis de parênteses para quebrar as prioridades definidas, 
não podendo usar { } ou [ ]. A tabela abaixo exibe as prioridades das operações: 
 
 
 
 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 4
Prioridade Operação 
1 Potenciação, radiciação 
2 Multiplicação, divisão 
3 Adição, subtração 
 
3.5 – Expressões Lógicas 
Uma expressão lógica é aquela cujo operadores são lógicos e os operandos são 
relações, constantes e/ou variáveis do tipo lógico. 
 
3.5.1 – Relações 
Uma relação é uma comparação realizada entre dois valores do mesmo tipo básico, 
onde estes valores são representados por constantes, variáveis ou expressões 
numéricas. Uma relação sempre fornece um resultado lógico. 
Os operadores relacionais são: 
= igual < > diferente > maior que 
< menor que >= maior ou igual a <= menor ou igual a 
 
3.5.2 – Operadores Lógicos 
Existe 03 operadores lógicos: E, OU e NÃO. 
O operador lógico E retornará um valor verdadeiro se somente se as duas 
proposições forem verdadeiras. Sendo assim a tabela verdade será: 
 
A A A E B 
V V V 
V F F 
F V F 
F F F 
O operador OU retornará verdadeiro caso uma das duas proposições forem 
verdadeiras e sua tabela verdade será: 
 
A A A OU B 
V V V 
V F V 
F V V 
F F F 
O operador lógico NÃO simplesmente nega a proposição e sua tabela verdade será: 
 
A NÃO A 
V F 
F V 
 
 
 
 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 5
3.6 – Prioridades 
A tabela abaixo mostra todas as prioridades entre todos os operadores. 
 
Prioridade Operador 
1 Aritmético 
2 Relacional 
3 Não 
4 E 
5 OU 
 
 
EXERCÍCIOS: 
01) Dadas as variáveis numéricas X, Y e Z, contendo os valores 10, 2 e 5, a variável 
literal nome, contendo o caracter ‘joao’ e a variável lógica sim que contém o 
valor falso, obter o resultado de cada uma das expressões abaixo: 
a) X+Y>Z e nome=’maria’ 
b) Sim ou Y>=X 
c) Não sim e Z>=X ou não(nome=’joao’) 
d) Não(nome< > ‘joao’ ou X>Y e Z=X+Y) ou sim=falso e sim< > verdadeiro 
 
3.7 – Comando de Atribuição 
Para especificar que a uma variável será dado um valor, utiliza-se a operação de 
atribuição, cujo o símbolo será indicado por :=. 
Salário:=200 
Esse exemplo, indica que à variável Salário foi atribuído um valor de 200, ou que a 
variável Salário recebe o valor de 200. Como uma palavra na memória pode conter 
somente um valor por vez, o número 200 substitui qualquer outro valor armazenado. 
 
3.8 – Funções Embutidas 
Podemos usar nas expressões algumas funções comuns na matemática. A tabela 
abaixo mostra algumas funções e o resultado obtido por elas. 
 
Funções Resultado 
LOG(x) Logaritmo na base 10 de x 
LN(x) Logaritmo neperiano de x 
EXP(x) O número e elevado a x 
ABS(x) Valor absoluto de x 
TRUNC(x) Parte inteira de um número fracionária 
ARREND(x) Transforma, por arredondamento, um número fracionário em inteiro 
X DIV Y Fornece o quociente da divisão de x por y 
X MOD Y Fornece o resto da divisão de x por y 
 
 
 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 6
3.9 – Estrutura de Algoritmo 
Um algoritmo possui a seguinte estrutura, onde os comandos deverão ser 
executados, caso não hajauma indicação contrária, em uma sequência linear. 
Algoritmo Nome 
 Definição de variáveis 
 Início 
 Sequência de comandos 
Fim 
Onde: 
Algoritmo/Início/Fim Palavras chaves 
Nome É o nome dado ao algoritmo, não 
podendo coincidir com nomes de 
variáveis 
Definição de variáveis As declarações de variáveis serão 
feitas neste espaço. 
Sequência de comandos É o programa propriamente dito, 
com comandos sendo executados 
em sequência. 
 
4.0 – COMANDOS DE ENTRADA E SAÍDA 
As unidades de saída e entrada são dispositivos que possibilitam a 
comunicação entre o usuário e o computador. Os principais dispositivos de entrada de 
dados são teclado, mouse e scanner e os de saída são: monitor e impressora. 
É tarefa do programador determinar o momento de entrada e saída de 
dados, utilizando-se para tanto os comandos de entrada e saída. 
 
4.1 – Comando de Entrada de Dados 
O comando de entrada de dados é o Receba devendo ser usado da seguinte 
maneira: 
Ler (identificadores) 
Onde: 
Ler palavra chave. 
Identificadores nome das variáveis onde serão 
armazenados os dados separados por 
vírgula. 
O comando Ler provoca uma pausa na execução, fazendo com que o 
programa sofra uma interrupção até que o usuário entre com alguma informação. Este 
comando também pode ser considerado como um comando de atribuição, a diferença 
é que, neste caso, o programador não tem controle sobre os dados que serão 
armazenados. 
Sendo assim, o dado que o usuário digitar será armazenado na variável que 
estiver declarado no comando Ler. Quando mais de uma variável estiver declarado neste 
comando, será respeitado a sequência para armazenamento. 
Professora Ana Paula da Costa Cardoso- Lógica de Programação- 2015/02 7
Exemplo: Considere a seguinte linha de comando: 
Ler (n1, n2) 
Se o usuário digitou os números 10 e 20 respectivamente, estes serão 
armazenados na sequência, o número 10 na variável n1 e o 20 na variável n2. 
 
4.2 – Comando de Saída de Dados 
O comando de saída de dados é o Escrever, devendo ser usado da seguinte 
maneira: 
Escrever (identificadores) 
Onde: 
Escrever palavra chave. 
Identificadores são variáveis e/ou constantes que serão 
impressas nos periféricos de saída 
(monitor, impressora) separados por 
vírgula. 
Este comando imprime as constantes e os valores armazenados nas 
variáveis. 
Exemplo: Para as linhas de comando abaixo temos: 
x:=’Dia’ 
Escrever (‘Bom ’, x) 
Imprimira para o usuário a constante de caracter ‘Bom’ e o valor da variável 
x, que no caso possuí a constante ‘Dia’. Sendo assim, aparecerá no monitor ( periférico 
de saída padrão) Bom Dia. 
Exemplo: O algoritmo abaixo lê um nome digitado pelo usuário e em seguida 
imprime o mesmo. 
Algoritmo Teste 
 nome literal 
 Inicio 
 Escreva (‘digite seu nome’) 
 Ler (nome) 
 Escreva (‘Seu nome é:’, nome) 
Fim 
 
Exemplo: O algoritmo abaixo lê um nome e idade digitados pelo usuário e 
em seguida imprime os mesmos. 
Algoritmo Teste 
 nome literal 
 idade inteira 
 Inicio 
 Escreva (‘digite seu nome e sua idade’) 
 Ler (nome, idade) 
 Escreva (‘Seu nome é:’, nome, ‘e sua idade é’, idade) 
Fim

Outros materiais