Escolar Documentos
Profissional Documentos
Cultura Documentos
Prático de Portugol
Guia Prático de
Portugol
Parte 2
Por Hernany Eduardo
Introdução
Bem galera, vou tentar nesta parte 2 do Guia Prático esclarecer as novas funções que o Jubran nos ensinou
nestes últimos dias. Basicamente estudaremos sobre, laços, que nada mais são de rotinas de repetição de
instruções, e também estudaremos sobre duas funções MOD E DIV, além da função escolha e vetores.
FUNÇÃO MOD
Está função retorna o valor do resto de uma divisão.
Sintaxe:
5 MOD 2 = 1
6 MOD 3 = 0
Vejamos a aplicação do MOD num algoritmo para descobrir se determinado número é par ou impar.
INICIO
INTEIRO : NUM;
LEIA (NUM);
SE (NUM MOD 2=0) ENTAO
ESCREVA (“PAR”);
SENAO
ESCREVA (“IMPAR”);
FIMSE
FIM
FUNÇÃO DIV
Está função retorna valor inteiro do quociente de uma divisão.
Sintaxe:
6 DIV 3 = 2
16 DIV 4 = 4
Vejamos a aplicação do DIV num algoritmo para descobrir o quociente de uma divisão por 2 e informa-lo na tela
para o usuário.
INICIO
INTEIRO : NUM;
LEIA (NUM);
ESCREVA (NUM DIV 2);
FIM
INICIO
INTEIRO: NUM1,NUM2,NUM3, NUM4,NUM5,NUM6, NUM7, NUM8,NUM9,NUM10;
LEIA (NUM1,NUM2,NUM3,NUM4,NUM5,NUM6, NUM7, NUM8,NUM9,NUM10);
ESCREVA (NUM1+NUM2+NUM3+ NUM4+NUM5+NUM6+NUM7+NUM8+NUM9+NUM10);
FIM
MAS QUE MUNDAREL DE VARIAVEIS QUE TIVE QUE CRIAR NAO É MESMO!?
E SEM CONTAR O GRANDE ESPAÇO DE MEMÓRIA QUE ESTOU RESERVANDO PARA O PROGRAMA!
Para o bem geral da nação dos programadores, nossos problemas acabaram.
Chegou o revolucionário LAÇO.
LAÇO nada mais é que uma “FUNCAO SE” , mais sofisticada, que de forma prática irá repetir N vezes determinada
instrução.
Nos foi mostrado pelo Jubran dois exemplos de LAÇOS ou LOOPs como desejarem:
FUNÇÃO PARA
Sintaxe:
Para ( n=0 até 999999 ) faça
Fimpara
Esse tipo de laço tem um contador interno, muito útil para rotinas de contagem automática, cronometragem etc...
Vamos ver o exemplo acima funcionando com a FUNÇÃO PARA.
INICIO INICIO DE PROGRAMA
INTEIRO: NUM,CT,SOMA; DECLARAÇÃO DE VARIAVEIS
SOMA 0; PRE-DETERMINANDO À VARIAVEL SOMA O VALOR 0;
PARA (CT=0 ATÉ 9) FAÇA PARA CT=0 FAÇA ( CT CT+1 ) ATÉ CT=10
LEIA (NUM); LEIA O NUMERO DIGITADO PELO USUARIO
SOMA SOMA+NUM; A VARIAVEL SOMA RECEBE A SOMA DOS NUMEROS DIGITADOS
FIMPARA FIM DA FUNÇÃO PARA
ESCREVA (SOMA); ESCREVA O CONTEUDO DA VARIAVEL SOMA
FIM FIM DO PROGRAMA
Vejam que o número de variáveis diminuiu assustadoramente, e o sistema fica muito mais fácil de se entender. É
o que chamamos de código limpo.
FUNÇÃO ENQUANTO
Sintaxe:
Enquanto ( n <= 99999 ) faça
N=n+1;
Fimenquanto
Agora um exemplo com o laço sendo controlado por uma variável numérica.
Ex: Faça um algoritimo que escreva a seqüência numérica de 0 a 1000.
Veja a solução
FUNÇÃO ESCOLHA
Sintaxe:
Escolha (VARTESTE)
OPCAO 1: ESCREVA (“ESCOLHEU 1”);
OPCAO 2: ESCREVA (“ESCOLHEU 2”);
OPCAO 3: ESCREVA (“ESCOLHEU 3”);
DEFAULT: ESCREVA (“ESCOLHA 1,2 OU 3”);
FimEscolha
A função escolha é também uma função SE mais sofisticada. Seu uso é bem simples.
Vamos através de mais um exemplo fixar essa função e seu funcionamento.
Ex: Faça um algoritmo que leia dois número. Solicite ao usuário que informe qual operação matemática ele deseja
realizar com os dois números. Caso ele digite “+”, será feita uma adição, caso “*”, será realizado uma
multiplicação, caso seja uma outra operação, mostre uma mensagem de erro.
INICIO
INTEIRO : N1, N2;
CARACTER : OPERACAO;
LEIA (N1,N2);
ESCOLHA (OPERACAO)
OPCAO “+”: ESCREVA (N1+N2);
OPCAO “*”: ESCREVA (N1*N2);
DEFAULT : ESCREVA (“!!!! ERRO !!!!”);
FIMESCOLHA
FIM
VETORES
Sintaxe:
Inteiro : i [50];
Um método de interessante de armazenamento de dados é o VETOR. Com ele em uma única variável seremos
capazes de armazenar vários dados de um mesmo tipo numa única variável.
Digamos que precisamos armazenar a idade de 5 pessoas e ao final do programa seja necessário imprimir todas
as idades no final do programa.
Veja o como o vetor trabalharia para nos atender.
Inteiro : idade [5] ;
Abrimos no vetor 5 espaços para armazenar as idades. Digamos que no programa as idades foram informadas na
seguinte ordem: 10, 20, 59, 12, 25.
O vetor irá armazenar na seguinte forma.
[10 20 59 12 25] , sendo que a idade 10 ficou na posição 0, a idade 20 ficou na posição 1, a idade 59 ficou na
posição 2
a idade 12 ficou na posição 3, e finalmente a idade 25 ficou na posição 4.
FIMPARA
PARA (I=0 ATÉ 49) FAÇA
ESCREVA (N [I] ) ;
FIMPARA
FIM