Buscar

UNIDADE 17 Estrutura de repetição enquanto (fluxograma)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 27 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Estrutura de repetição enquanto. 
(fluxograma)
APRESENTAÇÃO
Na construção de programas, muitas vezes é necessário executar o mesmo conjunto de 
comandos mais de uma vez. Para isso, foram criadas as estruturas de repetição. 
Nesta Unidade de Aprendizagem, estudaremos a estrutura de repetição "enquanto" (while, em 
inglês), que executa um conjunto de comandos enquanto uma condição for verdadeira. 
Bons estudos.
Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:
Identificar problemas que precisem de repetição (laços) para construção da solução 
algorítmica.
•
Construir fluxogramas que utilizem a estrutura de repetição "enquanto".•
Resolver problemas através de sua especificação com algoritmos.•
DESAFIO
As estruturas de repetição são muito utilizadas em desenvolvimento de softwares. Entender 
como funcionam é muito importante para resolver problemas que precisam executar tarefas 
repetidas vezes. A estrutura de repetição “enquanto” inicia um processo que, primeiro, faz um 
teste (<condição>); se o resultado for verdadeiro (SIM), executa o conjunto de comandos da 
repetição e retorna o fluxo para antes da condição; se o resultado for falso (NÃO), sai da 
repetição e continua o fluxo do programa. Veja o esquema de fluxo a seguir:
Suponha que você deseje construir um programa que escreva os números inteiros de 1 até um 
número que você informe (limite). Qual pode ser o processo para resolver esse problema? 
Primeiro, deve ser informado o valor limite; depois, você pode atribuir 1 (um) para uma 
variável, mostrar o valor dessa variável, depois somar 1 (um) e repetir o processo enquanto o 
valor da variável for menor ou igual ao limite. O fluxograma a seguir demonstra a solução desse 
problema.
Agora é sua vez!
Você viajou para a Inglaterra nas suas férias e todos os termômetros apresentam a temperatura 
em graus Fahrenheit. Essa escala foi criada em 1708 pelo físico alemão Daniel Gabriel 
Fahrenheit. Comparando com a escala Celsius, tem-se a seguinte equivalência:
0°C = 32°F
100°C = 212°F
Para converter uma temperatura F em graus Fahrenheit, pode-se utilizar a seguinte expressão:
Celsius = (F – 32) / 8
Construa um fluxograma que gere uma tabela de equivalência entre as temperaturas em graus 
Celsius e em graus Fahrenheit, para as temperaturas em graus Fahrenheit entre 0 e 212, com 
intervalos de 1 grau.
INFOGRÁFICO
Para a construção de algoritmos, as estruturas básicas utilizadas são os comandos de entrada e 
saída de dados, os comandos de decisão e os comandos para repetição. Esses últimos são o foco 
desta Unidade, em especial a construção de fluxogramas que representem a lógica de 
funcionamento do comando "enquanto".
CONTEÚDO DO LIVRO
É desafiante aprender a trabalhar com as estruturas de repetição. A compreensão de sua lógica é 
o primeiro passo para a adequada utilização. Para saber um pouco mais sobre esse assunto, leia 
um trecho da seguinte obra: EDELWEISS, N.; LIVI, M.A.C. Algoritmos e programação com 
exemplos em Pascal e C - Vol. 23. Série Livros Didáticos Informática UFRGS. Porto Alegre: 
Bookman, 2014. p. 125-127.
23
s é r i e l i v r o s d i d á t i c o s i n f o r m á t i c a u f r g s
algoritmos
e programação 
com exemplos em Pascal e C
nina edelweiss
maria aparecida castro livi
E22a Edelweiss, Nina.
 Algoritmos e programação com exemplos em Pascal e C 
 [recurso eletrônico] / Nina Edelweiss, Maria Aparecida Castro 
 Livi. – Dados eletrônicos. – Porto Alegre : Bookman, 2014.
 Editado também como livro impresso em 2014.
 ISBN 978-85-8260-190-7
 1. Informática. 2. Algoritmos – Programação. I. Livi, 
 Maria Aparecida Castro. II. Título. 
