13.12.2013, 17:03
Fiz em PAWN considerando os 2 primeiros termos como 1,2:
Tentei fazer tambйm... Em PAWN, vai atй 44 (depois disso da overflow).
pawn Код:
#define termos 20
new x[termos], finalstring[100];
for (new i; i < termos; i++)
{
if(i<2)
{
x[i] = i+1;
} else {
x[i] += x[i-1]+x[i-2];
}
new tmp[10];
if (i != termos-1)
{
format(tmp, sizeof tmp,"%i,",x[i]);
} else {
format(tmp, sizeof tmp,"%i",x[i]);
}
strcat(finalstring,tmp);
}
print(finalstring);
Quote:
Assim й muito fбcil, desafio a fazer um mйtodo iterativo que receba um valor e imprima o termo desse valor de Fibonacci.
|
pawn Код:
stock FiNum(num)
{
if (num > 44) { return print("ERROR"); }
new i = 0, x[44];
while (i != num)
{
if(i<2)
{
x[i] = i+1;
} else {
x[i] += x[i-1]+x[i-2];
}
i++;
}
i--;
return x[i];
}