Escolar Documentos
Profissional Documentos
Cultura Documentos
PROGRAMAO DE
COMPUTADORES
Plano de ensino
Objetivo: desenvolver o raciocnio lgico
por meio da soluo de problemas
prticos sob a forma de algoritmos.
Contedo programtico:
Variveis.
Operadores aritmticos e lgicos.
Algoritmos e fluxogramas.
Desvio condicional simples.
Desvio condicional composto.
p
Estruturas de repetio.
Bibliografia bsica
CARBONI, I. F. Lgica de programao.
1. ed. So Paulo: Thomson, 2003.
FORBELLONE, A. L. Lgica de
programao. 3. ed. So Paulo: Prentice
Hall Brasil, 2005.
MANZANO, J. A. N. G.; OLIVEIRA, J. F.
Algoritmos: lgica para desenvolvimento
de programao. 22. ed. So Paulo:
rica, 2009.
Variveis
Endereo na memria do computador.
Armazena um valor ou caractere.
Precisa ter um nome.
Tipos
Booleana: V (verdadeiro) ou F (falso).
Inteiro: 1, ou 2, ou -15.
Real: 3, 14, ou 152, 444, ou -3.
Char: A, B.
String:
St i
ABC,
ABC ou Maria.
M i
Variveis
Nome: combinao de letras e nmeros,
nunca iniciado por nmeros.
Declarao:
VAR
L N: real.
L,
real
Comandos de atribuio:
N=7
N:=7
N7
Operadores algbricos
Smbolo
Prioridade de
execuo
Soma
Subtrao
Multiplicao
Diviso
Potenciao
Raiz quadrada
SQR
Resultado inteiro
da diviso
DIV
Resto da diviso
MOD
Operador
Funes matemticas
Nome
Funo
Cosseno
COS(x)
Seno
SEN(x)
( )
Tangente
TAN(x)
Exponencial ex
EXP(x)
LN(x)
ABS(x)
Funes matemticas
Importante: as funes trigonomtricas
so calculadas para ngulos em
radianos.
Converso de um ngulo de graus para
radianos: multiplico o ngulo por e
divido por 180.
Exemplo
Diviso:
11 / 2 = 5,5
Resultado inteiro da diviso:
11 DIV 2 = 5
Resto da diviso:
11 MOD 2 = 1
pois
Interatividade
Desejamos elaborar um algoritmo que
calcule a expresso
Algoritmos sequenciais
Procedimento em etapas.
Sem ramificaes estrutura linear.
Um mesmo problema pode ter diversos
algoritmos.
Algoritmos sequenciais
Exemplo: troca do pneu de um carro.
Sinalizao.
Erguer o carro.
Tirar pneu furado.
Colocar novo pneu.
Abaixar carro.
Guardar pneu danificado.
Remover sinalizao.
Algoritmos formas
Linguagem natural (procedimento).
Fluxograma (esquema).
Portugus estruturado
(pseudolinguagem).
Portugus estruturado
Portugus estruturado
(pseudolinguagem).
Estrutura:
Nome do programa
Declarao das variveis
Incio
Comandos
Fim.
Sempre encerro uma ideia
ideia com
ponto e vrgula (;) no final da linha.
Encerro o programa com ponto final
(.).
Fluxograma smbolos
Incio ou fim
Entrada de dados
Sada de dados
Fluxograma smbolos
Clculo
Condicional
Fluxo de dados
Leia (N)
Dobro = 2*N
Dobro
Fim
Interatividade
Qual das alternativas completa corretamente o
programa em portugus estruturado a seguir?
Programa rea_quadrado
VAR
lado, rea: real;
Incio
(?)
rea := lado^2;
Escreva (rea);
Fim.
a) Leia (lado);
b) Escreva (lado);
c) Defina (lado);
d) Leia (rea);
e) Escreva (rea);
Desvios condicionais
Tomada de deciso.
Desvio do fluxo de um programa.
Envolve uma condio:
Expresso lgica que governa a
tomada de deciso
deciso.
Exemplo: MS>=7
Se verdadeira aluno aprovado.
Se falsa aluno de exame.
condio
instruo 1
instruo 2
Exemplo: aprovao
Considere o caso no qual um aluno precise
atingir 15 pontos para aprovao em uma
matria. Os pontos so a combinao de
notas de provas e trabalhos. Faa um
programa que, dada a pontuao de um
al no diga se esse aluno
aluno,
al no foi aprovado.
apro ado
Entrada: pontuao do aluno.
Sada: se a pontuao for maior que 15,
aprovado.
Exemplo: aprovao
Programa aprovao
VAR
pontos: real;
Incio
Escreva (entre com a pontuao);
Leia (pontos);
(pontos)
Se (pontos >= 15) ento
Escreva (aprovado);
Fim_Se;
Fim.
Exemplo: aprovao
Incio
Entre com a pontuao
P t
Pontos
F
V
Pontos >= 15
aprovado
Fim
Exemplo: ms de nascimento
Como mtodo de segurana para acesso de
conta bancria pela internet, um banco
pede o ms de nascimento do correntista.
Faa um programa em portugus
estruturado e um fluxograma que emitam
um
m alerta em caso de ms s
superior
perior ao ms
12 (dezembro).
Entrada: ms de nascimento.
Sada: se o ms for maior que 12,
mensagem de erro.
Exemplo: ms de nascimento
Programa segurana
VAR
M: inteiro;
Incio
Escreva (ms de nascimento:);
Leia (M);
(M)
Se (M > 12) ento
Escreva (nmero invlido);
Fim_Se;
Fim.
Exemplo: ms de nascimento
Incio
ms de nascimento
M
F
V
M > 12
nmero
iinvlido
lid
Fim
Interatividade
O que faz o fluxograma abaixo?
Incio
a) D o triplo de um nmero,
se o triplo dele for maior
que 20.
Leia (N)
2*N > 20
c) D o triplo de um nmero,
se o dobro dele for maior
que 20.
V
(3* )
Escreva (3*N)
Fim
d) D o ttriplo
i l de
d um nmero,
instruo2
condio
instruo1
Incio
Entre com um nmero
N
F
V
N MOD 2 = 0
par
mpar
Fim
FALSO
Pois 11 MOD 2 = 1
(11 DIV 2 = 5 com resto 1)
mpar
Exemplo: mltiplo de 17
Elabore um programa que, dado um
nmero, diga se ele mltiplo de 17.
Entrada: nmero N.
N mltiplo de 17 se N MOD 17 = 0.
(A diviso de N por 17 exata
exata, ou seja
seja, o
resto da diviso zero)
Exemplo: mltiplo de 17
Programa mltiplo_de_17
VAR
N: inteiro;
Incio
Escreva (Entre com um nmero:);
Leia (N);
(N)
Se (N MOD 17 = 0) ento
Escreva ( mltiplo);
Seno
Escreva (no mltiplo);
Fim Se;
Fim_Se;
Fim.
Exemplo: mltiplo de 17
Incio
Entre com um nmero
N
F
V
N MOD 17 = 0
no
no mltiplo
mltiplo
mltiplo
mltiplo
Fim
Exemplo: mltiplo de 17
Simulao para N=34:
N
N MOD 17
N MOD 17=0?
sada
34
mltiplo
N MOD 17
N MOD 17=0?
sada
35
no
mltiplo
Interatividade
Qual a sada do programa abaixo para N=8?
Programa teste
VAR
N: inteiro;
Incio
( );
Leia (N);
Se (N>8) ento
Escreva (2*N);
Seno
Escreva (N/2);
Fim_Se;
Fim.
Fim
a) 2
b) 4
c) 8
d) 12
e) 16
AT A PRXIMA!