Escolar Documentos
Profissional Documentos
Cultura Documentos
Manual de
Algoritmos
MEDIATICA l Manual l
MD_028.20160302.Vs.0
Manual de Algoritmos
2
BENEFÍCIOS E CONDIÇÕES DE UTILIZAÇÃO
Este manual deverá constituir-se como um instrumento privilegiado de apoio ao formando, que
aborda e desenvolve todos os conteúdos que serão integrados neste módulo do curso. Poderá
ser utilizado no decorrer da formação como um instrumento de consulta, assim como no período
pós formação para esclarecimento de dúvidas acerca dos temas abrangidos.
OBJETIVOS
MEDIATICA l Manual l
MD_028.20160302.Vs.0
Manual de Algoritmos
Índice
1. Introdução............................................................................................................... 5
2. Componentes básicos de um computador ............................................................. 5
3. Linguagens ............................................................................................................. 7
3.1. Linguagem Máquina e Assembler................................................................................. 7
3.2. Linguagem Natural ....................................................................................................... 7
4. Conceito de Algoritmo ............................................................................................ 8
4.1. Constituição de Um Algoritmo .................................................................................... 10
4.2. Representações de um Algoritmo ............................................................................... 11
4.2.1. Fluxograma ................................................................................................... 11
4.2.2. Pseudocódigo ............................................................................................... 12
5. Representação de dados...................................................................................... 12
5.1. Tipos Primitivos .......................................................................................................... 13
5.2. Identificação ............................................................................................................... 16
5.3. Atribuição ................................................................................................................... 17
5.4. Entrada de dados ....................................................................................................... 18
5.5. Saída de dados .......................................................................................................... 18
5.6. Operadores ................................................................................................................ 18
6. Estruturas de Condição ........................................................................................ 21
6.1. Estrutura de Condição Simples: Se .. Então ............................................................... 22
6.2. Estrutura de Condição Composta: Se-Então-Senão ................................................... 22
6.3. Estruturas de Condição Encadeadas .......................................................................... 23
6.4. Estrutura de Condição Múltipla: Selecionar Caso ....................................................... 25
7. Estruturas de Repetição ....................................................................................... 25
7.1. Ciclo Para-For ............................................................................................................ 26
7.2. Ciclo Enquanto - While ............................................................................................... 27
7.3. Ciclo Repetir - Repeat ................................................................................................ 27
8. Conclusão............................................................................................................. 28
9. Bibliografia ............................................................................................................ 29
MD_028.Vs.1.20160822
Manual de Algoritmos
Índice de Figuras
Figura 1 - CPU - Unidade Central de Processamento ___________________________________ 5
Figura 2 - RAM - Random Access Memory ___________________________________________ 6
Figura 3 - Periféricos_____________________________________________________________ 6
Figura 4 - Barramentos ___________________________________________________________ 6
Figura 5 – Fases de um algoritmo _________________________________________________ 10
Figura 6 - Simbologia de um fluxograma ____________________________________________ 11
Figura 7 - Exemplo de fluxograma _________________________________________________ 11
Figura 8 - Diferentes formas de resolver um problema _________________________________ 12
Figura 9 - Sistemas de numeração _________________________________________________ 13
Figura 10 - Tipos de dados numéricos ______________________________________________ 14
Figura 11 - Tipos de dados caracter ________________________________________________ 15
Figura 12 - Tipos de dados String__________________________________________________ 15
Figura 13 - Tipos de dados lógicos _________________________________________________ 15
Figura 14 - Atribuição ___________________________________________________________ 17
Figura 15 - Entrada de dados _____________________________________________________ 18
Figura 16 - Saída de dados ______________________________________________________ 18
Figura 17 - Operadores aritméticos ________________________________________________ 19
Figura 18 - Operadores relacionais ________________________________________________ 20
Figura 19 - Tabela operadores lógicos ______________________________________________ 20
Figura 20 - Operadores lógicos ___________________________________________________ 21
Figura 21 - Algoritmo maior de idade _______________________________________________ 22
Figura 22 - Estrutura Se Então Senão ______________________________________________ 23
Figura 23 - Algoritmo maior de idade com estrutura Se Então Senão ______________________ 23
Figura 24 - Estrutura Se Então Senão encadeado _____________________________________ 24
Figura 25 - Selecionar Caso ______________________________________________________ 25
Figura 26 - Algoritmo Selecionar Caso ______________________________________________ 25
Figura 27 - Ciclo Para - For ______________________________________________________ 26
Figura 28 - Algoritmo Para - For ___________________________________________________ 26
Figura 29 - Enquanto - While _____________________________________________________ 27
Figura 30 - Algoritmo Enquanto - While _____________________________________________ 27
Figura 31 - Repetir - Repeat ______________________________________________________ 28
Figura 32 - Algoritmo Repetir - Repeat ______________________________________________ 28
MD_028.Vs.1.20160822
Manual de Algoritmos
1. Introdução 5
MD_028.Vs.1.20160822
Manual de Algoritmos
Figura 3 - Periféricos
Figura 4 - Barramentos
MD_028.Vs.1.20160822
Manual de Algoritmos
3. Linguagens 7
MD_028.Vs.1.20160822
Manual de Algoritmos
nossa comunicação gestos e posturas, que não podem ser diretamente adaptados para 8
compreensão de uma máquina. Por fim, toda a comunicação eficiente pressupõe um conhecimento
prévio comum entre os interlocutores, por exemplo a mesma língua, a mesma bagagem cultural e
assim por diante. Ao contrário dos seres humanos, os computadores são projetados para executar
tarefas bem determinadas a partir de determinadas instruções. Um computador não é por si só uma
máquina com inteligência, no sentido de que não pode aprender com a própria experiência para
melhorar o seu comportamento, apesar de que os algoritmos mais avançados já o façam em certa
medida. Ao contrário, um computador é somente capaz de realizar estritamente as tarefas que lhe
forem delegadas e que façam parte do conjunto daquelas ações que ele pode executar. Neste
sentido, é necessário compreender que tipo de instruções podem ser executadas pelos
computadores para que os possamos programá-los — instruí-los com a sequência de ações
necessárias para resolver um determinado problema — de modo que realizem a tarefa do modo
desejado.
4. Conceito de Algoritmo
Um algoritmo pode ser definido como uma sequência finita de passos (instruções) para resolver um
determinado problema. Para tal, é necessário obedecermos a algumas premissas básicas no
momento da sua construção:
Vamos desenvolver um algoritmo, ou seja, vamos descrever um conjunto finito de passos para
resolver este problema que é trocar o pneu do carro!
1: Desligar o carro
2: Sair do carro e ir buscar as ferramentas (chave e macaco)
3: Tirar o pneu suplente
4: Colocar o macaco e suspender o carro
5: Desenroscar as porcas do pneu furado
6: Tirar o pneu furado
7: Colocar o pneu novo
MD_028.Vs.1.20160822
Manual de Algoritmos
8: Enroscar as porcas 9
9: Baixar o carro com o macaco
10: Guardar as ferramentas e o pneu furado
Este é um exemplo simples de algoritmo (pois não tem condições ou repetições) para troca de um
pneu. Podíamos ter algumas variações deste algoritmo, mas na sua essência são estes os passos
básicos a realizar para trocar um pneu furado.
Vamos agora conceber um algoritmo para resolver um problema que é apanhar um autocarro, mas
neste caso com ações e ciclos de repetição. No algoritmo 2 estão ilustradas as tarefas anteriormente
mencionadas, mas nas linhas de 2 a 4 pode-se observar a repetição de uma ação, enquanto uma
dada condição seja verdadeira. Neste caso em específico, o algoritmo está a repetir a ação ‘esperar
autocarro’ enquanto a condição ‘autocarro não chega’ permanecer verdadeira. Assim que essa
condição se tornar falsa (ou seja, quando o autocarro chega) o algoritmo deixará de repetir a ação
’esperar autocarro’, e irá executar a linha 5 – ‘entrar no autocarro’. Já nas linhas de 7 a 9, é
possível observar um exemplo da execução (ou não execução) de uma ação com base na avaliação
de uma expressão. Podíamos executar mais algumas ações, mas para já o objetivo é entendermos
que podem existir condições e ciclos num algoritmo.
MD_028.Vs.1.20160822
Manual de Algoritmos
Como vimos neste algoritmo temos estruturas de condição e controlo que serão estudadas em 10
detalhe mais à frente.
Um algoritmo quando programado num computador é constituído pelo menos por 3 partes, sendo
elas:
1. Entrada de dados;
2. Processamento de dados;
3. Saída de dados;
Na parte de entrada são fornecidas as informações necessárias para que o algoritmo possa ser
executado. Estas informações podem ser fornecidas no momento em que o programa está a ser
executado ou podem estar embutidas dentro do mesmo.
Na parte do processamento são avaliadas todas as expressões algébricas, relacionais e lógicas,
assim como todas as estruturas de controlo existentes no algoritmo (condição e/ou repetição).
Na parte de saída, todos os resultados do processamento (ou parte deles) são enviados para um
ou mais dispositivos de saída, como monitor ou impressora ou até mesmo a própria memória do
computador.
Por exemplo, considere o algoritmo 3 que tem como objetivo calcular a área de uma circunferência
dada por Área = πR2. Para calcular a área é necessário saber os valores do raio R e do π.
Considerando que o valor de π é constante (3,1415….) o mesmo poderá ser gravado (definido)
dentro do próprio algoritmo, e a entrada para o processamento desse algoritmo consistirá nesse
valor, juntamente com o valor do raio R, que deve ser inserido pelo utilizador pelo teclado, por
exemplo. O processamento do algoritmo será a realização do cálculo π*R2 e a atribuição do
resultado dessa expressão para a variável A. A parte da saída consistirá na escrita do valor de A
no monitor.
Algoritmo 3 – Calcular a área de uma circunferência.
1: π ← 3.1415 {entrada para o processamento}
2: ler R {entrada para o processamento}
3: A ← π ∗ R2 {processametno}
4: escrever A {saída}
MD_028.Vs.1.20160822
Manual de Algoritmos
4.2.1. Fluxograma
Os fluxogramas são uma apresentação do algoritmo em formato gráfico. Cada ação ou situação é
representada por uma forma gráfica. As tomadas de decisões são indicadas por caixas especiais,
possibilitando ao fluxo de ações tomar caminhos distintos.
MD_028.Vs.1.20160822
Manual de Algoritmos
4.2.2. Pseudocódigo
5. Representação de dados
Para que seja possível armazenar e manipular dados no computador é necessário representá-los
internamente de alguma forma. Os seres humanos, representam os números usando um sistema
que chamamos de sistema decimal (ou sistema na base 10). Esse sistema, que se originou do facto
de utilizarmos os 10 dedos das mãos para realizarmos as nossas contas, possui 10 diferentes
MD_028.Vs.1.20160822
Manual de Algoritmos
Um único algarismo binário é chamado bit, uma sequência de 8 bits é um byte e uma sequência de
32 ou 64 bits é uma palavra.
Os dados num computador devem ser armazenados de acordo com o tipo de informação que se
deseja representar e com o tipo de operação que será realizada com eles. A representação correta
e adequada de uma informação permite otimizar os recursos computacionais disponíveis, além de
acelerar o processamento. A seguir são definidos os tipos de dados mais comuns encontrados na
MD_028.Vs.1.20160822
Manual de Algoritmos
maioria das linguagens de programação e que constituem a base de como qualquer informação 14
será armazenada no mesmo.
• Inteiro
São os números pertencentes ao conjunto dos Inteiros, isto é, que não possuem parte fracionária.
Podem ser positivos, nulos ou negativos. Exemplos: 2 laranjas, calçado tamanho 42, 65535 grãos,
0 pessoas na fila, multa de -2 pontos no campeonato.
• Real
São os números pertencentes ao conjunto dos Reais, isto é, que podem possuir parte fracionária.
Também são chamados de ponto flutuante devido à maneira como o computador os armazena.
Exemplos: 2.12 litros de combustível, −3.5 ◦C, π = 3.141592654, saldo de €$ 10.52.
• Caracter
São os valores pertencentes ao conjunto de todos os caracteres numéricos (0...9), alfabéticos
(a...z,A...Z) e especiais (! @ # $ % & *). Esse conjunto também é conhecido como conjunto de
caracteres alfanuméricos. Os caracteres alfanuméricos são armazenados internamente no
computador na forma numérica (binária) utilizando o padrão ASCII (American Standard Code for
Exemplos de informações do tipo caractere: "João Cardoso", "Rua Ismael Soares, nº 15". Nestes
exemplos, as aspas duplas (") são usadas para indicar o início e o fim da cadeia de caracteres,
porém não fazem parte da informação contida nas mesmas. É importante salientar que o espaço
em branco entre as palavras também é um caractere. Algumas linguagens de programação utilizam
tipos diferentes para representar um caractere isolado e uma cadeia (ou sequência) de caracteres.
Um exemplo comum é a linguagem Pascal, que utiliza o tipo char para representar um único
caractere, e o tipo string para representar um conjunto de caracteres agrupados.
MD_028.Vs.1.20160822
Manual de Algoritmos
15
• Lógico
O tipo lógico é utilizado para representar informações que só podem assumir dois valores, o valor
verdadeiro (V) ou o valor falso (F). Estes valores também podem ser entendidos como:
ligado/desligado, 1/0, alto/baixo, fechado/aberto, etc. Exemplos de informações que podem ser
representadas utilizando o tipo lógico são: o fogão está apagado, a televisão está ligada, o portão
está aberto, o produto foi encontrado.
• Constantes e Variáveis
Dentro de um algoritmo podemos encontrar basicamente duas classes diferentes de dados: os
dados constantes e os variáveis. Um dado é constante quando o seu valor não se altera ao longo
do tempo em que o algoritmo é executado, ou seja, permanece o mesmo desde o início até o final
da execução.
Já um dado que pode ter o seu valor alterado durante a execução do programa é tido como uma
variável. Por exemplo, no cálculo da área de uma circunferência (A = π r2), o valor de π é constante,
pois é sempre igual a 3.1416..., e o raio r é variável, pois pode assumir diferentes valores a cada
MD_028.Vs.1.20160822
Manual de Algoritmos
cálculo da área. Seguindo a mesma lógica, a área A calculada para diferentes r também é variável. 16
5.2. Identificação
Para que os dados sejam manipulados no computador, é necessário que estes estejam associados
a um nome, um identificador. O conteúdo deste identificador será o dado em si e o seu nome será
usado para aceder ao dado e realizar operações com o mesmo. A nomeação dos identificadores
deve obedecer a algumas regras, sendo elas:
1. Sempre começar com um caractere alfabético;
2. Pode ser seguido por um ou mais caracteres alfanuméricos;
3. Não conter caracteres especiais nem espaços com exceção do underscore ’_’ (essa exceção
também vale para a regra do item 1, ou seja, é permitido iniciar a nomeação de um identificador
com ’_’);
4. Não é permitido utilizar palavras reservadas (palavras próprias da linguagem de programação,
como os comandos, tipos de variáveis, etc).
Exemplos de identificadores válidos: raio, _nome, R, num_clientes, BJ33f15, NumPessoasDoentes.
Exemplos de identificadores inválidos: (ee), 32-vr, mil*, 12ddd, o:P
Ao nomearmos os identificadores dos nossos dados é conveniente usarmos palavras mnemónicas,
ou seja, palavras que nos façam lembrar o tipo do conteúdo armazenado. Isso facilita a leitura do
código programado e possibilita uma melhor documentação do mesmo. Por exemplo, ao
armazenarmos o nome completo, a idade e a quantidade de filhos de uma pessoa, é mais prático e
coerente usarmos os identificadores NomeSobrenome, Idade e NumFilhos do que usarmos nomes
aleatórios como X, Y e Z.
Como dito anteriormente, ao longo do programa o dado será manipulado através do nome do seu
identificador, sendo assim, o primeiro passo para utilizarmos os dados é a nomeação do seu
idenficador e a definição do seu tipo (no caso de identificadores variáveis), ou do seu valor (no caso
de identificadores constantes).
A definição dos dados em algoritmos também é conhecida como declaração. Um identificador
(sendo ele variável ou constante) declarado com um determinado tipo de dados ficará restrito a
armazenar valores daquele tipo específico (inteiro, real, caractere, lógico). Na maioria dos casos,
se houver uma tentativa de atribuir a um identificador um tipo diferente daquele para o qual ele foi
MD_028.Vs.1.20160822
Manual de Algoritmos
definido irão ocorrer erros de compilação, de execução ou até mesmo perda de dados 17
Ao declaramos um identificador variável, estamos a reservar na memória do computador um espaço
para armazenar valores do tipo declarado para o mesmo.
5.3. Atribuição
Após realizada a declaração de um identificador, é possível iniciar a manipulação dos dados que
esse identificador irá representar a partir da atribuição de valores ao mesmo. Esse processo de
atribuir ou alterar o valor dos dados de um identificador é chamado de atribuição e é representado
pelo símbolo ← quando estivermos a trabalhar com identificadores variáveis, e pelo símbolo =
quando estivermos a trabalhar com identificadores constantes.
A instrução designada por atribuição permite atribuir o valor de uma expressão a uma variável. A
variável que aparece no lado esquerdo da instrução vai assim receber o valor da expressão que
aparece no lado direito da mesma instrução. Do lado direito da atribuição podemos ter: um número,
um texto, o resultado de um cálculo ou o conteúdo de uma outra qualquer variável. Na figura
seguinte é apresentada a sintaxe proposta para a atribuição.
Figura 14 - Atribuição
MD_028.Vs.1.20160822
Manual de Algoritmos
Uma variável pode armazenar apenas um único valor por vez, sendo que sempre que um novo valor 18
é atribuído à variável o valor anterior que estava armazenado na mesma é perdido.
No caso dos identificadores constantes a atribuição é feita no momento da definição do mesmo
(como apresentado na seção de declaração), sendo assim, os exemplos e explicações que seguem
são restritas aos identificadores variáveis que designamos apenas de variáveis.
As instruções de escrita permitem fazer a saída de dados (tipicamente para o écran) sejam estes
variáveis e/ou textos e/ou resultado de cálculos. Na figura 16 é apresentada a sintaxe proposta para
a escrita de uma ou várias variáveis.
5.6. Operadores
MD_028.Vs.1.20160822
Manual de Algoritmos
Quando uma expressão aritmética precisa de ser avaliada num algoritmo, o analisador processa a
expressão dando prioridade para certos operadores. Os parêntesis são as prioritárias, seguidas das
multiplicações, divisões, DIV e MOD e no final as adições e subtrações.
Os operadores do tipo DIV e MOD só podem ser aplicados a valores do tipo inteiro, resultando
valores inteiros também.
Quanto às expressões lógicas, são aquelas cujo valor só pode ser verdadeiro ou falso. São
compostas por operadores relacionais, operadores lógicos, e por identificadores variáveis ou
constantes do tipo lógico. As expressões lógicas também podem ser compostas por resultados de
expressões aritméticas. Os operadores relacionais são aqueles que comparam dois valores do
mesmo tipo. O retorno da expressão relacional indica se o resultado da comparação foi verdadeiro
ou falso. Por exemplo, a expressão 2 < 3 é uma expressão lógica válida cujo valor é verdadeiro. Em
contrapartida, a expressão 2 = 8 é uma expressão lógica também válida, mas cujo valor é falso. Na
próxima tabela podemos ver essas operações.
MD_028.Vs.1.20160822
Manual de Algoritmos
20
Os operadores lógicos são usados para representar situações lógicas que não podem ser
representadas por operadores aritméticos. Podem ser operadores binários, que operam em duas
sentenças ou expressões, ou unário que opera numa sentença só.
O primeiro deles é o operador binário de conjunção ou e lógico, representado por ∧ ou AND. Quando
MD_028.Vs.1.20160822
Manual de Algoritmos
duas expressões são unidas por este operador, a expressão resultante só é verdadeira se ambas 21
as expressões constituintes também são. Por exemplo “chuva e vento” só é verdadeiro se as duas
coisas forem verdadeiras, “chuva” e também “vento”. Se uma das sentenças não ocorrer, a sentença
como um todo é falsa. O segundo operador é o operador binário de disjunção ou ou lógico,
representado por ∨ ou OR. Neste caso, se qualquer uma das expressões constituintes for
verdadeira, a expressão completa também será. Por exemplo, “vou à praia ou vou ao campo” é uma
sentença verdadeira caso qualquer uma das duas ações acontecer, ou ambas. É verdadeira, se for
à praia e não ao campo, se for ao campo e não à praia ou se for a ambos. Para o caso em que
deve-se garantir que somente uma das sentenças aconteça, define-se o operador ou-exclusivo, cujo
símbolo é ⊕ ou XOR. Como o nome diz, é semelhante ao operador ou com exclusividade na
veracidade dos operandos, isto é, somente um dos operandos pode ser verdadeiro. No exemplo
anterior, a sentença composta só seria verdadeira se fosse à praia ou ao campo, mas não ambos.
O NOT é a negação de um valor lógico, ou seja, se o valor for V então o resultado é F e vice-versa.
Na tabela seguinte vemos estes operadores num exemplo prático.
6. Estruturas de Condição
Num processo geral de execução de um algoritmo implementado numa linguagem de programação,
a execução começa na primeira linha e vai avançando sequencialmente executando o código linha
após linha até chegar no final. Entretanto, frequentemente surge a necessidade de colocar
instruções dentro de um programa que só serão executadas caso alguma condição específica
MD_028.Vs.1.20160822
Manual de Algoritmos
aconteça. Para esta finalidade, a maioria das linguagens possui estruturas de condição para realizar 22
esta tarefa.
Como vimos, podemos solicitar valores de entrada aos utilizadores do sistema utilizando o comando
leia(), e podemos ainda enviar valores de saída do sistema por meio do comando escreva().
Entretanto, as possibilidades de construção de algoritmos que temos até o presente momento são
bastante limitadas, pois ainda não estamos aptos a tomar decisões durante o tempo de execução
do algoritmo, ou até mesmo de classificar determinados valores de variáveis. Por exemplo,
considere que precisamos desenvolver um algoritmo que classifique uma determinada pessoa entre
maior de idade ou menor de idade. Para esse problema sabemos que precisamos avaliar a idade
da pessoa, e que se essa idade for maior (ou igual) que 18 anos a pessoa é considerada maior de
idade. Neste caso, para um intervalo de valores da idade o algoritmo executa um conjunto de ações
e para outro intervalo executa um outro conjunto de ações. Neste tipo de situação, onde um
determinado valor é avaliado para a partir do resultado dessa avaliação executar alguma ação,
utilizamos as estruturas de condição. A estrutura de condição mais simples é a se-então, utilizada
da seguinte forma:
se <expressão-lógica> então
<bloco de comandos>
fim-se
O algoritmo da figura 21 resolve o nosso problema quando a pessoa é maior de idade, porém não
nos dá nenhum retorno para quando a mesma for menor de idade. Para contornar esse tipo de
situação, a estrutura de condição se-então, oferece a possibilidade de executarmos uma
determinada ação ou comando se o resultado da expressão lógica for verdadeiro e de executarmos
uma ação diferente se o resultado da expressão lógica for falso. Para essas situações é utilizado o
comando senão, como mostrado abaixo.
MD_028.Vs.1.20160822
Manual de Algoritmos
23
se <expressão-lógica> então
<bloco de comandos verdade>
senão
<bloco de comandos falso>
fim-se
Dentro de uma estrutura se-então-senão é perfeitamente possível utilizarmos mais do que uma linha
de comando, ou até mesmo outras estruturas se-então-senão. Existem situações em que os
caminhos para a tomada de uma decisão acabam por formar uma espécie de árvore com diversas
MD_028.Vs.1.20160822
Manual de Algoritmos
ramificações, onde cada caminho é um conjunto de ações. Nesses casos podemos recorrer à 24
utilização de várias estruturas se-então-senão embutidas umas dentro das outras.
se EL1 então
se EL2 então
BV2
senão
BF2
fim-se
senão
se EL3 então
BV3
senão
BF3
fim-se
fim-se
Nas estruturas de decisão encadeadas, uma estrutura de condição é aninhada dentro de outra,
como bloco verdade ou falso. Neste caso, para que a estrutura de condição mais interna seja
avaliada, é necessário que uma determinada condição seja satisfeita na estrutura de condição mais
externa. Considere a estrutura aninhada no algoritmo anterior, onde EL significa expressão lógica,
BV bloco verdade e BF bloco falso. Para que BV2 seja executado é necessário que a EL1
juntamente com EL2 sejam verdadeiras. Se EL1 for verdadeira mas EL2 for falsa, então é BF2 que
será executado.
MD_028.Vs.1.20160822
Manual de Algoritmos
Uma outra alternativa para trabalhar com comandos condicionados a um determinado valor é a
estrutura Selecionar Caso. Nessa estrutura o valor de uma determinada variável é avaliado e caso
esse valor coincida com determinado valor pré-estabelecido um de terminado comando é
executado. A estrutura de condição Selecionar Caso é utilizada da forma mostrada a seguir:
Na imagem seguinte vemos um exemplo desta condição em que conforme o número inserido, é
mostrado o dia da semana.
7. Estruturas de Repetição
Uma das principais características que consolidaram o sucesso na utilização dos computadores
para a resolução de problemas foi a sua capacidade de repetir o processamento de um conjunto de
operações para grandes quantidades de dados. Exemplos de conjuntos de tarefas que repetimos
MD_028.Vs.1.20160822
Manual de Algoritmos
diversas vezes dentro de uma situação específica podem ser observados largamente no nosso dia 26
a dia. A estrutura de repetição provém de uma maneira de repetir um conjunto de procedimentos
até que determinado objetivo seja atingido, quando a repetição se encerra. Todas as estruturas de
repetição têm em comum o fato de haver uma condição de controlo, expressa através de uma
expressão lógica, que é testada em cada ciclo para determinar se a repetição prossegue ou não.
O seguinte algoritmo é um exemplo prático deste ciclo que calcula a média de n números inteiros.
MD_028.Vs.1.20160822
Manual de Algoritmos
No algoritmo seguinte temos um exemplo prático deste ciclo em que calcula o numero de nomes
inseridos pelo utilizador.
MD_028.Vs.1.20160822
Manual de Algoritmos
28
No algoritmo seguinte temos um exemplo prático deste ciclo em que calcula o perímetro de um
retanguloaté que o utuilzador escolha terminar.
8. Conclusão
Neste manual foram abordados os conceitos fundamentais do módulo. Começamos por ver os
principais componentes de um computador e, em seguida, estudamos as linguagens usadas em
algoritmia. Depois vimos o conceito e constituição de um algoritmo e a sua representação, quer seja
por um fluxograma ou por pseudocódigo. Estudamos ainda os tipos de dados existentes e, por fim,
vimos as estruturas de condição e repetição. Este manual permite ser um trampolim para quem se
quer iniciar na área da programação.
MD_028.Vs.1.20160822
Manual de Algoritmos
9. Bibliografia 29
MD_028.Vs.1.20160822