Vous êtes sur la page 1sur 42

Fundamentos de Programao e

Algoritmos

Prof: Marco Antonio

Fundamentos de Programao e
Algoritmos

Plano de Ensino
Unidade I - Algoritmo
1.1 Conceitos e Construo
1.2 Tipos de Representao de Algoritmos
1.3 Linguagem Algortmica e estrutura bsica de um
algoritmo

Fundamentos de Programao e
Algoritmos

Plano de Ensino
Unidade II - Linguagem Algoritmica
2.1 Estruturas de Controle do Algoritmo (Seqncias, condies).
2.2 Conceitos de Variveis e Constantes.
2.3 Tipos Primitivos de Dados
2.4 Expresses numricas, relacionais e lgicas
2.5 Entrada e sada

Fundamentos de Programao e
Algoritmos

Plano de Ensino
Unidade III - Programao Estruturada
3.1 Algoritmo Estruturado.
3.2 Estruturas de Controle (seleo).
3.3 Estruturas de Controle (repetio).

Fundamentos de Programao e
Algoritmos

Plano de Ensino
Unidade IV - Tipos Estruturados
4.1 Vetores
4.2 Matrizes
4.3 Registros
4.4 Vetores de Registros
4.5 Registros com Vetores
4.6 Vetores com Registros de Vetores

Fundamentos de Programao e
Algoritmos

Plano de Ensino
Unidade V - Modularizao de Algoritmos
5.1 Procedimentos
5.2 Funes
5.3 Parmetros
5.4 Biblioteca de Cdigo

Fundamentos de Programao e
Algoritmos
Algoritmos - Definio
"Descrio de um conjunto padronizado de aes primitivas
bem definidas e executveis, que sequencia a realizao de
uma tarefa."
"Seqncia finita de aes que descrevem como um problema
pode ser resolvido."

Fundamentos de Programao e
Algoritmos
Existem qualidades que devem ser buscadas em qualquer
algoritmo. So elas:
1- Perfeitamente definido
2- No ambguo
3- Eficaz (Consegue resolver o problema em qualquer
situao. Toda situao que possa alterar o comportamento
do algoritmo devem ser especificadas e tratadas.
4- Eficiente (Resolve o problema com o mnimo de
recursos, (memria principal e auxiliar), tempo de
processamento, etc.

Fundamentos de Programao e
Algoritmos
Tipos de Dados
Os dados so representados pelas informaes a
serem tratadas (processadas) por um computador.
Essas informaes esto caracterizadas por trs tipos
de dados: Dados numricos(inteiros e reais), dados
caracteres e dados lgicos.

Fundamentos de Programao e
Algoritmos
Tipos Inteiros
So caracterizados como tipos inteiros os dados
numricos positivos ou negativos, excluindo-se destes
qualquer nmero fracionrio.
Tipos Reais
So caracterizados como tipos reais os dados
numricos positivos, negativos e nmeros fracionrios.

Fundamentos de Programao e
Algoritmos
Tipos Caracteres
So caracterizados como tipos caracteres as
seqncias contendo letras, nmeros e smbolos
especiais. Uma seqncia de caracteres deve ser
indicada entre aspas. Esse tipo de dados tambm
conhecido como: alfanumrico, string, literal ou cadeia.
Ex:
"Programao", "Rua A, 53 apto 1", "Fone:9990-9988".

Fundamentos de Programao e
Algoritmos
Tipos Lgicos
So caracterizados como tipos lgicos os dados com
valores verdadeiro e falso, sendo que esse tipo de
dado poder representar apenas um dos dois valores.
Devero ser apresentados e delimitados pelo caractere
ponto. Ex:
.Falso., .F. e .N.
.Verdadeiro., .V. e .S.

Fundamentos de Programao e
Algoritmos
Variveis
Varivel tudo aquilo que sujeito a variaes, que
incerto, instvel ou inconstante. recomendvel que os
nomes das variveis sejam os mais significativos
possveis, isto , que reflitam, da melhor maneira
possvel, a natureza dos valores que nelas esto sendo
armazenados.

Fundamentos de Programao e
Algoritmos
Variveis
Exemplo:
Varivel

Contedo

valor

23

nome

Danilo

salrio

2.500

fornecedor

skol comrcio de bebidas

Fundamentos de Programao e
Algoritmos
Regras para utilizao das variveis
- Nomes de uma varivel podero ser atribudos com um ou mais
caractere;
- O primeiro caractere do nome de uma varivel no poder ser, em
hiptese alguma, um nmero, sempre dever ser uma letra;
- O nome de uma varivel no poder possuir espaos em branco;
- No poder ser nome de uma varivel uma palavra reservada a
uma instruo de programa;
- No podero ser utilizados outros caracteres a no ser letras e
nmeros.

Fundamentos de Programao e
Algoritmos
Permitidos

No permitidos

5b

nota

e)13

matricula

a;b

x5

x~y

a32b

nota.1

f1g3h5

b*d

Fundamentos de Programao e
Algoritmos
Atribuio
A atribuio o principal exemplo de uma operao
geral. Esta operao permite que o contedo de uma
varivel seja alterado. O formato desta operao :
X <- Y

Fundamentos de Programao e
Algoritmos
As operaes principais aplicveis a nmeros so:
Operao

Smbolo

Prioridade

Soma

Subtrao

Multiplicao

Diviso

Exponenciao

** ou ^ ou

Fundamentos de Programao e
Algoritmos

DIV - Diviso entre dois nmeros inteiros com resultado


inteiro.
MOD - Resto inteiro da diviso de dois nmeros
inteiros.

Fundamentos de Programao e
Algoritmos
As operaes de comparao entre dois valores de
mesmo tipo so:
= igual
> maior
< menor
<> diferente
>= maior ou igual
<= menor ou igual

Fundamentos de Programao e
Algoritmos
As operaes principais para o tipo lgico:
No - Troca o estado
Ou - Se algum for verdadeiro, ento verdadeiro
E - Se algum for falso, ento falso
Ex:

A ou B

AeB

no A

Fundamentos de Programao e
Algoritmos
Constantes
Constante tudo aquilo que fixo ou estvel. O valor de
uma constante nunca muda.
Ex: Resultado <- entrada * 1.23

Fundamentos de Programao e
Algoritmos
Estrutura bsica de um algoritmo
- Entrada dos dados
- Processamento dos dados
- Sada dos dados

Fundamentos de Programao e
Algoritmos
Exerccios
1) Fazer um algoritmo que leia dois valores, efetue a soma dos dois e
mostre o resultado.
Algoritmo exemplo
declare
a,b,soma de inteiro
inicio
escreva "Digite dois valores"
leia a
leia b
soma <- a+b
escreva "O valor da soma =",soma
fim

