Buscar

02 - Algoritmos

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 10 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 10 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 10 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

Algoritmos 
 
2.1 Tipos de Valores 
Um algoritmo, que conforme já visto, constitui-se em uma seqüência de instruções a serem 
executadas para a obtenção da solução de um determinado problema, pode manipular vários valores. 
Esses valores podem ser os dados apresentados pelo problema, ou dados intermediários gerados 
durante a execução do algoritmo, ou mesmo os valores que representam a solução do problema. 
Sejam, por exemplo, as informações relativas a um funcionário de uma empresa: 
 
Nome : José da Silva 
Idade : 25 
Sexo : M 
Salário : 1200.00 
 
Veja que, nesse pequeno exemplo, vários valores foram utilizados. Note que, José da Silva é 
um valor que representa o nome do funcionário, assim como 25 é um valor que representa a idade do 
funcionário. Com o valor 1200.00, que representa o salário do funcionário, poderíamos, por exemplo, 
efetuar uma multiplicação, se assim fosse necessário. Já com o valor José da Silva, essa operação não 
faria qualquer sentido. 
 
Assim, podemos concluir que os valores manipulados dentro de um algoritmo podem ser 
classificados em vários tipos, cada tipo com suas próprias características e operações. Cada linguagem 
de programação tem sua própria classificação. Em nosso pseudocódigo, classificaremos os valores nos 
seguintes tipos básicos: 
 
 Inteiro 
 Real 
 Caractere 
Literal 
 Lógico 
 
Valores tipo Inteiro 
 
São valores que representam quantidades numéricas inteiras, tais como a idade de uma pessoa, o 
número de funcionários de uma empresa, o número de páginas deste livro, etc. 
 
Exemplos de valores do tipo inteiro: 
17 
-5 
+90 
0 
 
Valores tipo Real 
 
São valores que representam quantidades reais, ou seja, valores que apresentam parte decimal, tais 
como o salário de um funcionário, a média de um conjunto de valores, a altura de uma pessoa, etc. 
Vamos assumir que os valores reais serão sempre representados utilizando-se o ponto decimal. 
Exemplos de valores do tipo real: 
4.5 
1200.93 
-0.00005 
+15.0 
0.0 
 
Valores tipo Caractere 
 
São valores utilizados para representar informações onde apenas um caractere é necessário, tais 
como o valor do sexo de uma pessoa (M ou F), uma letra do alfabeto, etc. Todo valor do tipo 
caractere apresenta apenas um caractere. Vamos assumir que valores do tipo caractere devem 
sempre ser especificados entre apóstrofos. Veja que qualquer caractere constitui-se em um valor do 
tipo caractere. 
 
Exemplos de valores do tipo caractere: 
‘*’ 
‘I’ 
‘5' 
'i ' 
(espaço) 
 
Valores tipo Literal 
 
São utilizados na representação de informações onde se faz necessária a utilização de zero ou 
mais caracteres, tais como o nome de uma pessoa, o nome de uma cidade, uma determinada 
frase, etc. Um valor do tipo literal constitui-se em uma seqüência de zero ou mais caracteres 
especificados entre apóstrofos. 
 
Exemplos de valores do tipo literal: 
'Antonio da Silva' 
'Rua Felipe Schmidt' 
'Olho d"agua' 
'1234' 
" (literal nulo) 
 
Valores tipo Lógico 
 
São apenas dois valores: Verdadeiro e Falso. São utilizados na representação do valor de uma 
expressão lógica ou afirmações, tais como 6 > 4 (Verdadeiro) ou "A terra gira em torno da lua" 
(Falso). 
 
2.2 Variáveis 
 
Conforme apresentado anteriormente, uma posição de memória sempre armazena um 
determinado valor. Se outro valor for atribuído à posição, então o valor anterior será destruído. 
Assim, o conteúdo de uma posição de memória pode variar durante a execução de um algoritmo. 
Dessa forma, passaremos a denominar uma posição de memória de Variável. 
 
Nome das Variáveis 
 
Cada linguagem de programação tem suas próprias regras para formação do nome de uma 
variável. Assumiremos para o nosso pseudocódigo a seguinte regra: 
 
