<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Vinicius Viana - SEO Guarulhos</title>
	<atom:link href="http://www.viniciusviana.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.viniciusviana.com</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Sun, 22 Jan 2012 19:19:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Frontend Conference</title>
		<link>http://www.viniciusviana.com/usabilidade/frontend-conference/</link>
		<comments>http://www.viniciusviana.com/usabilidade/frontend-conference/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 19:58:24 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Usabilidade/UX]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=523</guid>
		<description><![CDATA[Se você é desenvolvedor, frontend, webdesign ou gosta da área. Recomendo fortemente você a ficar ligado na Frontend Conference. É um evento anual que acontece em Oslo-Noruega e que conta com diversos palestrantes de peso que participam de diversos projetos em grandes empresas. Confira alguns vídeos da Frontend Conference 2011, clicando aqui. Caso gostou das [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.viniciusviana.com/wp-content/uploads/2011/12/frontend2011-300x141.jpg" alt="Frontend Conference 2011" title="Frontend Conference 2011" width="300" height="141" class="alignnone size-medium wp-image-524" /></p>
<p>Se você é desenvolvedor, frontend, webdesign ou gosta da área. Recomendo fortemente você a ficar ligado na <strong>Frontend Conference</strong>. É um evento anual que acontece em Oslo-Noruega e que conta com diversos palestrantes de peso que participam de diversos projetos em grandes empresas.</p>
<p><iframe src="http://player.vimeo.com/video/32450285?title=0&amp;byline=0&amp;portrait=0" width="400" height="225" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<p>Confira alguns vídeos da Frontend Conference 2011, <a href="http://www.frontend2011.com/#videos" title="Videos Frontend 2011" target="_blank">clicando aqui</a>.</p>
<p>Caso gostou das palestras de 2011, recomendo que veja os vídeos da <a href="http://www.frontend2010.com/video" title="Frontend 2010 Vídeos" target="_blank">Frontend Conference 2010</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/usabilidade/frontend-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Little Big Details &#8211; Pequenos Detalhes Realmente Importam</title>
		<link>http://www.viniciusviana.com/usabilidade/little-big-details-pequenos-detalhes-realmente-importam/</link>
		<comments>http://www.viniciusviana.com/usabilidade/little-big-details-pequenos-detalhes-realmente-importam/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 18:44:29 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Usabilidade/UX]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=520</guid>
		<description><![CDATA[Venho apresentar pra vocês o Little Big Details, ele é um site bem interessante, ele lista todos aqueles pequenos detalhes que alguns softwares/sites se utilizam pra melhorar a experiência do usuário. Como neste exemplo do MacOs X Lion, quando você arrasta múltiplos arquivos, ele informa o número de arquivos que você está arrastando. Outro exemplo [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-medium wp-image-521" title="Little Big Details" src="http://www.viniciusviana.com/wp-content/uploads/2011/12/little-big-details-300x184.png" alt="Little Big Details" width="300" height="184" /></p>
<p>Venho apresentar pra vocês o <a title="Little Big Details" href="http://littlebigdetails.com/" target="_blank">Little Big Details</a>, ele é um site bem interessante, ele lista todos aqueles pequenos detalhes que alguns softwares/sites se utilizam pra melhorar a experiência do usuário.</p>
<p>Como neste exemplo do MacOs X Lion, quando você arrasta múltiplos arquivos, ele informa o número de arquivos que você está arrastando.</p>
<p><img src="http://s3.amazonaws.com/data.tumblr.com/tumblr_ltqa91NSje1qea4hso1_1280.png" alt="" width="479" height="270" /></p>
<p>Outro exemplo que gostei e percebo no cotidiano é no Google Chrome, na seção de sites mais visitados, ele se utiliza da principal cor do favicon do site pra colorir o rodapé da borda daquele site.</p>
<p><img src="http://29.media.tumblr.com/tumblr_ltqkcnFgNK1qea4hso1_500.png" alt="Chrome thumbnails" /></p>
<p>Caso você conheça algum software/site com alguma função intuitiva você pode <a title="Submit Little Big Details" href="http://littlebigdetails.com/submit" target="_blank">enviar para eles</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/usabilidade/little-big-details-pequenos-detalhes-realmente-importam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Selection Sort em Python</title>
		<link>http://www.viniciusviana.com/desenvolvimento/selection-sort-em-python/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/selection-sort-em-python/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 21:54:04 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=518</guid>
		<description><![CDATA[Selection Sort em Python é um algortimo de ordenação ele seleciona menor valor do vetor e o coloca na primeira posição, depois o segundo menor valor para a segunda posição e assim em diante. O Selection Sort é mais um dos algoritmos clássicos que consegue ser escrito de forma elegante, graças a atribuição de tupla [...]]]></description>
			<content:encoded><![CDATA[<p>Selection Sort em Python é um algortimo de ordenação ele seleciona menor valor do vetor e o coloca na primeira posição, depois o segundo menor valor para a segunda posição e assim em diante. O Selection Sort é mais um dos algoritmos clássicos que consegue ser escrito de forma elegante, graças a atribuição de tupla do python, sendo feito o swap das variáveis em uma única linha.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

"""
Selection Sort em Python
by Vinicius Viana
"""

def selection_sort(lista):
	for i in range(0, len(lista)-1):
		menor = i
		for j in range(i + 1, len(lista)):
			if lista[j] < lista[menor]:
				menor = j
		lista[i], lista[menor] = lista[menor], lista[i]
	return lista

while True:
	valor_ini = raw_input("Digite os números do seu vetor, como 10,20,30, digite:")
	valores = eval("["+valor_ini+"]") #concatenei somente para interpretar a sequencia como uma lista
	print selection_sort(valores)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/selection-sort-em-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Insertion Sort em Python</title>
		<link>http://www.viniciusviana.com/desenvolvimento/insertion-sort-em-python/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/insertion-sort-em-python/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 21:38:10 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=516</guid>
		<description><![CDATA[Confira o Insertion Sort em Python. O Insertion Sort é um algoritmo de ordenação, ele é muito parecido com a ordenação de cartas de baralho. Lembrando que ele é de complexidade nˆ2, logo no pior caso teremos o número de elementos ao quadrado de iterações. #!/usr/bin/env python # -*- encoding: utf-8 -*- """ Insertion Sort [...]]]></description>
			<content:encoded><![CDATA[<p>Confira o Insertion Sort em Python. O Insertion Sort é um algoritmo de ordenação, ele é muito parecido com a ordenação de cartas de baralho. Lembrando que ele é de complexidade nˆ2, logo no pior caso teremos o número de elementos ao quadrado de iterações.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

"""
Insertion Sort em Python
by Vinicius Viana
"""

def insertion_sort(lista):
	for i in range(1, len(lista)):
		aux, j = lista[i], i
		while (j > 0) &#038; (aux < lista[j-1]):
			lista[j] = lista[j-1]
			j -= 1
		lista[j] = aux
	return lista

while True:
	valor_ini = raw_input("Digite os números do seu vetor, como 10,20,30, digite:")
	valores = eval("["+valor_ini+"]") #concatenei somente para interpretar a sequencia como uma lista
	print insertion_sort(valores)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/insertion-sort-em-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Acessando email utilizando Python</title>
		<link>http://www.viniciusviana.com/desenvolvimento/acessando-email-utilizando-python/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/acessando-email-utilizando-python/#comments</comments>
		<pubDate>Thu, 17 Nov 2011 15:22:37 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=513</guid>
		<description><![CDATA[Aprenda a acessar emails com o Python utilizando a biblioteca poplib que é uma baita mão na roda. Veja alguns exemplos de acesso a provedores de e-mails mais famosos (Hotmail, Gmail, Yahoo), lembrando que nestes exemplos estamos somente acessando, para fazer a leitura de e-mails será necessário o uso da biblioteca email. Neste primeiro exemplo, [...]]]></description>
			<content:encoded><![CDATA[<p>Aprenda a acessar emails com o Python utilizando a biblioteca <strong><a href="http://docs.python.org/library/poplib.html" title="Poplib" target="_blank">poplib</a></strong> que é uma baita mão na roda. Veja alguns exemplos de acesso a provedores de e-mails mais famosos (Hotmail, Gmail, Yahoo), lembrando que nestes exemplos estamos somente acessando, para fazer a leitura de e-mails será necessário o uso da biblioteca <strong><a href="http://docs.python.org/library/email.html" title="Email python" target="_blank">email</a></strong>.</p>
<p>Neste primeiro exemplo, estamos realizando somente o básico, acessando uma conta do Hotmail e verificando se ela é uma conta válida e retornando o total de emails.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import poplib

usuario = "teste@hotmail.com"
senha =  "teste"

try:
    M = poplib.POP3_SSL('pop3.live.com', 995) # Porta padrão do POP3 é 110, com uso de SSL (POP3_SSL) a padrão é 995
    print M.user(usuario)
except:
      print 'Erro ao Conectar'

try:
    pwmsg = M.pass_(senha)
    print pwmsg
    if pwmsg[0:3] == '+OK':
        print "Conta válida"
    M.quit()
except:
    print 'Conta Inválida:', usuario
</pre>
<p>Acessando o Gmail com Python, pedindo as informações num ambiente seguro:</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import poplib
import getpass

usuario = raw_input('Usuário:')

try:
    M = poplib.POP3_SSL('pop.gmail.com', 995) # Porta padrão do POP3 é 110, com uso de SSL (POP3_SSL) a padrão é 995
    print M.user(usuario)
except:
      print 'Erro ao Conectar'

try:
    pwmsg = M.pass_(getpass.getpass())
    print pwmsg
    if pwmsg[0:3] == '+OK':
        print "Conta válida com", len(M.list()[1]), "e-mails"
    M.quit()
except:
    print 'Conta Inválida:', usuario
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/acessando-email-utilizando-python/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Into_Now interatividade entre a TV com Gadgets e Mídias Sociais</title>
		<link>http://www.viniciusviana.com/tecnologia/into-now-interatividade-tv-gadgets-midias-sociais/</link>
		<comments>http://www.viniciusviana.com/tecnologia/into-now-interatividade-tv-gadgets-midias-sociais/#comments</comments>
		<pubDate>Fri, 11 Nov 2011 18:50:53 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Tecnologia]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=511</guid>
		<description><![CDATA[Into_Now é uma aplicação que permite que amigos interajam durante um programa de televisão. Into_now faz uso das mídias sociais como twitter e facebook, além de integração com serviços como Netflix e IMDb. Imagine você assistir o episódio novo do seriado, ou assistindo um jogo de futebol e compartilhar sua opinião com os amigos que [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://2.bp.blogspot.com/-8LxvYS6OyFI/Ta733eNs73I/AAAAAAAAACw/JYJ7g5gECds/s1600/intonow1.jpg" alt="Into_Now" width="371" height="240" class="aligncenter" /></p>
<p><strong>Into_Now</strong> é uma aplicação que permite que amigos interajam durante um programa de televisão. Into_now faz uso das mídias sociais como twitter e facebook, além de integração com serviços como Netflix e IMDb. Imagine você assistir o episódio novo do seriado, ou assistindo um jogo de futebol e compartilhar sua opinião com os amigos que também estão assistindo, além de ver informações adicionais sobre os atores, jogadores e participantes do programa.</p>
<p>Acompanhe uma prévia, mostrando como ele pode ser utilizado:<br />
<iframe src="http://www.youtube.com/embed/GmEiE4qcV3k?feature=player_embedded" frameborder="0" width="540" height="360"></iframe></p>
<p>Into_Now já está disponível na <a title="Into_Now Appstore" href="http://itunes.apple.com/us/app/intonow/id406436404" target="_blank">App Store</a> e na <a title="Into_Now Android Market" href="https://market.android.com/details?id=com.intonow" target="_blank">Android Market</a>. Isso mostra que o Yahoo tem uma equipe de pesquisa capaz e séria, bom saber que o Yahoo tem planos ambiciosos em vários ramos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/tecnologia/into-now-interatividade-tv-gadgets-midias-sociais/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bubble Sort em Python</title>
		<link>http://www.viniciusviana.com/desenvolvimento/bubble-sort-em-python/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/bubble-sort-em-python/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 17:48:11 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=509</guid>
		<description><![CDATA[Segue um exemplo de bubble-sort em Python, uma das vantagens que pode se destacar em se fazer o bubble-sort em python, é a nossa amiga atribuição de tupla, com ela podemos fazer o swap das variáveis sem utilizar uma variável adicional, mais conhecida como &#8220;auxiliar&#8221;. O único problema em se fazer este algoritmo em python [...]]]></description>
			<content:encoded><![CDATA[<p>Segue um exemplo de <strong>bubble-sort em Python</strong>, uma das vantagens que pode se destacar em se fazer o bubble-sort em python, é a nossa amiga atribuição de tupla, com ela podemos fazer o swap das variáveis sem utilizar uma variável adicional, mais conhecida como &#8220;auxiliar&#8221;.</p>
<p>O único problema em se fazer este algoritmo em python pra quem tem pouca prática, seria em como definir os contadores,<br />
no caso me utilizei deste recurso &#8220;for i in range(0, len(lista)-1)&#8221;, onde defino o valor inicial como 0 e defino o valor final do nosso amigo contador como sendo o tamanho da lista-1.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

"""
Bubble-Sort sem Flag em Python
by Vinicius Viana
"""

def bubble_sort(lista):
	for i in range(0, len(lista)-1):
		for j in range(0, len(lista)-1-i):
        		if lista[ j ] > lista[j + 1]:
            			lista[j], lista[j + 1] = lista[j + 1], lista[j]
	return lista

while True:
	valor_ini = raw_input("Digite os números do seu vetor, como 10,20,30, digite:")
	valores = eval("["+valor_ini+"]") #concatenei somente para interpretar a sequencia como uma lista
	print bubble_sort(valores)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/bubble-sort-em-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Busca Binária em Python, Java</title>
		<link>http://www.viniciusviana.com/desenvolvimento/busca-binaria-em-python-java/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/busca-binaria-em-python-java/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 19:02:50 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=506</guid>
		<description><![CDATA[A busca binária é uma busca muito eficiente, partindo do princípio dividir para conquistar. A complexidade da busca binária é de log2 n (sendo n o tamanho do vetor), sendo bem mais eficiente que a busca sequencial que tem complexidade n. Quando citamos complexidade, queremos dizer qual o máximo de iterações que terão que ser [...]]]></description>
			<content:encoded><![CDATA[<p>A <strong>busca binária</strong> é uma busca muito eficiente, partindo do princípio dividir para conquistar. A complexidade da busca binária é de log2 n (sendo n o tamanho do vetor), sendo bem mais eficiente que a busca sequencial que tem complexidade n. Quando citamos complexidade, queremos dizer qual o máximo de iterações que terão que ser feitas no pior caso possível.</p>
<p>Imagine um vetor de 5 elementos: [0,1,2,3,4], queremos saber se o valor 4 está presente nesse vetor. Pela busca sequencial iríamos gastar 5 iterações e pela busca binária iríamos gastar apenas 2 iterações.</p>
<p>A única desvantagem é que a busca binária somente funcionará com dados ordenados, pela verificação de maior ou igual e excluindo o restantes dos valores.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

&quot;&quot;&quot;
Busca Bin&aacute;ria em Python
by Vinicius Viana
&quot;&quot;&quot;

def busca_binaria(lista, busca):
	inicio, fim = 0, len(lista)-1
	while inicio &lt;= fim:
		meio = (inicio + fim)/2
		if busca == lista[meio]:
			return True
		else:
			if lista[meio] &lt; busca:
				inicio = meio + 1
			else:
				fim = meio - 1
	return False

while True:
	valor_ini = raw_input(&quot;Qual o valor inicial do vetor:&quot;)
	valor_fin = raw_input(&quot;Qual o valor final do vetor:&quot;)
	numeros = range(int(valor_ini), int(valor_fin)+1)  #aqui definimos nossa lista de valores ordenados
	valor_busca = raw_input(&quot;Qual o valor que voc&ecirc; quer buscar no vetor:&quot;)
	if busca_binaria(numeros, int(valor_busca)):
		print &quot;O valor&quot;, valor_busca ,&quot; foi encontrado.&quot;
	else:
		print &quot;O valor&quot;, valor_busca ,&quot; n&atilde;o foi encontrado.&quot;
</pre>
<pre>
   import java.io.*;
   import java.util.Arrays;

    public class bin_search
   {        

       public static boolean buscabinaria(int vet[],int x) {
         final int n = vet.length;
         int inicio = 0,fim = n-1, meio, existe;
         while (inicio&lt;=fim){
            meio=(inicio+fim)/2;
            if (x == vet[meio])
               return true;
            else
               if (vet[meio] &lt; x)
                  inicio = meio+1;
               else
                  fim = meio-1;
         }
         return false;
      }                                     

       public static void main ( String args [] )
      {
         BufferedReader entrada;
         entrada = new BufferedReader(new InputStreamReader(System.in));
         int vetor[], i, z;
         final int n;
         boolean encontrou = false;
         try{
            System.out.print(&quot;Digite o tamanho do vetor:\n&quot;);
            n = Integer.parseInt(entrada.readLine());
            vetor = new int[ n ];
         /* armazenamos os n&uacute;meros digitados no vetor */
            for(i = 0; i &lt; vetor.length; i++ ){
               System.out.print(&quot;Entre com um n&uacute;mero:\n&quot;);
               vetor[i] = Integer.parseInt(entrada.readLine());
            }
            Arrays.sort(vetor);
            System.out.print(&quot;\nDigite o n&uacute;mero que voc&ecirc; quer buscar:\n&quot;);
            z = Integer.parseInt(entrada.readLine());

            if(buscabinaria(vetor, z))
               System.out.print(&quot;\nValor Encontrado\n&quot;);
            else
               System.out.print(&quot;\nValor N&atilde;o Encontrado\n&quot;);
         }
             catch (Exception e) {
               System.out.println(&quot;Ocorreu um erro durante a leitura!&quot;);
            }
      }
   }
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/busca-binaria-em-python-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Busca Sequencial em Python, Java</title>
		<link>http://www.viniciusviana.com/desenvolvimento/busca-sequencial-em-python-java/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/busca-sequencial-em-python-java/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 23:23:32 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=502</guid>
		<description><![CDATA[A busca sequencial é uma busca clássica e geralmente é o primeiro algoritmo de busca apresentado aos estudantes de programação. Uma das vantagens da busca sequencial é que ela pode ser implementada para buscar qualquer estrutura de dados e os dados não precisam estar sequencialmente ordenados. Fiz a implementação do algoritmo em Python e Java. [...]]]></description>
			<content:encoded><![CDATA[<p>A <strong>busca sequencial</strong> é uma busca clássica e geralmente é o primeiro algoritmo de busca apresentado aos estudantes de programação. Uma das vantagens da busca sequencial é que ela pode ser implementada para buscar qualquer estrutura de dados e os dados não precisam estar sequencialmente ordenados. Fiz a implementação do algoritmo em Python e Java.</p>
<p>Caso você tenha dificuldade em entender o funcionamento da busca sequencial, imagine que você tem uma pilha de provas e você precisa descobrir sua nota na prova, mas as provas estão bagunçadas, geralmente para você ver sua nota, você iria olhando sequencialmente prova por prova até achar a sua prova. Com o algoritmo é a mesma coisa, varremos um vetor (array) de elementos e comparamos se o elemento é o mesmo que procuramos, realizamos tal tarefa até o final do vetor.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

"""
Busca Sequencial em Python
by Vinicius Viana
"""

def busca_sequencial(lista, busca):
	for i in lista:
		if i == int(busca):
			return True
	return False

while True:
	valor_ini = raw_input("Qual o valor inicial do vetor:")
	valor_fin = raw_input("Qual o valor final do vetor:")
	numeros = range(int(valor_ini), int(valor_fin)+1)  #aqui definimos nossa lista de valores
	valor_busca = raw_input("Qual o valor que você quer buscar no vetor:")
	if busca_sequencial(numeros, valor_busca):
		print "O valor", valor_busca ," foi encontrado."
	else:
		print "O valor", valor_busca ," não foi encontrado."
</pre>
<pre>
   import java.io.*;
   public class sequencial_search
   {
      public static void main ( String args [] )
      {
         BufferedReader entrada;
         entrada = new BufferedReader(new InputStreamReader(System.in));
         int vetor[], i, n, x;
         boolean encontrou =  false;
         try{
            System.out.print("Digite o tamanho do vetor:\n");
            n = Integer.parseInt(entrada.readLine());
            vetor = new int[ n ];
         /* armazenamos os números digitados no vetor */
            for(i = 0; i < vetor.length; i++ ){
               System.out.print("Entre com um número:\n");
               vetor[i] = Integer.parseInt(entrada.readLine());
            }
            System.out.print("\nDigite o número que você quer buscar:\n");
            x = Integer.parseInt(entrada.readLine());
            for(i = 0; i < vetor.length; i++)
               if(x == vetor[i])
                  encontrou = true;

            if(encontrou)
               System.out.print("\nValor Encontrado\n");
            else
               System.out.print("\nValor Não Encontrado\n");
         }
            catch (Exception e) {
               System.out.println("Ocorreu um erro durante a leitura!");
            }
      }
   }
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/busca-sequencial-em-python-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Par ou Ímpar em Python</title>
		<link>http://www.viniciusviana.com/desenvolvimento/par-ou-impar-em-python/</link>
		<comments>http://www.viniciusviana.com/desenvolvimento/par-ou-impar-em-python/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 01:36:10 +0000</pubDate>
		<dc:creator>Vinicius Viana</dc:creator>
				<category><![CDATA[Desenvolvimento]]></category>

		<guid isPermaLink="false">http://www.viniciusviana.com/?p=494</guid>
		<description><![CDATA[Segue o código de um jogo simples de par ou ímpar desenvolvido em Python. Esse semestre resolvi aprender a linguagem Python e o framework Django, que me foi muito bem recomendado pelo meu amigo Raphael Cruzeiro, e para aprender estarei portando pequenos códigos que desenvolvi em C e Java (incluindo desde códigos de jogos de [...]]]></description>
			<content:encoded><![CDATA[<p>Segue o código de um jogo simples de par ou ímpar desenvolvido em Python. Esse semestre resolvi aprender a linguagem Python e o framework Django, que me foi muito bem recomendado pelo meu amigo <a href="http://www.raphaelcruzeiro.com" title="Raphael Cruzeiro" target="_blank">Raphael Cruzeiro</a>, e para aprender estarei portando pequenos códigos que desenvolvi em C e Java (incluindo desde códigos de jogos de lógica até estrutura de dados, algoritmos de ordenação e busca), quando estava aprendendo a programar e irei distribuir para vocês.</p>
<pre>
#!/usr/bin/env python
# -*- encoding: utf-8 -*-

&quot;&quot;&quot;
Portando meu jogo de par ou impar de Java para Python
by Vinicius Viana
&quot;&quot;&quot;

import random

while True:
	escolha = raw_input(&quot;Entre com a sua escolha (P/I):&quot;).upper()
	if escolha == &quot;P&quot; or escolha == &quot;I&quot;:
		numero = raw_input(&quot;Digite o seu numero (0-5):&quot;)
		if int(numero) &lt;= 5 and int(numero) &gt;= 0:
			num_pc = random.randint(0, 5) #computador escolhe seu numero
			soma = int(numero) + int(num_pc)
			if not(soma % 2) and escolha == &quot;P&quot;:
				print &quot;Voc&ecirc; venceu campe&atilde;o !!! Eu escolhi &quot;, num_pc, &quot; e voc&ecirc; escolheu &quot;, numero
			elif soma % 2 and escolha == &quot;P&quot;:
				print &quot;Voc&ecirc; perdeu seu derrotado !!! Eu escolhi &quot;, num_pc, &quot; e voc&ecirc; escolheu &quot;, numero
			elif not soma % 2 and escolha == &quot;I&quot;:
				print &quot;Voc&ecirc; perdeu  seu derrotado !!! Eu escolhi &quot;, num_pc, &quot; e voc&ecirc; escolheu &quot;, numero
			elif soma % 2 and escolha == &quot;I&quot;:
				print &quot;Voc&ecirc; venceu campe&atilde;o !!! Eu escolhi &quot;, num_pc, &quot; e voc&ecirc; escolheu &quot;, numero
		else:
			print &quot;Escolha um n&uacute;mero de 0 a 5&quot;
	else:
		print &quot;Digite P (Par) ou R (&Iacute;mpar)&quot;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.viniciusviana.com/desenvolvimento/par-ou-impar-em-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

