Vous êtes sur la page 1sur 7

ALGORITIMO: O QUE ?

Resumo: Calouros nos cursos de graduao da rea da computao apresentam


dificuldades para compreender e aplicar os conceitos de algoritmos diante da sua iniciao
a metodologias lgicas estruturadas como linha de raciocino no cotidiana, para chegar a
solues de desafios. Mesmo alguns veteranos, em vista desse tipo de problema, precisam
continuamente recorrer literatura bsica para recobrar os princpios desta forma de pensar
para resolver problemas simples propostos pelas disciplinas de programao. Por tais
razes, este estudo pretende instrumentalizar, minimamente, um leitor interessado rever as
informaes e conceitos bsicos do algoritmo, mediante uma caracterizao simples e
breve dos principais mtodos de se chegar a sua compreenso. Revisam-se os estudos j
concretizados por Guimares-Lages (1994),Ziviani (2009) e Manzano (2012).As sees e
os procedimentos bsicos do algoritmo so enumerados e caracterizados brevemente, para
resultar num roteiro simples de auxlio a compreenso do que algoritmo.

Palavras-chave: Algoritmo. Exemplos de aplicao. Estruturas.

Abstract: Freshmen in undergraduate courses in the field of computing have difficulties to
understand and apply the concepts of algorithms before their initiation into logical
structured methodologies as not everyday I reason line to come up with solutions to
challenges. Even some veterans in view of this problem, continually need to resort to basic
literature to recover the principles of this way of thinking to solve simple problems posed
by the programming disciplines. For these reasons, this study aims to equip minimally
interested reader to review the information and basics of the algorithm through a simple
and brief characterization of the main methods of reaching your understanding. We review
the studies already pursued by Guimares - Lages (1994 ) , Ziviani (2009 ) and Manzano
(2012 ) . Sections and the basic procedures of the algorithm are listed and briefly
characterized to result in a simple script to aid understanding of what 's algorithm.
Keywords: Algorithm. Application examples. Structures.

1 INTRODUO

Este artigo de reviso objetiva mostrar, de forma muito breve, os elementos que
caracterizam a formao da ideia de algoritmo, de modo a constituir um roteiro
simplificado para sua assimilao como mtodo e da sua construo.
Segundo o dicionrio Aurlio, a palavra algoritmo se aplica a matemtica e
computao, (Manzano Oliveira 2012, p. 27)
2
na matemtica, onde esta associada a um
processo de calculo, ou resoluo de um grupo de problemas semelhantes, em que se
estipulam, com generalidade e sem restries, regras formais para a obteno do resultado,
ou da soluo do problema. Na cincia da computao (informtica), est associado a um
conjunto de regras e operaes bem definidas e ordenadas, destinadas soluo de um
problema, ou de uma classe de problemas, em um numero finito de passos.
Tambm disse, Manzano-Oliveira (2012, p. 27),O termo algoritmo causa certa
estranheza a algumas pessoas, pois muitas acreditam que est escrito ou pronunciado de
forma incorreta, fato este que no de se estranhar, pois fora do meio computacional e
matemtico no se ouve a palavra usualmente. Apesar de como expe Ziviani (2009 p.1 )
3
,
os algoritmos fazem parte do cotidiano das pessoas, estando presentes nas instrues para
uso de medicamentos, indicaes de como montar aparelhos, ou o exemplo clssico da
receita de bolo. Talvez a definio mais concisa de algoritmo seja [...] algoritmo poder
ser visto como uma sequncia de aes executveis para a obteno de uma soluo para
determinado problema. O algoritmo esta presente nas aes sequenciais, das mais simples
as mais complexas executadas diariamente por todos. Basicamente os padres do
comportamento humano, assim como as leis da natureza como a gravidade e
eletromagnetismo, em conflito as necessidades de responder a problemas cotidianos, nos
leva a formular mtodos, formas, frmulas, de usar a logica e raciocnio para produzir o
caminho para obter essas respostas, contudo podemos dizer que o algoritmo no cotidiano
da computao o via principal de se chegar s respostas.
Este trabalho, dadas essas pressuposies tericas iniciais, objetiva esclarecer
alguns detalhes sobre o uso do algoritmo, sua importncia e principais mtodos.

2 POR QUE O ALGORITMO?

