Buscar

O QUE É e COMO CONSTRUIR UM ALGORITMO

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

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

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ê viu 3, do total de 18 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

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

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ê viu 6, do total de 18 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

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

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ê viu 9, do total de 18 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

Prévia do material em texto

INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
1 
 
Algoritmos Computacionais ( Programas ) 
 
A partir deste tópico, consideramos a utilização do universo Computacional na 
solução de problemas. Para tanto devemos lembrar que a transposição de 
problemas do universo Real para o universo Computacional, é realizada através da 
modelagem de problemas cuja solução já é conhecida e já foi expressa na forma de 
algoritmo na linguagem natural, discutido no tópico anterior. 
 
Na construção de algoritmos no tópico anterior, foram introduzidos conceitos 
fundamentais, e suficiente, para a construção de algoritmos em uma linguagem 
mais próxima da linguagem natural. 
 
Algoritmos computacionais, ou programas de computadores, por outro lado, 
requerem um nível de detalhamento mais próximo da linguagem computacional, de 
modo que as ações representem comandos que possam ser entendidos e realizados 
pelo computador. 
 
Surge então uma questão: 
 
Como saber se já temos detalhes suficientes em um programa 
para que a AÇÃO possa ser entendida e realizada ? 
A resposta a essa pergunta vai depender do agente que irá executar o programa. No 
caso de algoritmos computacionais, sabemos que o computador possui um 
conjunto limitado de instruções e que o programa deve ser expresso com estas 
instruções. 
 
Entretanto para facilitar a construção de algoritmos computacionais, as linguagens 
de programação evoluiram de forma a aproximarem-se cada vez mais da linguagem 
natural. Pseudolinguagens tentam aproximar ainda mais os algoritmos 
computacionais da linguagem natural, sendo especialmente adequadas para 
utilizacao em cursos introdutórios sobre a arte de programar computadores. 
 
Neste trabalho utilizaremos uma pseudolinguagem, conhecida como PORTUGOL, 
para aproximar a liguagem natural ao detalhamento das ações nos algoritmos 
computacionais. A descrição de algoritmos em pseudo linguagens, além da 
simplicidade, permitem mesclar regras e estruturas rígidas, com descrições de 
ações em liguagem natural, tornando possível postergar destalhes minuciosos para 
o momento de modelar o algoritmo na linguagem executável do computador. 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
2 
 
A principal vantagem do uso de pseudolinguagens é a flexibilidade, todavia a 
utilização de ações especiais com regras definidas pode ajudar na modelagem e na 
posterior transcrição do problema para o universo computacional. Neste aspecto 
Portugol, tem a flexibilidade de poder ser adaptada facilmente as estruturas da 
linguagem real. 
 
 
 
PORTUGOL 
 
PORTUGOL é uma pseudolinguagem que permite ao programador pensar no 
problema em si e não no equipamento que irá executar o algoritmo. Em geral, a 
medida que o programador vai ganhando experiência, existe a tendência de 
utilização do PORTUGOL ainda no universo Real tornando mais fácil a transposição 
do problema para o universo Computacional. 
 
Todavia, devemos observar que mesmo com a utilização de pseudolinguagem na 
modelagem de soluções, é importante considerar-mos a sintaxe (em relação à 
forma) e a semântica (em relação ao conteúdo ou seu significado). 
 
Lembre que na construção de algoritmo mostrada no tópico anterior, identificamos 
dois conceitos básicos e fundamentais dos algoritmos. 
 
� Memória ( Estruturas de Dados ) para manipulação das informações. 
� Algoritmo ( Estruturas de Controle ) para manipulação das ações. 
Esses conceitos estão representados nas linguagens de programação, reais ou 
virtuais, através de variáveis (para representar a memória) e ações (para expressar a 
solução na forma algoritmica). 
 
 
A estrutura de um algoritmo em PORTUGOL pode ser dada como: 
 
início 
< declarações de variáveis > ( estrutura de dados ) 
< ações > ( algoritmo ) 
fim 
 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
3 
 
Variáveis 
 
 
Variáveis são componentes das linguagens de programação, que identificam as 
informações que estão sendo manipuladas pelos programas. 
 