CDU 004.421
 as autoras
Nina Edelweiss é engenheira eletricista e doutora em Ciência da Computação pela Uni-
versidade Federal do Rio Grande do Sul. Durante muitos anos, lecionou em cursos de Enge-
nharia e de Ciência da Computação na UFRGS, na UFSC e na PUCRS. Foi, ainda, orientadora 
do Programa de Pós-Graduação em Ciência da Computação da UFRGS. É coautora de três 
livros, tendo publicado diversos artigos em periódicos e em anais de congressos nacionais 
e internacionais. Participou de diversos projetos de pesquisa financiados por agências de 
fomento como CNPq e FAPERGS, desenvolvendo pesquisas nas áreas de bancos de dados e 
desenvolvimento de software.
Maria Aparecida Castro Livi é licenciada e bacharel em Letras, e mestre em Ciência da 
Computação pela Universidade Federal do Rio Grande do Sul. Desenvolveu sua carreira pro-
fissional na UFRGS, onde foi programadora e analista de sistema, antes de ingressar na 
carreira docente. Ministrou por vários anos a disciplina de Algoritmos e Programação para 
alunos dos cursos de Engenharia da Computação e Ciência da Computação. Sua área de 
interesse prioritário é o ensino de Linguagens de Programação, tanto de forma presencial 
quanto a distância.
Catalogação na publicação: Ana Paula M. Magnus – CRB 10/2052
Edelweiss_Iniciais_eletronica.indd ii 14/05/14 16:51
■ ■ Este capítulo apresenta 
comandos de repetição utilizados 
para implementar iterações 
de conjuntos de comandos. 
Após a introdução dos conceitos de laço 
de repetição e de contador, 
são apresentados e discutidos os 
comandos de repetição por contagem, 
de repetição condicional por 
avaliação prévia de uma condição 
e de repetição condicional 
por avaliação posterior 
de uma condição.
estruturas de repetição
capítulo 5
Edelweiss_05.indd 125 12/03/14 09:02
126 Algoritmos e Programação com Exemplos em Pascal e C
Nos algoritmos vistos nos capítulos anteriores, os comandos são executados em sequência, 
um após o outro, uma única vez ou até mesmo nenhuma vez, dependendo de uma condição 
especificada. Este capítulo introduz uma nova situação, bastante comum na programação: 
sequências de comandos que são executados repetidas vezes. O número de repetições pode 
ser conhecido a priori ou pode estar associado à ocorrência de uma condição que se verifique 
ao longo do processamento.
No capítulo anterior, foi resolvido o problema do cálculo da média aritmética de três notas de 
um aluno, com a determinação de sua aprovação ou reprovação, complementado ainda pelo 
cálculo do conceito correspondente à média obtida. Com frequência, esse processo é repetido 
para um número determinado de alunos de uma turma. Nesse caso, os dados de cada aluno 
são obtidos, processados e informados de forma semelhante, porém de forma independente, 
sendo esse processo repetido tantas vezes quantos forem os alunos da turma – um número 
conhecido, utilizado como limite no controle das repetições.
Existem também situações em que o número de repetições de um conjunto de comandos não 
pode ser estabelecido previamente. No exemplo de cálculo dos conceitos, mesmo conhecen-
do-se o número total de alunos da turma pode acontecer de não se ter as notas de todos eles, 
porque um ou mais deixou de fazer as provas ou desistiu do curso. Quando não se desejar 
processar os dados de todos os alunos, o final da entrada de dados pode ser limitado através, 
por exemplo, do fornecimento de um conjunto de notas com valores nulos, ou do código 
correspondente ao último aluno a ser analisado. Portanto, nos casos em que o número de re-
petições não é previamente conhecido, o encerramento das repetições é controlado por uma 
condição que é verificada ao longo do processamento.
As sequências de comandos que são repetidas duas ou mais vezes são também chamadas de 
laços de repetição. Para criar um laço de repetição, além da ação ou ações que nele devam 
ser executadas, devem ser definidos:
 1. uma forma para indicar o retorno a um ponto determinado do código, para repetir o laço 