O nome de uma variável pode ser composto por letras, dígitos e o caractere 
sublinhado (_), sendo que o primeiro caractere deve ser uma letra. 
 
Assumiremos também que, para nomes de variáveis, o uso de letras maiúsculas ou 
minúsculas é indiferente. Assim, os nomes Salario e SALARIO identificam a mesma variável. 
 
Tipo das Variáveis 
 
Uma variável é uma posição de memória e, portanto, armazena sempre determinado valor. 
Assim, cada variável utilizada em um algoritmo deverá ser declarada de um determinado tipo, de 
acordo com o tipo de valor que irá armazenar. Dessa forma, se uma variável for declarada como 
sendo do tipo Inteiro, então esta só poderá receber valores do tipo inteiro. Considerando essas 
novas informações, o nosso algoritmo visto no Capítulo 1, que calcula a média aritmética de três 
valores inteiros, fica conforme segue. 
 
Algoritmo Media_Aritmetica 
Variáveis 
Valor_a, Valor_b, Valor_c, Soma : Inteiro 
Media : Real 
 
Inicio 
Leia Valor_a 
Leia Valor_b 
Leia Valor_c 
Soma  Valor_a + Valor_b + Valor_c 
Media  Soma/3 
Escreva Media 
Fim 
 
Observe que demos um nome ao nosso algoritmo. Não colocamos comentários a respeito 
das instruções, os quais poderiam ser especificados entre chaves. A colocação de comentários, 
também chamada de documentação, é importante para análise e manutenção futura, pois 
conferirá maior clareza ao algoritmo. Todo comentário será especificado entre chaves. Observe 
também que cada uma das variáveis utilizadas no algoritmo foi declarada como sendo de um tipo. 
Assim, a declaração: 
 
Variáveis 
Valor_a, Valor_b, Valor_c, Soma : Inteiro 
Media : Real 
 
define que as variáveis Valor_a, Valor_b, Valor_c e Soma serão do tipo Inteiro, e, portanto, 
somente valores inteiros poderão ser armazenados nelas. Já a variável Media foi declarada como 
tipo Real e, portanto, somente pode receber valor do tipo Real. 
 
2.3 Expressões 
 
Uma expressão constitui-se em um conjunto de variáveis e/ou valores, separados por caracteres 
especiais, que indicam as operações que devem ser executadas. Assim, a expressão: 
 
Valor_ a + Valor_ b + Valor_c 
 
indica o cálculo da soma dos conteúdos das variáveis Valor_a, Valor_b e Valor_c. Já o 
comando: 
 
Soma  Valor_a+ Valor_b+ Valor_c 
 
indica que o valor da expressão Valor_a+ Valor_b+ Valor_c deve ser armazenado na variável 
Soma. 
 
Seja o comando: 
 
Resultado  Valor_a < 10 
 
Nesse caso, Valor_ a < 10 constitui-se em uma expressão cujo valor pode ser 
Verdadeiro ou Falso, dependendo do valor armazenado na variável Valor_a. Assim, a expressão 
Valor_a < 10 apresenta como resultado um valor do tipo Lógico. Na variável Resultado será 
armazenado o valor Verdadeiro, se o conteúdo da variável Valor_a for menor que 10. Caso o 
conteúdo de Valor_a não seja menor que 10, então o valor da expressão Valor_a < 10 será 
Falso e a variável Resultado, que deve ser declarada do tipo Lógico, receberá o valor Falso. 
 
Os operadores básicos utilizados em uma expressão podem ser classificados em: 
Aritméticos, Relacionais e Lógicos. Os operadores aritméticos especificam operações aritméticas, 
tal como em Valor_a + Valor_b. Os operadores relacionais especificam uma relação, tal como 
em Valor_a < 10. Os operadores lógicos especificam uma operação lógica, como no comando: 
 
Resultado  (Valor_a > 10) E (Valor_a < 20) 
 
onde é utilizado o operador lógico E. Nesse exemplo, Resultado receberá o valor Verdadeiro se o 
conteúdo da variável Valor_a for maior que 10 e menor que 20; caso contrário, Resultado 
receberá o valor Falso. 
 
