Você está na página 1de 29

Introduo Programao

slides de Deise Sacol

LGICA DE PROGRAMAO:
Tcnica de encadear pensamentos para atingir
determinado objetivo
Necessria para desenvolver programas e sistemas, pois
permite definir a seqncia lgica para a soluo de um
problema

SEQNCIA LGICA:

? 1. 2. 3. !

Estes pensamentos podem ser descritos como uma


seqncia de instrues, que devem ser seguidas para
se cumprir uma determinada tarefa
Passos executados at se atingir um objetivo ou soluo
de um problema
2

Lgica de
programao

INSTRUO:
Cada um dos passos, cada uma das aes a tomar
(obedecendo a seqncia lgica) para ir resolvendo o
problema, ou para ir executando a tarefa
Em informtica, a informao que indica a um
computador uma operao elementar a executar
Ex.: somar, subtrair, comparar se maior, etc

Uma s instruo no resolve problemas


Executar um conjunto de instrues
Executar em uma seqncia lgica

Lgica de
programao

EXEMPLO: para fazer omelete


Instrues: quebrar ovos, bater ovos, pr sal, ligar
fogo, pr leo na frigideira, pr frigideira no fogo,
fritar ovos batidos, etc...

Quanto s instrues isoladas:


S quebrar ovos, ou s pr leo na frigideira, no
suficiente para cumprir a tarefa fazer omelete

Quanto seqncia lgica:


Se executarmos fritar ovos batidos antes de bater
ovos, ou pior, antes de quebrar ovos, no iremos
cumprir a tarefa fazer omelete
4

Lgica de
programao

ALGORITMO:
Seqncia finita de passos que levam execuo de
uma tarefa
Claro e preciso. Ex. somar dois nmeros:
Escrever primeiro nmero no retngulo A
Escrever segundo nmero no retngulo B
Somar o nmero do retngulo A com o nmero do retngulo B e
escrever o resultado no retngulo C

B
+

C
=

Exemplo de algoritmo
Quando uma dona de casa prepara um bolo, segue uma
receita, que nada mais do que um algoritmo em
que cada instruo um passo a ser seguido para
que o prato fique pronto com sucesso:
1. Bata 4 claras em neve
2. Adicione 2 xcaras de acar
3. Adicione 2 colheres de farinha de trigo, 4 gemas,
uma colher de fermento e duas colheres de
chocolate
4. Bata por 3 minutos
5. Unte uma assadeira com margarina e farinha de
trigo
6. Coloque o bolo para assar por 20minutos
6

Exemplo de algoritmo
Um motorista que necessita efetuar a troca de um pneu
furado segue uma rotina para realizar essa tarefa:
1. Verifica qual pneu est furado
2. Posiciona o macaco para levantar o carro
3. Pega o estepe
4. Solta os parafusos
5. Substitui o pneu furado
6. Recoloca os parafusos
7. Desce o carro
8. Guarda o macaco e o pneu furado

Lgica de
programao

PROGRAMA:
Algoritmo escrito em uma linguagem de computador
(linguagem de programao - C, Pascal, COBOL,
Fortran, Basic, Java, etc.)
Interpretado e executado por um computador
Interpretao rigorosa, exata, do computador
escrita do algoritmo na linguagem de prog. tem
que seguir regras mais rigorosas

Tipos de algoritmos

Lgica de
programao

PSEUDOCDIGO:
Facilita descrever o algoritmo antes de pass-lo para
uma linguagem de programao
Intermediria: linguagem natural linguagem de
programao
Pseudocdigo = cdigofalso

FLUXOGRAMA:
uma forma universal de representao, pois se utiliza
de figuras geomtricas para ilustrar passos a serem
seguidos para a resoluo de problemas
9

Lgica de
programao

PSEUDOCDIGO:
Descrio do algoritmo, menos rigorosa que na
linguagem de programao (cdigo fonte)
Fcil de entender e fcil de codificar depois
Independente da linguagem de programao
Simples e objetivo Tcnicas:

10

Lgica de
programao

FASES para desenvolver o algoritmo:


