ENTRADA E SAÍDA DE DADOS
REGRAS PARA ESCREVER ALGORITMOS EM
PORTUGOL
• Incluir comentários pelo menos nas linhas mais importantes do programa;
• Usar nomes significativos para as variáveis e constantes, que possam
identificar o conteúdo;
• Grifar as palavras chaves do Portugol;
• Alinhar os comandos facilita a legibilidade do algoritmo e reduz a possibilidade
de erros.
EXEMPLO ALGORITMO
Inicio algoritmo “Exemplo”;
variaveis
idade: inteiro;
nome: caractere;
inicio
escreva “Informe seu nome: “;
leia nome;
escreva “Informe sua idade: “;
leia idade;
escreva “Você se chama”, nome, “e
possui”, idade, “anos!”;
fim
Fim algoritmo
ESTRUTURAS CONDICIONAIS
As estruturas condicionais são utilizadas
quando há uma condição que desvia o
fluxo do programas para diferentes partes,
dependendo do fato de a condição ser
verdadeira ou falsa. Na condição das
estruturas condicionais, utilizam-se os
operadores relacionais (<, >, =, <=, >=, <>)
para as comparações, observando suas
características particulares
• As estruturas condicionais dividem-se em
estrutura SE e estrutura ESCOLHA/CASO.
• A estrutura condicional SE é a estrutura mais
flexível, podendo acontecer de várias formas,
dependendo do fato de a condição ser
satisfeita ou não e do fato de cada desvio do
fluxo poder ou não ter outros comandos antes
da finalização da estrutura.
• a) Estrutura Condicional SE Simples
• As instruções contidas dentro do laço
condicional SE serão executadas somente se a
condição retornar um resultado verdadeiro
EXTRUTURA DE CONTROLE
As estruturas condicionais dividem-se em estrutura SE e estrutura
ESCOLHA/CASO.
A estrutura condicional SE é a estrutura mais flexível, podendo acontecer
de várias formas, dependendo do fato de a condição ser satisfeita ou
não e do fato de cada desvio do fluxo poder ou não ter outros comandos
antes da finalização da estrutura.
a) Estrutura Condicional SE Simples
As instruções contidas dentro do laço condicional SE serão executadas
somente se a condição retornar um resultado verdadeiro
se (A = 1) então
escreva “Um”;
fim_se;
se (A = 2) então
escreva “Dois”;
fim_se;
se (A = 3) então
escreva “Três”;
fim_se.

Uma estrutura condicional tem como objetivo
desviar o fluxo de execução de um programa
baseada em uma condição.
Se (Condição) então
comando;


Se (Condição) então
{
comando1;
comando2;
...
comando n;
}
Uma condição é uma expressão que retorne
um valor booleano, verdadeiro ou falso
Exemplos

Só é executado um dos dois blocos de
comandos, ou o bloco do então, ou o bloco
do senão
Se (Condição) então
{
comando1;
comando2;
...
comando n;
}
Senão
{
comando1;
comando2;
...
comando n;
}