Operadores Aritméticos 
 
Expressam operações aritméticas. 
 
 
Operador Significado Exemplo Tipo de Operandos 
+ Adição a + b Reais e/ou Inteiros 
- Subtração a - b Reais e/ou Inteiros 
* Multipilicação a * b Reais e/ou Inteiros 
/ Divisao Real a / b Reais e/ou Inteiros 
DIV Divisao Inteira a DIV b Inteiros 
RESTO Resto da Divisão Inteira a RESTO b Inteiros 
** Exponenciação a ** b Reais e/ou Inteiros 
 
Algoritmo Exemplo 
Variáveisa, b, d, Sobra : Inteiro 
c, f : Real Inicio 
a  22 
b  4 
c  a/b 
d  aDivb 
Sobra  a Resto b 
f  2.0 ** b 
Fim 
 
Hierarquia das Operações Aritméticas 
 
Dentro de uma expressão aritmética podem aparecer várias operações. As operações aritméticas serão 
executadas de acordo com a seguinte ordem: 
 
1°) O que estiver entre parênteses; 
2°) Exponenciação; 
3°) Multiplicação, ou divisão real, ou divisão inteira, ou resto da divisão inteira; 
4°) Adição ou subtração. 
 
Quando aparecerem duas ou mais operações de mesma hierarquia, estas são executadas na ordem em 
que aparecem na expressão, da esquerda para direita. Considere, por exemplo, a fórmula a seguir: 
 
 
32
3
2
xx
b
a
y 



 
 
O comando para calcular o valor de y, de acordo com a fórmula acima, ficará: 
 
y  (2+a)/(b-3)-2*x+x**3 
 
 
De acordo com a hierarquia, no cálculo do valor da expressão, as operações serão executadas na 
seguinte ordem: 
1°) (2 + a) 
2°) (b - 3) 
3°) x**3 
4°) divisão do resultado de 1°) com resultado de 2°) 
5°) 2*x 
6°) subtração do resultado de 4°) com resultado de 5°) 
7°) adição do resultado de 6°) com o resultado de 3°) 
 
Operadores Relacionais . 
 
Expressam operações de relação. 
 
 
 
Operadores lógicos 
 
Expressam operações lógicas. As linguagens de programação, em geral, apresentam vários operadores 
lógicos. Aqui, em nosso pseudocódigo, consideraremos apenas os operadores lógicos E, 0u e Não. Veja a 
seguir alguns exemplos de comandos, com expressões que usam operadores lógicos e relacionais. 
 
Operador Significado Exemplo 
> Maior que Idade > 18 
>= Maior ou igual que Num_Dep >= 2 
< Menor que Nota < 6.0 
<= Menor ou igual que x <= 25 
= Igual Nome = ‘Antonio’ 
<> Diferente Sexo <> ‘f’ 
Foi Aprovado  (Media >= 6.0) E (Frequencia > 0.75) 
E_Contribuinte  (Salario > 1000.00) Ou (Idade < 75) 
Tem Sol  Não Esta Nublado 
 
Observe que os operadores lógicos Ou e E são aplicados sempre a dois operandos, enquanto 
que o operador Não é aplicado a um único operando. Esses operandos podem ser expressões, desde 
que tenham como resultado um valor lógico (Verdadeiro ou Falso). 
 
Operando 1 Operando 2 Resultado com E Resultado com OU 
Verdadeiro Verdadeiro Verdadeiro Verdadeiro 
Verdadeiro Falso Falso Verdadeiro 
Falso Verdadeiro Falso Verdadeiro 
Falso Falso Falso Falso 
 