Uma variável é um local (área na memória do computador) que armazena um tipo 
específico de conteúdo. Uma variável contém um valor que pode ser modificado 
durante a execução do programa. A variável possui um identificador (nome), que 
pode ser representado da seguinte forma: 
 
 
 
 
 
 
O diagrama acima, mostra a forma como uma variável é declarada em função de 
um tipo associado. 
 
 
 
Tipos 
 
O Tipo define duas características importantes: 
 
1. Intervalo de valores possíveis. 
 
Por exemplo: se pensarmos em números naturais, estamos identificando 
o conjunto de números inteiros e não negativos (inclui o zero). 
 
2. Conjunto de operações que podem ser realizados. 
 
Os mesmos números naturais, admitem as 4 operações aritméticas 
básicas: ´adição´, ´subtração´, ´multiplicação´ e ´divisão´, mas não 
admitem por exemplo operações de conjunto, como União e Interseção. 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
4 
 
Os tipos por sua vez são divididos em duas características distintas: 
 
1. Tipos básicos 
2. Tipos estruturados 
 
 
Em PORTUGOL, vamos considerar os tipos básicos como sendo um conjunto de 4 
tipos principais, (embora nas linguagens de programação, como em C Sharp, 
existam modificações para estes tipos principais). 
 
 
Tipos básicos em Portugol : 
 
 
• Tipo Inteiro: 
 
Intervalo de valores: 
 Número inteiro (negativo, nulo ou positivo). 
 -100, 0, 1, 2, 1250. 
 Operações: 
 + (adição), - (subtração), * (multiplicação), / (divisão) 
 
 Exemplo: 
 int X; ( declaração de X do tipo inteiro ) 
 int Idade; ( declaração de Idade do tipo inteiro ) 
 int A, B, C; ( declaração de A, B e C do tipo inteiro ) 
 
 
• Tipo Real: 
 
 Intervalo de valores: 
 Número real (negativo, nulo ou positivo). 
 -10, -1.5, 11.2, 0, 1.0, 2, 50.23465 
 Operações: 
 + (adição), - (subtração), * (multiplicação), / (divisão) 
 
 Exemplo: 
 real X; ( declaração de X do tipo real ) 
 real Peso; ( declaração de Peso do tipo real ) 
 real A, B, C; ( declaração de A, B e C do tipo real ) 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
5 
 
• Tipo Caracter: 
 
 Intervalo de valores: 
 Caracteres Alfanuméricos 
 casa, UFSC, Win7, 123, alfa#2 
 Operações: 
 + (união), - (interseção) 
 
 Exemplo: 
 caracter X; ( declaração de X do tipo caracter ) 
 caracter Nome; ( declaração de Nome do tipo caracter ) 
 caracter A, B, C; ( declaração de A, B e C do tipo caracter ) 
 
 
• Tipo Lógico 
 
 Intervalo de valores: 
 valores booleanos 
 verdadeiro, false 
 Operações: 
 operadores lógicos ( <, <=, >, >=, <>, == ) 
 
 Exemplo: 
 bool X; ( declaração de X do tipo lógico) 
 bool Sucesso; ( declaração de Sucesso do tipo lógico) 
 bool A, B, C; ( declaração de A, B e C do tipo lógico) 
 
 
 
Identificador de Variáveis 
 
O identificador de uma variável, se refere ao nome de como a variável vai ser 
conhecida no programa. É importante não esquecer que: 
 
a) Não é possível definir variáveis de diferentes tipos com o mesmo 
identificador, isto é com o mesmo nome. por exemplo: 
 
real A; int A; não são aceitos, pois causaria erro na programação, 
 
real A1; int A2; pode ser utilizado 
 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página6 
 
b) O nome do identificadores somente podem conter: Letras (maiúsculas e 
minúsculas), números e o caracter ‘_’. Por exemplo: 
 
são válidas as declatações: int Idade, real A1, A2 
 
não são aceitas as variáveis: caracter ?nome, real valor* 
 
 
c) Letras maiúsculas e minúsculas são tratadas de forma diferente, deste modo 
as variáveis abaixo são variáveis diferentes. 
 
caracter Nome_Aluno, Nome_aluno; 
 
real media, MEDIA; 
 
 
 
É importante entender que cada variável definida no programa usa um local da 
memória, que é acessada através do nome dado a variável. O espaço de memória 
ocupado pelo conteúdo da variável, depende do tamanho destes tipos de dados, 
que variam de acordo com o tipo do processador e com a implementação do 
compilador. 
 