Determinar o problema, defin-lo bem
Dividir a soluo nas trs fases:
ENTRADA

PROCESSAMENTO

SADA

Exemplo:
Problema: calcular a mdia de quatro nmeros
Dados de entrada: os nmeros, N1, N2, N3 e N4
Processamento: somar os quatro nmeros e dividir a
soma por 4
N1 + N2 + N3 + N4
4
Dados de sada: a mdia final
11

Lgica de
programao

Algoritmo:

Receber o primeiro nmero


Receber o segundo nmero
Receber o terceiro nmero
Receber o quarto nmero
Somar todos os nmeros
Dividir a soma por 4
Mostrar o resultado da diviso

12

A. Escreva a seqncia de passos para que


uma pessoa abra um arquivo armazenado
em um DVD utilizando o Word do Windows
B. Escreva os passos necessrios para uma
pessoa efetuar um saque em um caixa
eletrnico

13

1) Identifique os dados de entrada, processamento e sada no


algoritmo abaixo
Receba cdigo da pea
Receba valor da pea
Receba Quantidade de peas
Calcule o valor total da pea (Quantidade * Valor da pea)
Mostre o cdigo da pea e seu valor total
2) Faa um algoritmo para Calcular o estoque mdio de uma
pea, sendo que
ESTOQUEMDIO = (QUANTIDADE MNIMA + QUANTIDADE
MXIMA) /2

14

TESTE DE MESA

Lgica de
programao

Todo algoritmo deve ser testado


Usar dados e resultados previamente
calculados, seguir precisamente as instrues
do algoritmo e verificar se o procedimento
est correto ou no
Exemplo: Fazer teste de mesa para o
algoritmo da mdia

15

Varivel

Lgica de
programao

Representa uma posio na memria, onde pode


ser armazenado um dado
Possui um nome e um valor
Durante a execuo do algoritmo, pode ter seu
valor alterado (seu valor pode variar)
Mudanas no valor das variveis:
Por entrada de dados (Ler N1)
Por atribuio (MEDIA = <um certo valor>)

16

Lgica de
programao

Exemplo SEQENCIAL:
Calcular a mdia de quatro nmeros
PSEUDOCDIGO:

VARIVEIS:

Ler N1
mais clareza no pseudocdigo
Ler N2
Ler N3
Ler N4
MEDIA = (N1+N2+N3+N4) / 4
Mostrar MEDIA

VARIVEL
17

Atribuio
Atribui o valor da direita varivel da esquerda
O valor pode ser uma constante, uma varivel ou
uma expresso
MEDIA = (N1+N2+N3+N4) / 4
(L-se media recebe N1+...)
Neste caso, estamos atribuindo o resultado da frmula
varivel mdia, ou seja, a varivel mdia est recebendo
como valor o resultado da frmula

Outros Exemplos:
a = 3;
a = x;

18

Operadores Aritmticos

Exemplos:
MEDIA = (N1+N2+N3+N4) / 4

19

3) Tendo como dados de entrada a altura de uma pessoa,


construa um algoritmo que calcule seu peso ideal, utilizando
a seguinte frmula:
peso ideal = (72.7*h) 58

4) Faca um algoritmo que receba como entrada uma


determinada temperatura em graus Celsius e mostre a
temperatura em fahrenheit
OBS: Fahrenheit = (9/5)*(Celsius) + 32

5) Tendo como entrada o total vendido por um funcionrio no


ms de abril, faa um algoritmo que mostres a sua comisso
e salrio bruto neste ms, sabendo que o seu salrio base
R$1.200,00 e sua comisso de 10% sobre o total vendido.
20

Operadores

Lgica de
programao

Usados para incrementar, decrementar, comparar e


avaliar dados, que so operaes bsicas em
processamento de dados.
Tipos:
Aritmticos (+, -, *, /, ** ou ^)
Resultados numricos