Assim, a expressão (Media >= 6.0) E( Frequencia > 0.75) terá como resultado o valor 
Verdadeiro somente se as duas condições forem verdadeiras, isto é, se o conteúdo da variável Media for 
maior ou igual a 6.0 e, simultaneamente, se o conteúdo da variável Frequencia for maior que 0.75. Caso 
uma das condições seja falsa, ou mesmo se ambas forem falsas, então toda a expressão terá co mo 
resultado o valor Falso. Já a expressão (Salario > 1000.00) Ou (Idade < 75), terá como 
resultado o valor Verdadeiro, se uma das condições for verdadeira, ou se ambas forem verdadeiras. 
Assim, basta que o conteúdo da variável Salario seja maior que 1000.00 para que a expressão (Salario 
> 1000.00) Ou (Idade < 75) tenha o valor Verdadeiro. 
 
O operador Não, que deve ser aplicado a um único operando lógico, faz com que o resultado da 
operação seja o inverso do valor do operando. Assim, com a execução do comando: 
 
Tem_Sol  Não_Esta_Nublado 
 
será armazenado o valor Verdadeiro na variável Tem_Sol se o conteúdo da variável Esta_Nublado for 
Falso. Veja que, se Esta_Nublado tem o valor Falso, então a expressão Não_Esta_Nublado tem o 
valor contrário, isto é, Verdadeiro. 
 
Quando uma expressão tem como resultado um valor lógico, então denomina-se essa expressão 
de expressão lógica. 
 
2.4 Compatibilidade de Tipos 
 
O valor a ser armazenado em uma variável deve ser do mesmo tipo da variável. Assim, se em um 
algoritmo tivermos o comandos: 
 
A  10.5 
Resultado  7/2 
Aprovado  (Media >= 6.0) E (Frequencia > 0.75) 
 
então as variáveis A e Resultado deverão ser declaradas do tipo Real, pois 10.5 é um valor real, e 7/2 dá 
como resultado também um valor real. Já a variável Aprovado deve ser declarada como sendo do tipo 
Lógico, pois a expressão (Media >= 6.0) E ( Frequencia > 0.75) tem como resultado um valor 
do tipo lógico, ou seja, é uma expressão lógica. 
 
Algoritmo Exemplo2_41 
Variáveis 
Nom : Literal 
Peso, Num_Car, X : Real 
Num : Inteiro 
Inicio 
Num  5 
Nom  `Isto e um exemplo' 
Peso  100.1 
Num_Car  20 
X  3 
Nom  `Trocaram meu conteúdo' 
Peso  (Peso/X) * 0.0 
Num_Car  Num * X 
X  10 - (X + 5) 
Num_Car  Num_Car/3 
Fim 
 
Veja na tabela seguinte o acompanhamento dos valores que as variáveis assumiram durante a execução 
desse algoritmo. A execução manual de um algoritmo com a observação dos valores assumidos pelas 
várias variáveis tem por objetivo verificar possíveis problemas no algoritmo. À execução manual de um 
algoritmo também denomina-se Teste de Mesa. 
 
Num Peso Num_Car X Nom 
5 100.1 20.0 3.0 Isto é um Exemplo 
 0.0 15.0 2.0 Trocaram meu conteúdo 
 5.0 
 
O algoritmo Exemplo2_41 mostra que, durante a sua execução, o conteúdo de uma variável pode 
mudar. Entretanto, cada novo valor armazenado na variável deve ser do mesmo tipo da variável. Como 
exceção, consideraremos em nosso pseudocódigo que é permitido atribuir um valor do tipo Inteiro a 
uma variável declarada como sendo do tipo Real. 
 
2.5 Comandos de Entrada e Saída 
 
Um comando de entrada (leitura) tem por função transferir dados do meio externo para a memória de 
trabalho do computador. Vamos assumir em nosso pseudocódigo que os dados do meio externo entram 
no computador através de seu teclado. Assim, a execução do comando: 
 
Leia Numero_Dependentes 
 
faz com que o computador fique aguardando que um valor seja digitado. O valor digitado será 
armazenado na variável Numero_Dependentes. Um comando de leitura pode especificar a leitura de 
um ou vários valores. Assim, a execução do comando: 
Leia Nome, Numero_Dependentes, Salario 
faz com que o computador aguarde que três valores sejam digitados. O primeiro valor será 
armazenado na variável Nome, o segundo na variável Numero-Dependentes e o terceiro na 
variável Salario. Lembre-se que cada valor a ser digitado deve ser do mesmo tipo da variável que 
o recebe. 
 
