Sequência de Fibonacci em C. Recursivo, iterativo e direto.

No primeiro vídeo a seguir, faço a implementação de uma função que retorna o n-ésimo termo de uma sequência de Fibonacci. A primeira implementação é de maneira recursiva; a segunda, de maneira iterativa.

No tutorial, explico o raciocínio, ensinando como proceder na abordagem do problema, deixando cada um implementar ao seu gosto e na linguagem que quiser, apesar de eu usar C neste vídeo.

Há ainda uma comparação do tempo de resposta de cada uma.

Para saber mais sobre equações de recorrência e como otimizá-las, clique aqui.

Já no vídeo abaixo, vemos uma implementação com a otimização obtida pela resoluação da equação de recorrência da sequência de Fibonacci.

Anúncios

Otimização de equação de recorrência

Devido à escassez de material, na internet, sobre equações de recorrência – bem como sua otimização – e considerando a complexidade e importância de tal tema, resolvi publicar um material que fiz com anotações de aulas de Matemática Finita, na UFC.

Eis a primeira apresentação de slides. E logo abaixo, o link para quem quiser baixa-lo, em .pdf.

Link para baixar os slides.

Equações de recorrência lineares a coeficientes constantes e homogêneas: link.
(Linear homogeneous recurrence equations with constant coefficients.)

Equações de recorrência lineares a coeficientes constantes e não-homogêneas: link.
(Linear non-homogeneous recurrence equations with constant coefficients.)

Equações de recorrência não-lineares homogêneas e não-homogêneas: link.
(Non-linear homogeneous equations, and non-homogeneous recurrence equations.)

Agradecimento ao prof. Rafael Castro!

Valor da resistência de um resistor

Uma dica que vou deixar aqui hoje é sobre eletrônica.

Quem lida com eletrônica pode precisar calcular o valor de uma resistor, caso não saiba ler o mesmo através do código de cores.

Então deixo-vos com o Resistor color coder que é um software desenvolvido pela Schematica. Muito simples e intuitivo, nele você apenas escolhe as cores de cada listra (tal e qual está no seu resistor) e automaticamente ele te dá o resultado.

imagem2

Ele calcula resistência de resistores de precisão também!

E agora, uma breve explicação sobre código de cores e leitura de resistores:

resistores1

OBS.: Para se fazer a leitura de um resistor de 4 cores basta seguir o valor de cada faixa e multiplicar pelo valor da terceira. A quarta faixa indica a tolerância suportada (para mais ou para menos) pela mesma.

Para se fazer a leitura de um resistor de 5 cores basta seguir o valor de cada faixa e multiplicar pelo valor da quarta. A quinta faixa indica a tolerância suportada (para mais ou para menos) pela mesma.

tabela1

Lembre-se: toda leitura é feita inicialmente em Ohms (Ω). Deve-se, portanto, converter Ohms em Kilo Ohms (KΩ), quando necessário.

Ex.: 1000 Ohms = 1KΩ  /  1000 KΩ= 1MΩ (Mega Ohm)

Como Inverter vídeos com o VirtualDub

Eu sou um aficcionado por quebra-cabeças e jogos de raciocínio. E um dos meus favoritos é o cubo de Rubik, o famoso cubo mágico.

Lá no CEFET-CE a galera teve a brilhante idéia de gravar um vídeo de trás pra frente envolvendo o cubo mágico. O truque é simles: eu pegava um cubo mágico todo arrumadinho e bagunçava em “tempo recorde”, aí era só inverter o vídeo e colocar esse fake na internet dizendo que eu era mais um nerd obeso que resolve o cubo em segundos.

Feito o vídeo. Beleza, mas como inverter? Aqui começa o tutorial:

Gosto muito do VirtualDub. O programa pode não ser o mais bonito, mas é profissional – útil e bastante leve. Sempre editei e fiz uns truques com ele, mas inverter eu nunca tinha tentado e como muita coisa nele, é preciso um código pra conseguir o efeito desejado.

O código pra inverter o vídeo é:

Reverse(AVISource(“C:\Vídeos\Cubo.avi”))

Logicamente, entre as aspas você não colocará exatamente isso e sim o endereço do seu vídeo.