Relacionais (>, <, >=, <=, =, <> ou #)


Resultados lgicos (V ou F)

Lgicos (e, ou, no)


Combinam resultados lgicos

Precedncia dos operadores


21

Lgica de
programao

Operadores relacionais so muito usados quando


temos que tomar decises nos algoritmos. Com
eles fazemos testes, comparaes, que resultam
em valores lgicos (verdadeiro ou falso):
Exemplo:
tendo duas variveis, A = 5 e B = 3:

22

6) Tendo as variveis SALARIO, IR e SALLIQ, e considerando os


valores abaixo. Informe se as expresses so verdadeiras ou
falsas.

7) Sabendo que A=3, B=7 e C=4, informe se as expresses abaixo


so verdadeiras ou falsas.
a) (A+C) > B
( )
b) B >= (A + 2) ( )
c) C = (B A) ( )
d) (B + A) <= C ( )
e) (C+A) > B
( )
23

Lgica de
programao

Operadores lgicos combinam resultados lgicos,


gerando novos valores lgicos (verdadeiro ou
falso). A tabela-verdade abaixo mostra todos os
valores possveis de se obter com oper. lgicos:

T = Verdad.
F = Falso
AND = E
OR = OU
NOT = NO
24

Lgica de
programao

Combinando operadores relacionais e operadores lgicos criamos operaes lgicas, que produziro resultados lgicos (verdadeiro ou falso).
Por exemplo, se A = 5, B = 8 e C = 1:

(A = B) E (B > C)
(A <> B) OU (B < C)
NO (A > B)
(A < B) E (B > C)
(A >= B) OU (B = C)
NO (A <= B)

falso (f e v)
verdadeiro (v ou f)
verdadeiro (no f)
verdadeiro (v e v)
falso (f ou f)
falso (no v)

So usadas em decises nos algoritmos...


25

8. Considere a seguinte atribuio de valores para as


variveis: A=3, B=4, C=8. Avalie as expresses a
seguir indicando o resultado final: verdadeiro ou falso.
1)
2)
3)
4)
5)
6)
7)
8)
9)

A
A
A
A
A
B
A
A
C

>3EC=8
<> 2 OU B <= 5
= 3 OU B >= 2 E C = 8
= 3 E NO B <= 4 E C = 8
<> 8 OU B = 4 E C > 2
> A E C <> A
> B OU B < 5
<> B E B = C
> 2 OU A < B

10) A > B OU B > A E C <> B

(
(
(
(
(
(
(
(
(

)
)
)
)
)
)
)
)
)

( )
26

9) Sabendo que A=5, B=4 e C=3 e D=6, informe se as


expresses abaixo so verdadeiras ou falsas.
a) (A > C) AND (C <= D)
( )
b) (A+B) > 10 OR (A+B) = (C+D) ( )
c) (A>=C) AND (D >= C)
( )

27

10) Sabe-se que o uso incorreto da precedncia de


operadores ocasiona erros. Pensando nisso,
determine o resultado das expresses a seguir
(valores: A= 8, B = 5, C = -4, D = 2)
a) Delta = B2 4 * A * C
b) J = Hoje <> HOJE
c) Media = (A + B + C + D) / 4
d) Media = A + B + C + D / 4
e) Resultado = A + B 10 * C
f) Y = A > 8 E B + C > D
g) Y = A > 3 * 2 OU B + C <> D
28

Exerccios

Ler 2 nmeros, efetuar as 4 operaes matemticas e mostrar os


resultados.

Duas variveis (A e B) possuem valores distintos (A:=5 e B:= 10), Crie


um algoritmo que armazene esses dois valores nessas duas variveis, e
efetue a troca dos valores de forma que a varivel A passe a possuir o
valor da varivel B e que a varivel B passe a possuir o valor da
varivel A. Por fim, apresentar os valores trocado;

O custo ao consumidor de um carro novo, a soma do custo de fbrica


com a percentagem do revendedor e com o custo dos impostos
(aplicados ao custo de fbrica). Supondo que a percentagem do
revendedor seja de 25% do custo de fbrica e que os impostos custam
45 % do custo de fbrica, faa um algoritmo que leia o valor de custo
de fbrica e determine o preo final do automvel (custo ao
consumidor).

29