Ao contrário de um comando de entrada, um comando de saída é utilizado quando necessitamos 
apresentar valores ao meio externo. Assumiremos que esses valores serão apresentados ao meio 
externo através da tela de um monitor. Assim, se quisermos que o computador mostre o valor que 
está armazenado na variável Soma, o seguinte comando deve ser executado: 
Escreva Soma 
 
Um comando Escreva pode especificar a saída de vários valores. Assim, o comando 
 
Escreva Nome, `Media : ', Media 
 
faz com que seja mostrado na tela o conteúdo da variável Nome, seguido do valor tipo literal 'Media:', 
e após, o conteúdo da variável Media. Assumiremos em nosso pseudocódigo que cada comando 
Escreva imprime uma linha na tela. Veja o algoritmo a seguir. 
Algoritmo Exemplo2_51 
Variáveis 
 Nome_do_Aluno : Literal 
 Idade : Inteiro 
 Nota : Real 
Inicio 
 Leia Nome_do_Aluno 
 Leia Idade 
 Leia Nota 
 Escreva `Nome do Aluno: `, Nome do_Aluno 
 Escreva `Idade: ' , Idade Escreva `Nota da Prova: ` , Nota 
Fim 
 
Considerando que, ao executar os comandos de leitura, o usuário digite 'Joao' para Nome do_Aluno, 25 
para Idade e 9.5 para Nota, a tela teria a seguinte aparência, após a execução das instruções desse 
algoritmo: 
 
Joao 
25 9.5 
Nome do Aluno: Joao 
Idade: 25 
Nota da Prova: 9.5 
 
2.6 Constantes 
 
Em muitas situações, ao escrevermos um algoritmo, necessitamos trabalhar com valores que não se 
alterarão durantetoda execução do algoritmo. A esses valores denominamos Constantes. Constante é 
uma quantidade fixa, invariável, cujo valor é definido no início do algoritmo, não podendo ser alterado 
durante a sua execução. Assim, se Sal_Mínimo identifica uma constante, então não será permitido que 
alguma instrução do algoritmo modifique o seu valor. Como uma constante constitui -se em um valor, 
esta poderá ser de qualquer um dos tipos já vistos 
 
Algoritmo Exemplo_de_Constante 
Constantes 
Sal_Minimo = 260.00 
Mensagem = 'Resultados' 
Variáveis 
Salario : Real 
Quantidade :Inteiro Inicio 
Inicio 
Leia Salario 
Quantidade  Salario Div Sal_Minimo 
Escreva Mensagem 
Escreva 'O funcionário tem salário de: ', Salario 
Escreva 'O qual eqüivale a ', Quantidade, ' Salários' 
Escreva 'Valor do salário mínimo:', Sal Minimo 
Fim 
No algoritmo 'Exemplo_de_Constante' são declaradas duas constantes, Mensagem e Sal_Minimo, 
que são utilizadas dentro do algoritmo e que, por definição, não poderão ser alteradas. A utilização de 
constantes para valores que não mudam durante a execução do algoritmo tem como vantagem a 
facilidade de futura manutenção do algoritmo. Assim, se o valor do salário-mínimo for alterado pelo 
governo, basta alterar-se o valor da constante Sal_Minimo que, automaticamente, todas as instruções 
que utilizam essa constante ficam atualizadas. Veja que, se não tivéssemos utilizado a constante 
Sal_Minimo, o valor 260,00 deveria ser especificado em vários pontos dentro do algoritmo, o que 
poderia resultar em possível erro por esquecimento, caso fosse necessário a sua alteração. 
 
Exercícios Resolvidos 
 
Exercício 01: Considere o problema de calcular as raízes de uma equação de segundo grau. Uma 
equação de segundo grau tem a seguinte forma geral: 
 
 
02  cbxax
 
 
As raízes podem ser representadas por meio da fórmula: 
 
 
a
b
x
2


, onde 
acb 42 
 