E o que eu faço com esse código? Seguinte: copie e cole-o no bloco de notas. Salve o arquivo na extensão .avs e com o mesmo nome do vídeo. No exemplo aqui:

  1. O nome do meu vídeo é Cubo.avi
  2. O endereço é C:\Vídeos\Cubo.avi
  3. Então, o  meu código fica Reverse(AVISource(“C:\Vídeos\Cubo.avi”))
  4. O arquivo com o código é Cubo.avs
  5. Este arquivo está na mesma pasta do vídeo

Faça como eu fiz no exmplo acima. Agora é só abrir o VirtualDub e arrastar os dois arquivos (.avs e .avi) pra dentro dele.

PRONTO! Seu vídeo está invertido (revertido, de trás pra frente – como queira). 🙂

Não esqueça-se de salvar o arquivo final. Da seguinte maneira:

File >> Save As AVI

Algumas pessoas reclamam do tamanho final do vídeo editado. É natural que o vídeo editado seja de tamanho diferente do vídeo original.

Se aumentar muito de tamanho, não se preocupe. Para diminuir novamente o tamanho do vídeo, pode-se comprimi-lo usando um codec como o DivX.

Para adicionar o codec, faça o seguinte:

  1. Após ter feito o processo de inverter o vídeo, arrastando os arquivos, vá no menu Video >> Compression (ou pressione CTRL+P);
  2. Procure  e selecione o codec, como DivX ou XviD;
  3. Agora sim você pode salvar o seu novo vídeo.

ps.: O WordPress coloca as aspas diferentes das tradicionais que devem aparecer no bloco de notas. Portanto, se der algum erro, apague essas aspas e as digite novamente.

– Links pra downloads:

VirtualDub ffdshow / Avisynth / Meu vídeo / DivX

Qualquer duvida, não hesite em perguntar nos comentários. Abraços.

Sacaneie com o bandido!!!

Se roubarem seu celular sacaneie o ladrão:
A imagem “https://i2.wp.com/www1.bestgraph.com/cliparts/personnages/voleurs/voleurs-12.jpg” contém erros e não pode ser exibida.
Agora com esta história do ‘Chip’, o interesse dos ladrões por aparelhos celulares aumentou.
É só o ladrão comprar um novo chip por um preço médio de R$25,00 à uma operadora e instalar em um aparelho roubado.

Com isso, está generalizado o roubo de celulares. Segue então uma informação útil que os comerciantes de celulares não divulgam. Uma espécie de vingança para quando roubarem celulares. Para obter o número de série do seu telefone celular (GSM), digite *#06#.
Aparecerá no visor um código com 15 algarismos, o IMEI – com ele também é posível desbloquear o celular. Este código é único.
Anote estes números e guarde em um lugar seguro.

Se roubarem seu celular, telefone para sua operadora e informe este código. O seu telefone será então completamente bloqueado, mesmo que o ladrão mude o ‘Chip’.
Provavelmente você não vai recuperar o aparelho, mas quem quer que o tenha roubado não poderá mais utilizá-lo. Se todos tomarem esta precaução, imagine, o roubo de celulares posivelmente se tornará inútil.

Dica – como gravar CD’s e DVD’s mais rápido

Conversando com meus amigos descobrir que alguns deles têm um probleminha na hora de gravar DVD’s: o tempo!
Eles disseram que antes gravavam em pouco tempo mas agora chegavam a levar mais de 45 minutos para só um DVD-5.
Como time is money, não podemos perder tempo!
Aí vai uma dica para se gravar mais rápido:

Vá lá no Painel de Controle/ sistema/ Hardware/ gerenciador de dispositivos/ controladores IDE/ATA/ATAPI e remova o terceiro item, aquele que indica o chipset responsável pelo DMA (SIS IDE, VIA BUS MASTER, etc).
Outro caminho: clique com o botão direito do mouse sobre o ícone “Meu computador”, clique em “propriedades”, clique na aba “Hardware”, clique em “Gerenciador de dispositivos”, procure o chipset responsável pelo DMA (SIS IDE, VIA BUS MASTER, etc).

Reinicie o computador e aguarde os itens serem detectados novamente.
Reinicie novamente após o aviso do sistema operacional.

Consegui essa dica com o pessoal do Guia do Hardware, quem quiser saber mais é só ler o post abaixo!