O uso do long long como tipo de dado foi introduzido no padrão ISO C99. Isso acabou gerando uma revolta na comunidade acadêmica que achava o cúmulo ter de usar long long ao invéz de um nome específico, argumentando “qual será a próxima? long long long, long long long long … “.
Bom, o que parece é que o pessoal do GCC também não foi muito com a cara desse long long não.

long long long #fail no gcc
#FAIL para a ISO C99 ou pro GCC? Fica a dúvida.
Posted in C, Diversos, Nerd.
Tagged with C, diversão.
By Felipe Tonello
– July 29, 2010
Esse é um dos problemas mais simples que tem no UVa mas ao mesmo tempo é muito interessante. O problema 3n + 1, também chamado de Conjectura de Collatz, é um problema da matemática que nunca foi resolvido.
Basicamente é o seguinte:
- Se o número é par, então divida por dois.
- Se o número é ímpar, então multiplique por três e some por um.

Agora que temos a função definida, vamos realizar essa operação repetidamente, começando com um inteiro positivo e depois usando o resultado em cada passo:

O interessante é que essa seqüência parece sempre resultar em
.
Programando
O desafio enunciado no UVa Online Judge pede para se contar o maior número de m-cíclos em um determinado intervalo de inteiros n, m.
Como eu gosto de coisas simples, fiz um algoritmo em C bem simples. Não recomendo algoritmo complexos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| #include <stdio.h>
int collatz(int n) {
int i = 1;
while(n > 1) {
if((n % 2) != 0)
n = (3*n) + 1;
else
n = n/2;
++i;
}
return i;
}
int main (int argc, char const *argv[])
{
int i, j;
while(scanf("%d %d", &i, &j) == 2) {
int i2, j2, k;
int max = 0;
if (j < i) {
i2 = j;
j2 = i;
} else {
i2 = i;
j2 = j;
}
for (k = i2; k <= j2; ++k) {
int atual = collatz(k);
if (max < atual) {
max = atual;
}
}
printf("%d %d %d\n", i, j, max);
}
return 0;
} |
ou pelo pastebin
Testando as seguintes entradas
1 10
100 200
201 210
900 1000
1 999999
1000 900
temos
1 10 20
100 200 125
201 210 89
900 1000 174
1 999999 476
1000 900 174
Parece tudo certo!
Agora fica de exercício descobrir a complexidade desse algoritmo.
Posted in Algoritmos, Artigos, C.
Tagged with Algoritmos, C, desafios, Matemática.
By Felipe Tonello
– June 9, 2010
Como me mudei para Itajubá – MG para estudar Matemática (B.Sc.) na UNIFEI comecei a procurar empregos aqui na região. Enfim consegui um na própria universidade.
Agora estou trabalhando no LAT-UNIFEI, Laboratório de Alta Tensão da Universidade Federal de Itajubá.
Novamente estou envolvido no mundo dos embarcados. Aqui estamos criando um dispositivo que detecta erros em transmissão de energia. E não é para menos que sem a matemática tudo isso seria impossível. Fazemos forte uso de Análise de curvas e inteligência artificial.
Em breve postarei coisas interessantes sobre computação e matemática.
Posted in Diversos.
Tagged with C, Embarcados, Metemática, Python.
By Felipe Tonello
– June 7, 2010
Pessoal, dia 6 de Março de 2010 haverá o 6º encontro da comunidade brasileira de C e C++ em São Paulo.
Eu tive o privilégio de ser convidado para palestrar sobre o RobotQt. O título da palestra é: Simulador de robótica com Qt Framework.
Não perca esse evento. Faça a inscrição aqui!
Posted in C, C++, Eventos, RobotQt.
Tagged with C, Eventos, RobotQt.
By Felipe Tonello
– January 21, 2010
Olá pessoal,
Depois de um bom tempo sem postar estou de volta para anunciar um portal que fiz. O ValeTI. É basicamente um portal de anúncios de emprego de TI na região do Vale do Paraíba.
Para desenvolve-lo eu segui basicamente a idéia de desenvolvimento. Ser simples, claro e genérico. Por isso fiz bom uso de Python e Django.
Fiquei impressionado com o Django. É realmente uma ferramenta impressionante. Super fácil de usar, completa e muito genérica.
Taí a dica. Agora nesse ano de 2010 voltarei com meus posts de artigos e tutoriais. O ano de 2009 foi muito corrido e não deu para fazer nada praticamente devido ao vestibular.
Posted in Django, Projetos, Web, Web Standards, XHTML.
By Felipe Tonello
– January 9, 2010
Atualizei agora pouco um promo code para o DreamHost.
Se você estiver procurando o melhor host que existe para hospedar seu site ou blog, descubra como ganhar esse desconto agora!
Fazendo isso, você estará contribuindo para que seja pago meu plano de hospedagem. Muito obrigado!
Se tiver alguma dúvida ou sugestão, fique à vontade para comentar.
Posted in Diversos, Nerd, Web.
Tagged with dreamhost.
By Felipe Tonello
– November 10, 2009
Quanto tempo que não posto! Apesar de ter muitas idéias em mente, estive privado de postar esse ano pelo fato de estar estudando para o vestibular.
Mas enfim, estou com um tempinho hoje e resolvi atualizar o plugin Category Show para o WordPress devido a grande quantidade de feedback.
Nessa nova versão, a 0.3, vou adicionar opção de geração de tags em uma página de opções. E também a possibilidade de ordenar a lista.
É isso aí pessoal, abraço!
Posted in WordPress.
Tagged with PHP, Web, WP Plugins.
By Felipe Tonello
– October 23, 2009
Recent Comments