Fundamentos de Programao e
Algoritmos
Exerccios
2) Faa um algoritmo que calcule a rea de um tringulo. Frmula :
area = (base * altura) / 2.
Algoritmo exemplo2
declare
area,base,altura de real
inicio
escreva "Digite a base e a altura"
leia base
leia altura
area <- (base * altura)/2
escreva "O valor da rea =",area
fim

Fundamentos de Programao e
Algoritmos

Exerccios
3) Faa um algoritmo que calcule a rea de um crculo.
Frmula: area <- * r.
4) Leia dois nmeros, calcule sua mdia e imprima.
5) Leia dois nmeros inteiros, imprima o quociente e o resto
da diviso inteira dos dois nmeros.

Fundamentos de Programao e
Algoritmos

Estruturas de Controle - A tomada de decises


Desvio Condicional
Executa uma seqncia de acordo com o resultado
de uma comparao (condio). Pode se apresentar
de duas maneiras:
Desvio Condicional Simples
Se uma condio for verdadeira, executa uma
seqncia.

Fundamentos de Programao e
Algoritmos

Sintaxe:
se (condio) ento
<instruo para condio verdadeira>
fim_se
Exemplo:
se (conta > 10) ento
conta <- conta + 1
fim_se

Fundamentos de Programao e
Algoritmos
Exemplo:
Algoritmo exemplo
declare
a,b,soma de inteiro
inicio
escreva "Entre com dois valores"
leia a
leia b
soma <- a + b
se (soma > 10) entao
escreva soma
fim_se
fim

Fundamentos de Programao e
Algoritmos

Desvio Condicional Composto


Se uma condio for verdadeira, executa uma
seqncia, seno, executa outra seqncia.
Sintaxe:
se (condio) entao
<instruo para condio verdadeira>
senao
<instruo para condio falsa>
fim_se

