Você está na página 1de 8

Computação e algoritmos

O papel dos algoritmos

I Antes que uma máquina (um computador por exemplo) possa


executar uma tarefa, um algoritmo para executar esta tarefa
deve ser descoberto e representado em uma forma
compreensı́vel por tal máquina. A representação de um
conjunto algoritmos relacionados é chamada de programa.
I Algoritmo: sequência de passos bem definida.
I Programas, e os algoritmos que os representam, são
coletivamente chamados de softwares; as máquinas em que
os executam são conhecidas como hardware.
Exemplo: O algoritmo de Euclides

I Descrição: Este algoritmo assume que suas entradas


consistem de dois números positivos inteiros e procede
computando o maior divisor comum entre esses dois valores.
I Procedimento:
I Passo 1. Atribua a M and N o valor do maior e do menor
número, respectivamente.
I Passo 2. Divida M por N, a chame o resto de R.
I Passo 3. Se R não é zero, então atribua a M o valor de N,
atribua a N o valor de R, e retorne ao passo 2; caso contrario se
R igual a zero, o maior divisor comum o valor atualmente
armazenado em N.
Exemplo: A média da soma dos primeiros 50 primeiros
números pares

I Construa um algoritmo que calcula a média da soma dos


primeiros 50 números pares
I Procedimento:
I Passo 1. Atribua a Soma o valor 0
I Passo 2. Atribua a Contador o valor 1
I Passo 3. Atribua a ValorCorrente o valor 2
I Passo 4. Faça Soma receber o valor de Soma +
ValorCorrente
I Passo 5. Faça ValorCorrente receber o valor de
ValorCorrente + 2
I Passo 6. Faça o valor de Contador receber o valor de
Contador + 1
I Passo 7. Se contador for igual a 50 siga para o Passo 8. Caso
contrário siga para o Passo 4.
I Passo 8. Escreva o valor de Soma ÷ 50.
Exemplo: Algoritmo da troca de lâmpada

I Posicione a escada debaixo da lâmpada queimada


I Escolha uma nova lâmpada da mesma potência da queimada
I Selecione uma candidata substituição
I Se a potência não é a mesma da queimada, repita os passos
abaixo até encontrar uma que sirva
I Descarte a lâmpada selecionada
I Selecione uma nova
I Repita até que a lâmpada possa ser alcançada
I Suba um degrau da escada
I Repita até que a lâmpada fique livre do soquete
I Gire a lâmpada queimada no sentido anti-horário
I Posicione a nova lâmpada no soquete
I Repita até que a nova lâmpada esteja firme no soquete
I Gire a lâmpada no sentido horário
I Repita até chegar ao chão
I Desça um degrau da escada
Exemplo: número primo

I Passo 1. Atribua a N o valor de entrada.


I Passo 2. Se N < 2 imprima N "n~
ao é primo" e siga para o
Passo 8.
I Passo 3. Atribua a NumDivisores o valor 2 e a Divisor o
valor 3
I Passo 4. Se Divisor > N siga para o Passo 7.
I Passo 5. Se N % Divisor for 0 faça NumDivisores =
NumDivisores + 1
I Passo 6. Faça Divisor = Divisor + 1 e retorne ao passo 4.
I Passo 7. Se NumDivisores for igual a 2 imprima N "é
primo"; caso contrário imprima N "n~
ao é primo".
I Passo 8. Fim
Referências
Referências

I Matthias Felleisen; Matthias Felleisen, Robert Bruce Findler,


Matthew Flatt, Shriram Krishnamurthi .
How to Design Programs: An Introduction to Programming and
Computing.
MIT - Massachusetts Institute of Technology, 2001.
I Ascencio, Ana F.G. e CAMPOS, Edilene A. V.
Fundamentos da Programação de Computadores - Algoritmos,
Pascal e C/C++.
São Paulo: Prentice Hall, 2002.

Você também pode gostar