Em nossa resolução, vamos assumir que as raízes de uma equação de segundo grau sejam sempre 
reais. Fazendo uma análise desse problema com o objetivo de determinar quais dados são necessários 
para a sua resolução, conclui-se que é necessário o conhecimento dos valores dos coeficientes A, B e 
C. Também pode-se concluir, pela definição do problema, que o objetivo é determinar as raízes da 
equação. Assim, tem-se: 
 
Entradas: Os coeficientes da equação (A , B , C). 
Saídas: As raízes da equação (x1 , x2). 
 
Estando claramente definido e analisado o problema, parte-se para a construção do algoritmo, o qual 
ficará como segue. 
 
Algoritmo Segundo_Grau 
Variáveis 
 A,B,C,xl,x2 : Real 
Inicio 
Leia A, B, C 
xl  (-B+(B**2-4*A*C)**0.5)/(2*A) 
x2  (-B-(B**2-4*A*C)**0.5)/(2*A) 
Escreva 'Raízes da equação fornecida' 
Escreva `Raiz 1 : ', xl 
Escreva `Raiz 2 : ', x2 
Fim 
 
Exercício 02: Considere a determinação do salário líquido de um funcionário, assumindo que sobre seu 
salário bruto incide um desconto de 8.5% para a previdência. Feito o desconto para a previdência, sobre 
o restante é aplicado um desconto de 26,6%, a título de imposto de renda. O algoritmo deve mostrar o 
nome do funcionário, o seu salário bruto e o seu salário líquido. 
 
Fazendo uma análise desse problema, pode-se concluir que, para que seja possível a sua 
resolução, devemos ter como dados o nome do funcionário e o valor de seu salário bruto. Assim, tem -
se: 
 Entradas: Nome do funcionário 
 Salário Bruto 
 
Pelo enunciado do problema, também facilmente pode-se concluir que a sua solução consiste 
em mostrar os valores do nome, salário bruto e salário líquido do funcionário. Assim, tem-se: 
 
 Saídas: Nome do Funcionário 
Salário Bruto 
Salário Líquido 
 
Pela definição do problema, observa-se que o desconto para a previdência é calculado 
diretamente a partir do salário bruto. Já o desconto para o imposto de renda é calculado sobre o salário 
bruto menos o desconto da previdência. Por fim, o salário líquido será calculado a partir do salário bruto 
menos os descontos para a previdência e imposto de renda. O algoritmo fica como segue: 
 
Algoritmo Funcionario 
Variáveis 
Nome : Literal 
Sal_Bruto, Sal Liq, Inss, Irf : Real 
Inicio 
 Leia Nome 
 Leia Sal_Bruto 
 Inss  Sal-Bruto *8.5 / 100 
 Irf  (Sal Bruto - Inss) * 26.6 / 100 
 Sal Liq  Sal_Bruto - Inss - Irf 
Escreva `Funcionário : ', Nome 
Escreva 'Salario Bruto ; ', Sal Bruto 
Escreva `Salário Líquido : ', Sal Liq 
Fim 
 
Exercício 03: Considere o seguinte problema: dados os pontos A, de coordenadas A(x1, y1), e B, de 
coordenadas B(x2, y2), escreva um algoritmo que determine a distância entre os dois pontos. A distância 
entre dois pontos representados no sistema de coordenadas cartesianas é dada por: 
 
 
2
12
2
12 )()( yyxxdist 
 
 
Pela definição do problema conclui-se que, para a sua resolução, deve-se ter como entradas as 
coordenadas de cada um dos pontos. Como saída tem-se o valor da distância entre os pontos. Assim, 
tem-se: 
 
Entradas: Coordenadas do ponto A, ou seja, x1 e y1 
 Coordenadas do ponto B, ou seja, x2 e y2 
Saída: Distância entre A e B 
 
Algoritmo Distancia_Pontos 
Variáveis 
Dist, X1, Y1, X2, Y2 : Real 
Inicio 
Leia X1, Y1 
Leia X2, Y2 
Dist  ((X2 - X1)**2 + (Y2 - Y1)**2) **0.5 
Escreva 'Distância entre os pontos :', Dist 
Fim

Outros materiais