Existe uma longa historia sobre o algoritmo, e a utilizao da palavra que pode
ser notada j em meados do sculo IX. Foi Abdullah Muhammad Bin Musa al-Khwarizmi
que usou o termo pela primeira vez, que alem desta criao considerado por muitos o pai
da lgebra. Basicamente ela toma a forma mais prxima de como nos conhecemos surgiu
quando as obras de al-Khwarizmi forma traduzidas no sculo XII por Adelardo de Bath,
que por sua vez a transcreveu para o latim, como Algothmi. Nesta poca a palavra servia
para expressar apenas s regras da realizao aritmtica utilizando algarismos indo-
arbicos. O uso da palavra ao longo dos sculos foi englobando todos os procedimentos
definidos para resolver problemas ou realizar tarefas e em uma traduo do latim ao
portugus, algothmi torna-se ento algoritmo.
De forma muito simplificada algoritmo pode ser compreendido como um
conjunto de instrues para resolver um problema, mas o que deve ser levado em conta
que o algoritmo por si s no a resposta ao problema, mas sim os passos ou caminhos a
serem seguidos que levam a soluo, pois no h s uma resposta ao um problema, assim
como no h somente um cominho ou algoritmo para ela.
Quando se fala de matemtica, programao, ou outras tantas cincias lgicas,
que por natureza nos trazem inmeras informaes e a necessidade de organizar, assimilar,
processar e produzir novas informaes, alm claro da necessidade de transmitir a outras
pessoas o produto destas etapas de forma compreensvel e objetiva, aes estas que
enfrentam naturalmente a dificuldade de serem organizadas de maneira lgica nas
inmeras fases desses processos. neste momento que surge a aplicao pratica do
algoritmo.
Pode-se ter em mos todos os ingredientes necessrios para produzir um bolo de
morangos confeitados por glac, mas se no houver instrues, como esse bolo ser feito
por algum diferente do criador do confeitado em especial?
Os passos, as etapas as aes que devem ser realizadas ou executadas, devem
seguir uma sequencia, como bater as claras em neve, misturar farinha com leite, por
exemplo. Isso a famosa receita.
Na computao a receita toma caractersticas formais e lgicas, ou seja, as
etapas e aes devem seguir uma sequencia lgica. Mas afinal o que lgica? Segundo
Aristteles (sc. IV a.c), considerado o pai da lgica, lgica uma parte da filosofia que
estuda os fundamentos, as estruturas e as expresses humanos do conhecimento.
Aristteles focava estudar o pensamento humano, distinguir interferncias e argumentos
certos e errados.
Algumas definies muito importantes podem ser trazidas do dicionrio Houaiss
a cerca da lgica: coerncia, fundamento; em informtica organizao e planejamento
das instrues, assertivas etc. em um algoritmo, afim de viabilizar a implantao de um
programa.
Por ltimos vemos a relao de lgica com o meio computacional, onde as
instrues seguem assim uma sequencia que obedecem regras, tais como: ordem, um
estado inicial e so realizadas em um perodo de tempo finito, que culmina em resultados
esperados e bem definidos. Segundo os autores do livro Algoritmos e Programao de
Computadores (2012, Ed. Cmpus, pg. 8), as instrues neste sentido so escritos na forma
de um Algoritmo que utiliza o conceito da lgica formal para fazer com que o computador
produza uma srie sequencial de entrada, processamento e sada.
A lgica formal ou tambm lgica simblica, foca a estrutura do raciocnio,
trabalhando assim com a relao entre conceitos, fornece um meio de propor provas de
declaraes, conceitos esses rigorosamente definidos quando oraes tornam-se notaes
simblicas precisas, sucintas e no ambguas.

3 ESTRUTURA DO ALGORTMO

Estrutura certamente a palavra chave para entender como se expressa um
algoritmo, ou seja, como j dito a srie de aes que basicamente compe a ideia de
algoritmo, o ciclo entrada > processamento > sada, segue uma sequncia que permite
implementar mecanismos que possibilitam fazer interaes entre situaes do problema,
eliminar possibilidades por meio de decises (tais como comparaes ou lgica), at que a
tarefa inicialmente proposta seja cumprida.
Essa estrutura pode ser escrita de maneiras diferentes, as mais comuns so o
algoritmo computacional, e o fluxograma.
Para entender o que um algoritmo computacional, deve-se primeiro entender
que a ideia se refere ao fato deste algoritmo ser passvel de implementao em um
computador, graas ao uso da pseudolinguagem, que por sua vez uma linguagem
genrica e rica em detalhes que se assemelha bastante a forma que os programas so
escritos, proximidade esta que estabelece uma forte ligao entre o pseudocdigo do
algoritmo, que a forma organizada de expressar as aes deste com palavras de
vocabulrio finito e as diferentes formas de programar em uma maquina.
J o fluxograma um tipo de diagrama, e pode ser entendido como uma
representao esquemtica de um processo, ou seja, o algoritmo escrito com
representaes geomtricas que se conectam por um fluxo determinado por tomadas de
decises lgicas baseadas em comparao, por exemplo. Abaixo a esquerda temos a
representao de um algoritmo em fluxograma, a direita um algoritmo expressado em
pseudocdigo:
Figura 1 Algoritmo em pseudocdigo
Fonte: Salvetti, Dirceu Douglas (1998, pg. 23)