Como referência inicial podemos considerar o seguinte: 
 
• Tipo inteiro com 2 bytes; 
• Tipo real com 4 bytes; 
• Tipo caracter com 1 byte; 
• Tipo lógico com 1 byte; 
Exemplo: Pode-se supor a memória como uma matriz, onde cada célula possui o 
tamanho de 1 byte (8 bits): 
 
 
 
 
 
 
Para armazenar o valor inteiro A, são necessários 2 bytes. 
Para armazenar o valor real B, são necessários 4 bytes. 
B A 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
7 
 
Estrutura do algoritmo 
Conforme definimos anteriormente, algoritmos são sequências de comandos 
especiais e com alguma estrutura de controle. Um destes comandos especiais e 
bastante importante é o comando utilizado para atribuir conteúdo a variáveis. 
 
Comando de atribuição 
 
 
 
 
O comando de atribuição tem a seguinte operação: 
 
1. A expressão é avaliada, isto é resolvida. 
2. O resultado da execução da expressão é então atribuído a variável. 
 
Exemplo: 1. inicio 
 2. int X; 
 3. X ���� 10 + 17; 
 4. fim; 
Vamos executar o algoritmo linha a linha; 
 
Linha 1; O programa é iniciado. No compudador, início significa a preparação 
de um ambiente para execução de programa. 
 
Linha 2; Variável X é declarada. Um espaço na memória do computador, 
compatível ao tipo, é reservado para armazenar a variável X. Desta forma, toda 
vez que a variável X aparecer no programa, estará sendo referenciando o 
conteúdo de memória reservado a X. 
 
Linha 3; A expressão é avaliada e o resultado atribuído a X. A expressão 10 + 
17 é resolvida, isto é obtem-se o resultado 27. Este resuldado é então atribuido a 
X, ou seja o espaço de memória reservado para X, recebe o valor 27. Desta forma 
o conteúdo (valor) de X é 27. 
 
Linha 4; O programa é finalizado. Fim significa que o ambiente de execução 
do programa é liberado. 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
8 
 
Operadores Aritméticos 
 
 
Operadores aritméticos são utilizados para expressar equações matemáticas. 
Neste estágio vamos nos deter ao entendimento de apenas alguns operadores 
conhecidos como operadores básicos. 
 
 
• Adição: operador + ex: Z � X + Y; 
• Subtração: operador - ex: Z � X - Y; 
• Multiplicação: operador * ex: Z � X * Y; 
• Divisão: operador / ex: Z � X / Y; 
• Resto da divisão: operador % ex: R � X % Y; 
 
• União: operador + 
Ex: Nome_Completo � Pre_Nome + Sobre_Nome; 
 
 
 
Ordem de execução dos operadores em expressões: 
1º. Resolvidos o que estiver interno a parenteses ´(´ ´)´ 
2º. Multiplição, Divisão e Resto ( primeiro o da esquerda, se houver empate ) 
3º. Adição e Subtração ( primeiro o da esquerda, se houver empate ) 
 
 
Exemplos: os resultados de: 10 / 2 + 5 � 10 
 10 / 2 * 5 � 25 
 10 / ( 2 * 5 ) � 1 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
9 
 
Estruturas de controle de PORTUGOL 
 
Nos interessa neste momento conhecer apenas as estruturas de controle básicas, 
variantes e demais potencialidades deixaremos para estudar mais adiante. Vimos 
anteriormente que existem basicamente três estruturas de controle: 
 
1. Sequência simples, representada pelo ponto e virgula ´;´ 
 
O ponto e virgula determina uma ordem sequêncial de execução das ações. 
Isto é, a presença do ponto e virgula, determina que a ação seguinte ao 
ponto e virgula somente pode ser executada após a ação que vem antes do 
ponto e virgula ter sido executada. 
 
Ex: inicio 
 . . . . 
 X � 10; 
Y � X; 
 . . . . 
 fim 
 
 No exemplo acima quem determina que o comado Y � X, somente 
pode ser executada após do comando X � 10 ter sido executado, não é a 
lógica de execução da aplicação, mas sim a presença do ponto e virgula, que 
estabelece a ordem sequêncial dos comandos. 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
10 
 
2. Alternativa, para expressar condição: 
Estruturas alternativas são utilizadas quando há uma condição que desvia o 
fluxo do programa, dependendo de uma condição ser avaliada como 
verdadeira ou falsa. 
 
