Beruflich Dokumente
Kultur Dokumente
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 O valor 7 armazenado na varivel N N.
Operadores algbricos
Operador Soma Subtrao Multiplicao Diviso Potenciao Raiz quadrada Resultado inteiro da diviso Resto da diviso
Prioridade de execuo 3 3 2 2 1 1 1 1
Funes matemticas
Nome Cosseno Seno Tangente Exponencial ex Logaritmo neperiano ln(x) Mdulo ou valor absoluto
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
e que armazene o resultado na varivel A. Como devemos escrever essa expresso? a) SQR(2+SQR(3)) b) A := SQR2+SQR(3) c) A := SQR(2+3) d) A := SQR(2+SQR(3)) e) SQR(2+SQR(3)) := A
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
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 M > 12 V
Fim
Interatividade
O que faz o fluxograma abaixo?
Incio a) D o triplo de um nmero, se o triplo dele for maior que 20. b) ) D o dobro de um nmero, , se o dobro dele for maior que 20. c) D o triplo de um nmero, se o dobro dele for maior que 20. d) D o t triplo i l de d um nmero, se o dobro dele for menor que 20. e) D o triplo de um nmero.
Leia (N) F
condio
instruo2
instruo1
N F N MOD 2 = 0 V
mpar Fim
par
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 N MOD 17 = 0 V
mltiplo mltiplo
Exemplo: mltiplo de 17
Simulao para N=34: N 34 N MOD 17 0 N MOD 17=0? V sada 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!