Fundamentos de Programao e
Algoritmos
Exemplo:
Algoritmo imprima
declare
a,b,soma,r de real
inicio
escreva "Entre com dois valores"
leia a
leia b
soma <- a + b
se ( soma > 10) entao
r <- soma + 5
senao
r <- soma - 7
fim_se
escreva "O resultado =",r
fim

Fundamentos de Programao e
Algoritmos

Desvio Condicional Encadeado


Significa utilizar uma condio dentro de outra
condio. Este tipo de estrutura poder possuir
diversos nveis de condio, sendo chamadas de
aninhamentos ou encadeamentos.

Fundamentos de Programao e
Algoritmos

Sintaxe:
se (condio1) entao
<instruo para condio1 verdadeira>
senao
se (condio2) entao
<instruo para condio2 verdadeira porm
condio1 falsa>
senao
<instruo para condio1 e condio2 falsa>
fim_se
fim_se

Fundamentos de Programao e
Algoritmos

Exemplo:
Algoritmo reajuste
declare
salario,novo_salario de real
inicio
escreva "Digite o salrio de um funcionrio"
leia salario
se (salario < 500) entao
novo_salario <- salario * 1.15
senao
se (salario <= 1000) entao
novo_salario <- salario * 1.10
senao
novo_salario <- salario * 1.05
fim_se
fim_se
escreva "O novo salrio =",novo_salario
fim

Fundamentos de Programao e
Algoritmos

Exerccios Desvio
1) Leia dois nmeros e mostre qual o maior deles.
2) Leia um nmero inteiro e imprima "par" ou "mpar"
conforme o caso.
3) Ler dois valores numricos e apresentar a
diferena do maior pelo menor.
4) Ler dois nmeros e indique se so iguais ou, se
diferentes, mostre o maior e o menor. (nesta ordem).

Fundamentos de Programao e
Algoritmos
Operadores Lgicos
Operador lgico: e
Se alguma condio for falsa, ento falsa.
Ex: se (condio1) e (condio2) entao
<instrues executadas se condio1 e condio2
verdadeiras>
senao
<instruo executada se uma das condies for
falsa>
fim_se

Fundamentos de Programao e
Algoritmos
Operadores Lgicos
Exemplo:
algoritmo operador
declare
n de inteiro
inicio
escreva "Digite um nmero"
leia n
se (n >= 20) e (n <= 90) entao
escreva "O nmero est na faixa de 20 a 90"
senao
escreva "O nmero est fora da faixa de 20 e 90"
fim_se
fim

Fundamentos de Programao e
Algoritmos
Operadores Lgicos
Operador lgico: ou
Se alguma condio for verdadeira, ento verdadeira.
Ex: se (condio1) ou (condio2) entao
<instrues executadas se condio1 verdadeira ou
se condio2 verdadeira>
senao
<instruo executada se as duas condies forem
falsas>
fim_se

Fundamentos de Programao e
Algoritmos
Operadores Lgicos
Exemplo:
algoritmo operador
declare
sexo de caractere
inicio
escreva "Digite o seu sexo"
leia sexo
se (sexo = "masculino") ou (sexo = "feminino") entao
escreva "O seu sexo valido"
senao
escreva "O seu sexo invlido"
fim_se
fim

Fundamentos de Programao e
Algoritmos
Exerccios
1) Efetuar a leitura de um valor inteiro positivo ou negativo
e apresentar o nmero lido como sendo um valor positivo.
2) Efetuar a leitura de quatro nmeros inteiros e
apresentar os nmeros que so divisveis por 2 e 3.
3) Elaborar um programa que efetue a leitura de um
determinado valor e apresent-lo caso no seja maior
que trs.

Fundamentos de Programao e
Algoritmos

Repetio com teste lgico no incio do looping


Executa uma seqncia, nenhuma, uma ou vrias
vezes, dependendo de uma condio.
sintaxe:
enquanto (condio) faa
<instruo para condio verdadeira>
fim_enquanto

Fundamentos de Programao e
Algoritmos
Exemplo:
algoritmo fatorial
declare
fat,cont de inteiro
inicio
fat <- 1
cont <- 1
enquanto (cont <= 5) faca
fat <- fat * cont
cont <- cont + 1
fim_enquanto
escreva "O fatorial do nmero 5 =",fat
fim

Centres d'intérêt liés