(o que, até este momento, não esteve disponível);
 2. um recurso para registrar o número de vezes que o laço foi realizado, o que remete para 
o uso de um contador a ser alterado cada vez que o laço for executado;
 3. uma condição que, testada ao final da execução do laço, permitadeterminar se ele deve 
ser repetido novamente ou não.
Os elementos acima são, em sua maioria, fornecidos nos comandos iterativos que permitem 
implementar repetições. São eles: comando de repetição por contagem, comando de repe-
tição condicional por avaliação prévia de condição e comando de repetição condicional por 
avaliação posterior de condição.
5.1 conceito de contador
O conceito de uma variável que atua como um contador está relacionado a repetições por 
contagem. Esse é o caso, por exemplo, de uma roleta colocada na entrada de um centro de 
Edelweiss_05.indd 126 12/03/14 09:02
Capítulo 5 Estruturas de Repetição 127
eventos com a finalidade de contar quantas pessoas entram no local. A roleta, inicialmente 
zerada, soma uma unidade a cada pessoa que por ela passa. Essa informação permite inclu-
sive que a entrada de clientes seja encerrada quando o número registrado pela roleta atingir 
a lotação máxima.
Dessa forma, uma variável do tipo contador pode ser utilizada tanto para contabilizar o nú-
mero de ocorrências de determinada ação como para determinar o seu encerramento. O 
contador deve ser sempre:
 1. inicializado, normalmente com o valor zero, antes de iniciar a contagem:
contador ← 0
 2. incrementado, sempre que uma nova ocorrência do que está sendo contado for identi-
ficada ou processada. A forma de incrementar um contador é atribuindo a ele seu valor 
atual, incrementado de uma unidade:
contador ← contador + 1
5.2 comando de repetição por contagem para/faça
O comando de repetição por contagem para/faça faz que a execução de uma ação, 
ou grupo de ações, seja repetida um número predefinido de vezes. Isso é feito vinculando a 
execução de um ou mais comandos ao valor de uma variável de controle, com funcionamento 
análogo ao de um contador. O controle das repetições é definido através de um cabeçalho, 
no qual são definidos o nome da variável de controle, seus valores inicial e final, e o valor do 
incremento que a variável de controle deve receber após cada repetição.
A sintaxe do comando repetição por contagem para/faça é:
para <variável de controle> de <valor inicial> [ incr <valor do incre-
mento> ] até <valor final> faça
 <comando>
Apenas variáveis ordinais simples podem ser utilizadas como variáveis de controle. Nesse tipo 
de variável, os valores válidos integram um conjunto ordenado de valores discretos, ou seja, 
se forem considerados três valores em sequência, entre o primeiro e o terceiro valor existi-
rá tão somente um valor. Variáveis inteiras e tipo caractere são exemplos de variáveis ordinais 
simples.
Os valores inicial e final devem ser do mesmo tipo da variável de controle. Por exemplo, no 
cabeçalho:
para i de 1 incr 1 até 10 faça
a variável de controle i deve ser inteira. Já no cabeçalho:
para letra de 'a' incr 1 até 'm' faça
a variável de controle letra deve ser do tipo caractere.
Edelweiss_05.indd 127 12/03/14 09:02
 
DICA DO PROFESSOR
Vamos compreender, utilizando fluxogramas, como são estruturados os comandos para construir 
laços de repetição "enquanto...faça".
Conteúdo interativo disponível na plataforma de ensino!
 