4 ARVORE
Arvore na computao refere-se estrutura de dados que assim como um
algoritmo de fluxograma tem a caracterstica de trabalhar com topologia e tambm, como a
lista encadeada organiza informaes, a diferena desta ultima que no lugar de dispor de
maneira sequencial as informaes como a lista encadeada, a arvore distribui de forma
hierrquica estas informaes, partindo da raiz que o elemento principal para os ramos
ou filhos.
Uma rvore binria (= binary tree) um conjunto de registros (estrutura de
dados), que atende algumas condies. (As condies no sero dadas explicitamente, mas
elas ficaro implicitamente claras no contexto.). Os registros sero chamados ns
(poderiam tambm ser chamados clulas). Cada n tem um endereo possibilitando buscar
informaes. O nmero mximo de ramos em um elemento chamado Ordem da rvore.
Uma rvore binria aquela de ordem 2, i.e., em que cada elemento possui no mximo 2
ramos.


Algoritmo "SomaDeDoisValores";
varivel:
SOMA,A,B: inteiro;
inicio
Escreva("Digite um numero: ");
Leia(A);
escreva("Digite outro numero: ");
leia(B);
SOMA A + B;
escreva(SOMA);
fim.

Figura 1 Algoritmo em pseudocdigo
Fonte: Salvetti, Dirceu Douglas (1998, pg. 23)

Figura 3 Arvore binria \ Fonte: Google

Figura 4 Arvore binria AVL \ Fonte: Google imagens





Existem diferentes formas aplicadas desta estrutura na programao, como por
exemplo: a Arvore AVL. Este nome vem dos seus criados Adelson V. e Landis. A primeira
referencia a arvore AVL surgiu em 1962.
Nesta estrutura em particular, as alturas das duas ramificaes principais, sub-
rvores a partir de cada n diferem no mximo em uma unidade. As operaes de busca,
insero e remoo de elementos possuem complexidade O( log
2
n ) (no qual o nmero
de elementos da rvore). Inseres e remoes podem tambm requerer o re-
balanceamento da rvore, exigindo uma ou mais rotaes.




A estrutura de dados arvore so usadas em aplicaes de busca em memria
principal.

5 CONCLUSO OU CONSIDERAES FINAIS

Conforme (FEITOSA, 1991 abaixo), existe um papel de tamanha importncia
tal qual a pesquisa e descoberta, descrever e transmitir o conhecimento, a ideia, elava um
pensamento ao nvel do reconhecimento e da multiplicao do saber.

Escrever parte inerente ao ofcio do pesquisador (FEITOSA, 1991).
O trabalho do cientista no se esgota nas descobertas que faz. de
sua responsabilidade comunicar os seus resultados, suas
descobertas, suas criaes. Sendo assim, a escrita cientfica
caracteriza-se como um processo de comunicao muito importante,
pois uma descoberta cientfica torna-se reconhecida atravs das
publicaes de seus resultados.
(FELTRIM et al., 2000, p. 1).

Algoritmo mais que uma forma de linguagem estruturada que facilita a
organizao de ideias tambm uma forma de transmitir essas ideias e intenes sem que
se perca a essncia do objetivo inicial graas construo de mtodos e formas, tais como
as estruturas de Arvore binria, uso de fluxogramas, ou a linguagem objetiva no ambgua
utilizada.
Tais informaes ficam como sugesto para outros estudos sobre este gnero que
acompanha o pesquisador que todos devem ser quando habitam o universo do saber.


REFERNCIAS

FEITOSA, Vera Cristina. Redao de textos cientficos. Campinas: Papirus, 1991.
PIVA, Dilermando Jr.; NAKAMITI, Gilberto Shigueo; ENGELBRECHT, Angela de
Mendona; BIANCHI, Francisco. Algoritmos e Programao de Computadores. Rio de
Janeiro: Campus, 2012.
ZIVIANI, Nivio. Projeto de Algoritmos. So Paulo: Cengage Learning, 2004.
SALVETTI, Dirceu Douglas; BARBOSA, Lisbete Madsen. Algoritmos. So Paulo:
Makron Books, 1998.
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.
Introduction to Algorithms, Second Edition. MIT Press and McGraw-Hill, 2001. ISBN
0-262-03293-7.
MANZANO, Jose Augusto N. G, OLIVEIRA, Jayr Figueiredo. Algoritmos - Lgica Para
Desenvolvimento de Programao de Computadores. So Paulo: Erica, 2012.

Vous aimerez peut-être aussi