2.1 Alternativa simples 
 
se < condição > então 
< ação 1 >; < ação 2 >; . . . 
 Fimse 
 
 
2.2 Alternativa composta 
 
se < condição > então 
< ação 1 >; < ação 2 >; . . . 
 senão 
< ação 1 >; < ação 2 >; . . . 
 Fimse 
 
 
 
exemplo: algoritmo para determinar se um dado número é PAR ou IMPAR 
 
inicio 
 int N = 7; // definir ou conhecer o valor de N 
int resto = N % 2; // calcular o resto da divisão de N por 2 
 se ( resto = 0 ) então 
 ‘ N é um número PAR ‘; 
 senão 
 ‘ N é um número IMPAR ‘; 
 fimse 
 
fim 
 
 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
11 
 
2.3 Alternativa Multipla 
 
Alternativa multipla, são utilizadas quando a condição a ser avaliada permite 
varias alternativas como resposta. 
 
Caso < variável > 
 alternativa 1 : Bloco de Ações 1; 
 alternativa 2 : Bloco de Ações 2; 
 alternativa 3 : Bloco de Ações 3; 
 alternativa 4 : Bloco de Ações 4; 
 caso contrário : Bloco de Ações 5; 
 
FimCaso 
 
 
Exemplo: 
 
 
Caso DIA 
 SEG : Camisa � Branca; 
 TER : Camisa � Verde; 
 QUA : Camisa � Azul; 
 QUI : Camisa � Vermelha; 
 SEX : Camisa � Amarela; 
 SAB : Camisa � Rosa; 
 DOM: Camisa � Preta; 
FimCaso 
 
 
 
 
 
 
 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
12 
 
 
3. Repetição, para expressar ação repetitivas: 
 
Quando for necessário repetir um conjunto de ações do algoritmo por um 
determinado número de vezes, utiliza-se uma estrutura de repetição, onde 
um conjunto de ações são repetidas dependendo de uma condição ser 
satisfeita. 
 
repita 
 
< ação 1 >; 
< ação 2 >; 
. . . 
 enquanto < condição > 
 
exemplo: algoritmo para calcular o somatório dos número de 1 a N 
inicio 
 int N = 7; // definir ou conhecer o valor de N 
int somatorio = 0; // definir o valor inicial do somatório 
 repita 
 somatorio = somatorio + N; 
 N = N – 1; 
 enquanto ( N > 0 ); 
 
fim 
 
 Para estruturas repetitivas temos 2 grupos distintos: 
1ª. Quando o número de repetições não é conhecida 
repita enquanto <condição> 
 Bloco de ações bloco de açõesenquanto <condição> fimenquanto 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
13 
 
 
inicio 
 int N = 7; // definir ou conhecer o valor de N 
int somatorio = 0; // definir o valor inicial do somatório 
 enquanto ( N > 0 ) 
 somatorio = somatorio + N; 
 N = N – 1; 
 fimenquanto; 
 
fim 
 
2ª. Quando o número de repetições é conhecido 
 
PARA <variável> de <valor inicial> enquanto <condição> passo <incremento> 
faça 
 Bloco de Ações; 
fimpara 
 
inicio 
 int N = 7; // definir ou conhecer o valor de N 
int somatorio = 0; // definir o valor inicial do somatório 
 para k de N enquanto k > 0 passo -1 
 somatorio = somatorio + k; 
 fimpara; 
 
fim 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
14 
 
 
Operadores relacionais e lógicos 
 
Na condição das estruturas alternativas e repetitivas, utilizam-se operadores: 
 
1. relacionais: 
 
• menor: operador < ex: X < Y; 
• maior: operador > ex: X > Y; 
• igual: operador = ex: X = Y; 
• menor ou igual: operador <= ex: X <= Y; 
• maior ou igual: operador >= ex: X >= Y; 
• diferente: operador <> ex: X <> Y; 
 
 
 
2. lógicos: 
• multiplicação lógica: operador e ex: P e Q; 
• adição lógica: operador ou ex: P ou Q; 
• negação: operador ~ ex: ~P; 
 
tabela verdade: 
P Q P e Q P ou Q ~P 
V V V V F 
V F F V F 
F V F V V 
F F F F V 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
15 
 
 
Exercícios Resolvidos 
 