EXERCÍCIOS
1) Considere o seguinte fluxograma: 
Analise as afirmativas a seguir e escolha a FALSA: 
A) O fluxograma possui um laço de repetição.
B) A estrutura de repetição enquanto...para está representada no fluxograma.
C) O fluxograma tem por objetivo escrever os números inteiros no intervalo [A,B], 
escrevendo os números desde A até B, incluindo os limites.
D) O fluxograma não escreverá nada se for digitado um valor para A que seja maior que B.
E) Se for tirado do fluxograma o processo L = L + 1, a repetição nunca terminará e sempre 
escreverá o mesmo número.
Analise o seguinte fluxograma: 
 
2) 
Analise as afirmativas a seguir e escolha a que descreve o objetivo desse fluxograma, ou 
seja, o valor final de M (dado de saída) em função dos valores de entrada (A e B). 
A) Calcula o resultado da expressão M = A * B.
B) O valor final de M é sempre 1, independentemente dos valores de entrada de A e B.
C) O valor final de M é correspondente ao logaritmo natural de (A * B), ou seja, M = ln (A * 
B).
D) Calcula o resultado da expressão M = AB
E) Quando o valor de B for 1, o valor final de M sempre será 1, independentemente do valor 
de A.
3) O setor de reprografia da faculdade precisa de um programa que auxilie a controlar 
o total de cópias realizadas em cada período. Assim, solicitou um programa que fique 
lendo a quantidade de cópias realizadas em cada serviço e, ao final do período, 
informe quantos serviços foram realizados e o total de cópias feitas. Considere que 
uma cópia se refere a uma folha copiada e que serviço é um conjunto de cópias 
solicitadas por um cliente. Analise os fluxogramas das alternativas abaixo e selecione 
aquela que representa a melhor solução para esse problema. 
A) 
 
B) 
 
C) 
 
D) 
 
E) 
 
Considere o seguinte fluxograma: 4) 
Analise as alternativas a seguir e selecione a verdadeira.
A) O algoritmo irá escrever a seguinte série de números: 1, 1, 2, 3, 5, 8, 13, 21, 34.
B) O algoritmo irá escrever a seguinte série de números: 2, 3, 5, 8, 13, 21, 34.
C) O algoritmo irá escrever a seguinte série de números: 2, 3, 5, 8, 13, 21, 34, 55.
D) O algoritmo irá escrever a seguinte série de números: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55.
E) O algoritmo irá escrever a seguinte série de números: 1, 1, 2, 3, 5, 8, 13, 21.
O seguinte fluxograma realiza a decomposição de um número inteiro, que esteja no 
intervalo entre [1,9999] e escreve a quantidade de milhares, centenas, dezenas e unidades 
do número. 
5) 
 
