Академический Документы
Профессиональный Документы
Культура Документы
DE
PROGRAMAÇÃO
ALGORITMO
O conceito de algoritmo é frequentemente ilustrado pelo exemplo de uma receita, embora muitos
algoritmos sejam mais complexos. Eles podem repetir passos (fazer iterações) ou necessitar de
decisões (tais como comparações ou lógica) até que a tarefa seja completada.
Por exemplo, um algoritmo para se vestir pode especificar que você vista primeiro as meias e os
sapatos antes de vestir a calça enquanto outro algoritmo específica que você deve primeiro vestir a
calça e depois as meias e os sapatos. Apesar de ambos levarem ao mesmo resultado, fica claro que
o primeiro algoritmo é mais difícil de executar que o segundo.
PSEUDOCÓDIGO
Pseudocódigo é uma forma genérica de escrever um algoritmo, utilizando uma linguagem simples
(nativa a quem o escreve, de forma a ser entendida por qualquer pessoa) sem necessidade de
conhecer a sintaxe de nenhuma linguagem de programação.
É, como o nome indica, um pseudo-código e, portanto, não pode ser executado num sistema real
(computador) — de outra forma deixaria de ser pseudo.
O exemplo a seguir é um algoritmo em português estruturado que retorna (valor de saída) a soma
de dois valores.
Exemplo 1: Algoritmo
Algoritmo "SomaDeDoisValores";
variáveis
SOMA,A,B: inteiros;
inicio
escrever("Digite um numero");
ler(A);
escrever("digite outro numero");
ler(B);
SOMA ← A + B; (SOMA “toma” o valor de A+B)
escrever(SOMA);
fim.
Atribuição
A atribuição é dar um valor concreto a uma variável, ou seja, o que se designa em matemática por
concretização da variável. Para indicar a operação de atribuição utiliza-se o símbolo ""
Assim, se quisermos que a variável A passe a ter o valor 3, então a expressão seria A3.
No caso da variável A ser o resultado da soma da variável B com a variável C, seria A B+C.
Inicio
Ler (a, b)
c a + b
Escrever (c)
Fim
Linguagem estruturada
A teoria da Programação Estruturada estabelece que qualquer programa pode ser implementado
utilizando estruturas de controlo, isto é, estruturas que permitem direccionar o fluxo de execução
das instruções de um programa. As estruturas de controlo utilizadas são: Sequência, Selecção e
Iteração.
Inicio
Ler (a, b) ( instrução de leitura)
c a * b (instrução de afectação )
Escrever (c) (instrução de saída de resultados)
Fim
senão Acção B
Inicio
Ler (a, b)
se ( a*b > 0)
então escrever (' têm o mesmo sinal ')
senão escrever (' têm sinais diferentes ')
Fim
3 - Iteração : Permite que partes do programa sejam repetidas um número finito de vezes,
segundo uma condição de controlo
Inicio
soma 0
par 100
enquanto (par ≤ 106 ) fazer
soma soma + par
par par + 2
escrever (soma)
Fim
acção A
Inicio
soma 0
par 100
repetir
soma soma + par
par par + 2
até que (par>106)
Fim
Nota: Na repetição com a condição no fim a acção é executada pelo menos uma vez, ao
contrário da anterior.
3.3- Repetição contada
acção A
nesta instrução a variável var varia de valor1 a valor2 com incremento valor3
Inicio
soma 0
escrever (soma)
Fim
FLUXOGRAMA
Outra forma de representação é através de fluxogramas, onde se
pode visualizar de uma forma mais geral o comportamento de um
determinado algoritmo. Neste caso, mesmo os programas mais
complexos podem facilmente ser verificados.
Programa
Um programa é um conjunto de instruções (ou sequência de
código), organizados de tal forma que permita resolver um
determinado problema.
EXERCÍCIOS
Construa um algoritmo em pseudocodigo para resolver os seguintes problemas:
Escreva um algoritmo que, dado um número, calcule o respectivo módulo ou valor absoluto
(ex.: |-2|=2 |2|=2) .
Solução:
Inicio
Ler(num)
Se num >0 if num>0
então modulo num modulo=num
senão modulo -num else modulo=-num
Escrever (modulo)
Fim
Escreva um algoritmo que simule uma calculadora com as 4 operações aritméticas (adição,
subtracção, multiplicação e divisão. O utilizador introduz o valor dos dois operandos e a
operação a realizar e o programa dá o resultado.
Solução:
Inicio
Ler(num1)
Ler(num2)
Ler(operacao)
Se operacao=’+’ então resultado=num1+num2
Se operacao=’-’ então resultado=num1-num2
Se operacao=’*’ então resultado=num1*num2
Se operacao=’/’ e num2≠0 então resultado=num1/num2
Escrever (resultado)
Fim
Escreva um algoritmo que, dado o valor em escudos, o converta para euros e mostre o
resultado.
Solução:
taxa 200.482
Inicio
Ler(escudos)
euros escudos/taxa
Escrever (euros)
Fim
Escreva um algoritmo que, dado o valor do raio da circunferência, calcule o perímetro e a
área.
Solução:
pi 3,14
Inicio
Ler(raio)
perimetro 2*pi*raio
area pi*raio*raio
Escrever (perimetro,area)
Fim