Note que as soluções aqui apresentadas, são relativas aos exercícios resolvidos no 
capítulo anterior e que os algoritmos apresentados, representam o passo 3 da solução, 
de modo que a solução no passo 3 pode ser apresentada tanto na forma descritiva do 
capítulo 2, ou em PORTUGOL como apresentado abaixo. 
 
 
 
Passo 3 do exercício resolvido 1.01 
inicio 
 int N � 7; // número que se deja conhecer seu quadrado 
 int Quadrado � N * N; 
 mostre Quadrado; 
fim 
 
Passo 3 do exercício resolvido 1.02 
inicio 
 real Peso � 80,0; 
 real Altura � 1,82; 
 real IMC � Peso / ( Altura * Altura ); 
 mostre IMC; 
fim 
 
Passo 3 do exercício resolvido 1.03 
inicio 
 real Valor_ME � 100,00; 
 real IC � 2,55; 
 real Valor_Reais � Valor_ME * IC; 
 mostre Valor_Reais; 
fim 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
16 
 
Passo 3 do exercício resolvido 2.01 
Inicio 
 int N � 7; 
 int Resto � N % 2; 
 se ( Resto = 0 ) entao 
 mostre ‘ o número é PAR ’ 
 senão 
 mostre ‘ o número é IMPAR ’; 
 fimse 
 fim 
 
Passo 3 do exercício resolvido 2.02 
Inicio 
 real P1 � 7,0; 
 real P2 � 8,5; 
 real Media � ( P1 + P2 ) / 2; 
 se ( Media < 6,00 ) entao 
 mostre ‘ o aluno está REPROVADO ’ 
 senão 
 mostre ‘o aluno está APROVADO’; 
 fimse 
 fim 
 
Passo 3 do exercício resolvido 2.03 
Inicio 
 int A � leia valor do lado A; caracter TipoA � leia tipo do lado A; 
 int B � leia valor do lado B; caracter TipoB � leia tipo do lado B; 
 int C; 
caracter TipoC � ”Cateto”; 
 se ( TipoA = “Hipotenusa”) entao C � A*A – B*B; fimse; 
 se ( TipoB = “Hipotenusa”) entao C � B*B – A*A; fimse; 
 se ( ( TipoA = “Cateto” ) e ( TipoB = “Cateto” ) ) entao 
 C � A*A + B*B; 
TipoC � “Hipotenusa”; 
 fimse 
mostre RaizQuadrada ( C ); 
mostre TipoC; 
 fim 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
17 
 
Passo 3 do exercício resolvido 3.01 
 inicio 
 int N � leia valor N; 
 int k � 1; 
 caracter sequencia � “”; 
 repita 
 sequencia � sequencia + caracter ( k ); 
 k � k + 1; 
 enquanto ( k <= N ); 
 mostrar sequencia; 
 fim 
 
Passo 3 do exercício resolvido 3.02 
 inicio 
 int N � leia valor N; 
 int k � 1; 
 int somatorio � 0; 
 repita 
 somatorio � somatorio + k 
 k � k + 1; 
 enquanto ( k <= N ); 
 mostrar somatorio; 
 fim 
 
Passo 3 do exercício resolvido 3.03 
 inicio 
 int N � leia valor N; 
 int fatorial � 1; 
 repita 
 fatorial � fatorial * N 
 N � N - 1; 
 enquanto ( N > 0 ); 
 mostrar fatorial; 
 fim 
 
INTRODUÇÃO a PROGRAMAÇÃO de COMPUTADORES 
para CURSOS de ENGENHARIA e de AUTOMAÇÃO 
 
Página 
 
18 
 
Passo 3 do exercício resolvido 4.01 
 inicio 
 int N � leia valor de N; // número a ser verificado se PRIMO 
 int k � 2; 
 bool Primo � True; 
 repita 
 int resto N % k; 
 se ( resto <> 0 ) entao 
Primo � false; 
fimse; 
k � k + 1; 
 enquanto ( Primo e ( k < N ) ); 
 mostrar Primo; 
 fim 
 
 // outra solução 
 inicio 
 int N � leia valor de N; // número a ser verificado se PRIMO 
 int k � 2; 
 bool Primo � True; 
 repita 
 Primo � ( N % k ) <> 0; 
k � k + 1; 
 enquanto ( Primo e ( k < ( N / 2 ) ); 
 mostrar N, Primo; 
 fim

Outros materiais