Perceba que são utilizados dois operadores relacionados com a divisão entre números 
inteiros: 
• div, que calcula o quociente de uma divisão inteira entre dois números inteiros. Ex.: 7 div 
2 = 3 
• mod, que calcula o resto de uma divisão inteira entre dois números inteiros. Ex.: 7 mod 2 
= 1
Analise as alternativas a seguir e selecione aquela que possui a melhor correspondência 
entre o fluxograma apresentado acima e o pseudocódigo apresentado.
A) algoritmo "decomposicao"var numero, parte, decimal : inteiroinicio escreval("Digite um 
numero: ") leia(numero) decimal <- 1000 enquanto (numero > 0) faca parte <- numero div 
decimal escolha decimal caso 1000 escreval(parte," milhares") caso 100 escreval(parte," 
centenas") caso 10 escreval(parte," dezenas") caso 1 escreval(parte," unidades") 
fimescolha numero <- numero mod decimal decimal <- decimal div 10 
fimenquantofimalgoritmo
B) algoritmo "decomposicao"var numero, parte, decimal : inteiroinicio repita escreval("Digite 
um numero: ") leia(numero) ate (numero > 0) e (numero <= 9999) decimal <- 1000 repita 
parte <- numero div decimal escolha decimal caso 1000 escreval(parte," milhares") caso 
100 escreval(parte," centenas") caso 10 escreval(parte," dezenas") caso 1 escreval(parte," 
unidades") fimescolha numero <- numero mod decimal decimal <- decimal div 10 ate 
decimal = 0fimalgoritmo
C) algoritmo "decomposicao"var numero, parte, decimal : inteiroinicio repita escreval("Digite 
um numero: ") leia(numero) ate (numero > 0) e (numero <= 9999) enquanto (decimal > 0) 
faca parte <- numero div decimal escolha decimal caso 1000 escreval(parte," milhares") 
caso 100 escreval(parte," centenas") caso 10 escreval(parte," dezenas") caso 1 
escreval(parte," unidades") fimescolha numero <- numero mod decimal decimal <- 
decimal div 10 fimenquantofimalgoritmo
D) algoritmo "decomposicao"var numero, parte, decimal : inteiroinicio repita escreval("Digite 
um numero: ") leia(numero) ate (numero > 0) e (numero <= 9999) decimal <- 1000 
enquanto (decimal > 0) faca parte <- numero div decimal escolha decimal caso 1000 
escreval(parte," milhares") caso 100 escreval(parte," centenas") caso 10 escreval(parte," 
dezenas") caso 1 escreval(parte," unidades") fimescolha numero <- numero mod decimal 
decimal <- decimal div 10 fimenquantofimalgoritmo
E)algoritmo "decomposicao"var numero, parte, decimal : inteiroinicio repita escreval("Digite 
um numero: ") leia(numero) ate (numero > 0) e (numero <= 9999) decimal <- 1000 
enquanto (decimal >= 0) faca parte <- numero div decimal se (decimal = 1000) entao 
escreval(parte," milhares") fimse se (decimal = 100) entao escreval(parte," centenas") 
fimse se (decimal = 10) entao escreval(parte," dezenas") fimse se (decimal = 1) entao 
escreval(parte," unidades") fimse numero <- numero mod decimal decimal <- decimal div 
10 fimenquantofimalgoritmo
NA PRÁTICA
Repetimos diversos processos na nossa rotina, muitas vezes sem nos darmos conta de que possui 
etapas que são realizadas diversas vezes repetidamente. Por exemplo, para comermos um cacho 
de uvas, qual o processo que realizamos? 
 
Enquanto tiver uvas, comemos uma uva. O processo irá terminar quando não houver mais uvas. 
Analise o fluxograma a seguir: 
 
Se a condição “Tem Uva?” tem resultado SIM (indicando que ainda tem uva no cacho), realiza-
se o processo “Come Uva” e então se repete o processo, voltado à execução do teste (condição). 
Quando a condição “Tem Uva?” tiver resultado NÃO (falso, indicado que não há mais uvas no 
cacho), finaliza-se a repetição, seguindo o fluxo normal do programa. No caso desse exemplo, o 
programa é finalizado. Assim, esse fluxograma representa a estrutura de repetição “Enquanto”, 
nesse caso “Enquanto tiver uvas no cacho, coma uma uva”.
Perceba que processos repetitivos são muito comuns, principalmente se analisarmos problemas 
matemáticos. 
 
Por exemplo, verificarmos se um número é Primo. O que é um número Primo? É um número 
inteiro que somente é divisível por um (todos os números são divisíveis por um) e por ele 
mesmo (todos os números são divisíveis por si mesmos). Assim, números Primos são aqueles 
que não possuem divisores além de um e ele mesmo. Como números Primos estão relacionados 
com repetição? Para verificarmos se um número é Primo ou não, precisamos verificar se ele 
possui divisores. Assim, temos que tentar dividir o número por divisores entre [2, numero-1], 
verificando se é divisível. Se encontrarmos um divisor nesse conjunto, o número não é Primo. 
Lembrando que um número inteiro é dito divisível por outro valor inteiro, se o resto da divisão 
for zero (exemplo, 8 é divisível por 2, pois o quociente é 4 e o resto é 0, portanto, 2 é divisor de 
8).
Na prática, vamos verificar se o número 7 é Primo?
Já sabemos que todos os números são divisíveis por 1 e por eles mesmos, não precisando testar 
que esses são divisores. Portanto, precisamos testar se algum dos valores no intervalo entre [2,6] 
é divisor de 7.
7 / 2 = 3 (resto 1) – Não é divisível
7 / 3 = 2 (resto 1) – Não é divisível
7 / 4 = 1 (resto 3) – Não é divisível
7 / 5 = 1 (resto 2) – Não é divisível
7 / 6 = 1 (resto 1) – Não é divisível
Assim, provamos que 7 é um número Primo, pois não possui divisores além do número 1 e de 
ele mesmo.
Agora, vamos verificar se 35 é um número Primo. O processo é o mesmo, precisamos testar se 
existe algum divisor de 35 no intervalo de valores [2,34].
35 / 2 = 17 (resto 1) – Não é divisível
35 / 3 = 11 (resto 2) – Não é divisível
35 / 4 = 8 (resto 3) – Não é divisível
35 / 5 = 7 (resto 0) – É DIVISÍVEL
35 / 6 = 5 (resto 5) – Não é divisível
35 / 7 = 5 (resto 0) – É DIVISÍVEL
35 / 8 = 4 (resto 3) - Não é divisível
35 / 9 = 3 (resto 8) - Não é divisível
35 / 10 = 3 (resto 5) - Não é divisível
... assim por diante. Perceba que, quando se encontra um divisor, já se pode concluir que o 
número não é primo, não é necessário verificar todos os divisores, salvo que se deseje contar a 
quantidade de divisores que o número possui. Portanto, 35 não é um número primo, pois possui 
divisores, que são 5 e 7.
Considerando números pequenos, esse pode ser um processo relativamente simples. Mas, se 
você tiver que verificar, por exemplo, se o número 4181 é Primo ou não, pode ser um processo 
um pouco demorado realizar o teste de todas as divisões sucessivamente. Se realizar o processo 
descrito acima, verificarás que ele tem dois divisores 37 e 113, mas, antes de encontrar o 
primeiro divisor, será preciso realizar as divisões por 2, por 3, por 4, ... etc. Assim, o 
computador pode nos auxiliar nesse processo, construindo um algoritmo que realize essa tarefa 
repetitiva. A seguir, os passos em linguagem narrativa:
• Ler um número;
• inicializar o valor de divisor com 2, que é o primeiro divisor a ser testado;
• inicializar o contador de divisores com 0 (zero), indicando, inicialmente, que o número não 
tem divisores;
• enquanto o valor do divisor for menor que o número faça (esse é o trecho da repetição):
 - o verificar se o resto da divisão do número pelo divisor é igual a zero; se for, encontrou-se 
um divisor, contar;
 - o incrementar o divisor, gerando o próximo divisor a ser testado;
• ao final da repetição, verificar se o contador de divisores é igual a zero; se for, o número é 
Primo.
A seguir, o mesmo processo representado através de um fluxograma: 
 
E agora representado através de pseudocódigo:
algoritmo "primos" 
var 
numero, divisor, resto, conta : inteiro 
inicio 
escreval("Digite um numero: ") 
leia(numero) 
divisor <- 2 
conta <- 0 
enquanto (divisor < numero) faca 
resto <- numero mod divisor 
se resto = 0 entao 
escreval("divisor: ", divisor) 
conta <- conta + 1 
fimse 
divisor <- divisor + 1 
fimenquanto 
se conta = 0 entao 
escreval("Numero Primo") 
senao 
escreval("Nao eh Primo") 
fimse 
fimalgoritmo
Perceba que, nesse algoritmo, é utilizada a função “mod”, que calcula o resto de uma divisão 
inteira.
Curiosidade: pesquises sobre a importância dos números Primos para sistemas de criptografia.
SAIBA MAIS
Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do 
professor:
Estruturas de Repetição (Loop) - ENQUANTO
Conteúdo interativo disponível na plataforma de ensino!
Estruturas de Repetição 1
Conteúdo interativo disponível na plataforma de ensino!

Outros materiais