Podemos ter um conjunto de estruturas
condicionais aninhadas, da seguinte maneira:
Se (Condição) então
comando1;
Senão
Se(Condição 2) então
{
comando1;
comando 2;
}
Senão
{
...
}
se (A = 1) então
escreva “Um”;
fim_se;
se (A = 2) então
escreva “Dois”;
fim_se;
se (A = 3) então
escreva “Três”;
fim_se.
Inicio algoritmo “ExMedia”;
variáveis
nome: caractere;
nota_1, nota_2, media: real;
contador: inteiro;
início
media ← 0;
contador ← 1;
enquanto (contador<=30) faça
escreva (“Nome do aluno: “);
leia(nome);
escreva (“Primeira nota: “);
leia(nota_1);
escreva(“Segunda nota: “);
leia(nota_2);
media ← (nota_1 + nota_2)/2;
se (media<=3,0) então
escreva(nome, media, ”Rep.”);
senão
se(media>=6,0) então
escreva(nome, media, “Apr.”);
senão
escreva(nome, media, “Rec.”);
fim se;
fim se;
contador ← contador + 1;
fim enquanto;
Fim.
Estrutura de Repetição
início
inteiro: contador, valor;
real: soma;
contador <-1;
soma <-0;
repita
imprima (“Digite um valor”);
leia (valor);
soma <-soma + valor;
contador <-contador +1
até contador > 10;
soma <-soma/10;
imprima (soma);
fim.
Estrutura de Repetição
Sem estrutura de repetição
início
escreva “1”
escreva “2”
escreva “3”
escreva “4”
escreva “5”
escreva “6”
escreva “7”
escreva “8”
escreva “9”
escreva “10”
fim
PARA
Com estrutura de repetição PARA
início
declare Cont : inteiro
para Cont ← 1 até 10 passo 1 faça
escreva Cont
fim para
fim
Enquanto
Com estrutura de repetição ENQUANTO
início
declare Cont : inteiro
Cont ← 1
enquanto (Cont <= 10) faça
escreva Cont
Cont ← Cont + 1
fim enquanto
fim
Repita
Com estrutura de repetição REPITA1
início
declare Cont : inteiro
Cont ← 1
repita
escreva Cont
Cont ← Cont + 1
enquanto (Cont <= 10)
fim
Estrutura de Repetição
Para, Enquanto e Repita
Vimos acima que existem três estruturas de repetição diferentes, a
estrutura PARA, a
estrutura ENQUANTO e a estrutura REPITA. Até aí tudo bem, mas,
quando utilizarmos cada
uma delas?
Vejamos!
Estrutura PARA
Deverá ser utilizada quando se sabe previamente o número de repetições
que deverão
ser executadas. Exemplo:
Imprima todos os números pares no intervalo de 1 a 30.
Para este problema, já foi determinado o número de vezes que o lupe será
executado, ou
seja, 30 vezes.
Resolução do problema:
início
declare Cont : inteiro
para Cont ← 1 até 30 passo 1 faça
se (Cont mod 2 = 0) então /* Testa se Cont possui valor par. */
escreva Cont
fim para
fim
Estrutura REPITA
Deverá ser utilizada quando o lupe tem que ser executado no mínimo uma
vez e, a
execução do lupe mais de uma vez estará sujeita à condição imposta no
final. Exemplo:
Imprima o somatório de todos os números inteiros no intervalo de 0 (zero)
a N. Onde N deve
ser um número inteiro maior ou igual a zero e será escolhido pelo usuário.
Para este problema, podemos considerar que, no mínimo uma vez o lupe
deverá ser feito,
pois, o menor número que o usuário poderá digitar é o 0 (zero).
Estrutura REPITA
Resolução do problema:
início
declare N, Total, Cont : inteiro
Total ← 0
escreva “Digite um número inteiro maior ou igual a zero: ”
leia N
Cont ← 0
repita
Total ← Total + Cont
Cont ← Cont + 1
enquanto (Cont <= N)
escreva “O Somatório do intervalo de 0 a N é: ”, Total
fim
Estrutura REPITA
Resolução do problema:
início
declare N, Total, Cont : inteiro
Total ← 0
escreva “Digite um número inteiro maior ou igual a zero: ”
leia N
Cont ← 0
repita
Total ← Total + Cont
Cont ← Cont + 1
enquanto (Cont <= N)
escreva “O Somatório do intervalo de 0 a N é: ”, Total
fim
Estrutura ENQUANTO
Estrutura ENQUANTO
Deverá ser utilizada quando, antes de se executar o lupe, for necessário
testar uma
condição.
Imprima o resultado da operação XY (leia-se: X elevado a Y). Onde X é a
base e o primeiro
número que o usuário digitará, e Y é o expoente ou potência e será o
segundo número a ser
digitado. Ambos inteiros.
Para este problema deveremos fazer o teste da condição antes de
entrarmos no lupe.
Estrutura ENQUANTO
Resolução do problema:
início
declare X, Y, Total : inteiro
escreva “Digite o valor da base X: ”
leia X
escreva “Digite o valor do expoente Y: ”
leia Y
Total ← 1
enquanto (Y > 0) faça
Total ← Total * X
Y←Y-1
fim enquanto
escreva “Total de X elevado a Y é: ”, Total
fim
Download

Portugol - Daniela Pires Professora e Programadora Web