Velocity Reviews > C++ > How to do fibonacci by linked list ( not by recursive)

# How to do fibonacci by linked list ( not by recursive)

fighterman19
Guest
Posts: n/a

 09-05-2003
because in linked list each node contains only one digit like

curr->nodevalue_1= 0
curr->nodevalue_2=1
sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2

so when the number go up to >10 or >100 and the linked list need another
node (I can add the node to the front ) but how can do the sum ?

ex: 89+144 = 233

Victor Bazarov
Guest
Posts: n/a

 09-05-2003
"fighterman19" <(E-Mail Removed)> wrote...
> because in linked list each node contains only one digit like

>
> curr->nodevalue_1= 0
> curr->nodevalue_2=1
> sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
>
> so when the number go up to >10 or >100 and the linked list need another
> node (I can add the node to the front ) but how can do the sum ?
>
> ex: 89+144 = 233

What's the problem? Can't you implement addition with carry-over?

0 => carry.
label_1:
next_digit1 + next_digit2 + carry => result.
if result > 9 then
1 => carry.
result - 10 => result.
else
0 => carry.
end-if
store result
if have_more_digits go to label_1

I don't see C++ language issue here, BTW.

Victor

Kevin Goodsell
Guest
Posts: n/a

 09-05-2003
fighterman19 wrote:

> because in linked list each node contains only one digit like
>
> curr->nodevalue_1= 0
> curr->nodevalue_2=1
> sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
>
> so when the number go up to >10 or >100 and the linked list need another
> node (I can add the node to the front ) but how can do the sum ?
>
> ex: 89+144 = 233
>
>

Why on earth would you use a linked list for this? Your question doesn't
make much sense.

-Kevin
--
My email address is valid, but changes periodically.

red floyd
Guest
Posts: n/a

 09-05-2003
fighterman19 wrote:
> because in linked list each node contains only one digit like
>
> curr->nodevalue_1= 0
> curr->nodevalue_2=1
> sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
>
> so when the number go up to >10 or >100 and the linked list need another
> node (I can add the node to the front ) but how can do the sum ?
>
> ex: 89+144 = 233
>

May I suggest that you take a stab at doing your own homework, and then

fighterman19
Guest
Posts: n/a

 09-05-2003
Where the hell in my post that you see I YOU or other people to do my
homework for me?

I just want to know how to handle this logic. Did I ask for the entire
program?
and if YOU can't do it (or whatsoever that make you think you are good and
whoever ask in this group is stupid) so SHUT YOUR ****ING MOUTH UP

if all the members in this group are like YOU, this group is not gonna exist
because noone will ask any questions.

by the way "THANK SO MUCH" even YOU are not helpful

"red floyd" <(E-Mail Removed)> wrote in message
news:%E76b.10658\$(E-Mail Removed) om...
> fighterman19 wrote:
> > because in linked list each node contains only one digit like
> >
> > curr->nodevalue_1= 0
> > curr->nodevalue_2=1
> > sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
> >
> > so when the number go up to >10 or >100 and the linked list need

another
> > node (I can add the node to the front ) but how can do the sum ?
> >
> > ex: 89+144 = 233
> > how can I add it to the sum linked list?
> >

>
> May I suggest that you take a stab at doing your own homework, and then
>

fighterman19
Guest
Posts: n/a

 09-05-2003
!!!!!!!!!!!...........???

Sorry is it C++?
I have no idea what it is. May be I have not learned this one yet. Is there
anyway to do with linked list?

"Victor Bazarov" <(E-Mail Removed)> wrote in message
news:dp76b.368085\$o%2.165927@sccrnsc02...
> "fighterman19" <(E-Mail Removed)> wrote...
> > because in linked list each node contains only one digit like

>
> Is that a requirement or just your understanding of linked lists?
>
> >
> > curr->nodevalue_1= 0
> > curr->nodevalue_2=1
> > sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
> >
> > so when the number go up to >10 or >100 and the linked list need

another
> > node (I can add the node to the front ) but how can do the sum ?
> >
> > ex: 89+144 = 233
> > how can I add it to the sum linked list?

>
> What's the problem? Can't you implement addition with carry-over?
>
> 0 => carry.
> label_1:
> next_digit1 + next_digit2 + carry => result.
> if result > 9 then
> 1 => carry.
> result - 10 => result.
> else
> 0 => carry.
> end-if
> store result
> if have_more_digits go to label_1
>
> I don't see C++ language issue here, BTW.
>
> Victor
>
>

fighterman19
Guest
Posts: n/a

 09-05-2003
Yes, I know it doesn't not make sence because the best way to do fibonacci
is to use recursive, right?
to do fibonacci.
That's why I don't know how to handle the logic when the number has too many
digit.

by the way do you understand what i'am asking? I know it is hard to explain
w/o the picture.

"Kevin Goodsell" <(E-Mail Removed)> wrote in message
news:Ht76b.494\$(E-Mail Removed) k.net...
> fighterman19 wrote:
>
> > because in linked list each node contains only one digit like
> >
> > curr->nodevalue_1= 0
> > curr->nodevalue_2=1
> > sum->nodevalue = curr->nodevalue_1 + curr->nodevalue_2
> >
> > so when the number go up to >10 or >100 and the linked list need

another
> > node (I can add the node to the front ) but how can do the sum ?
> >
> > ex: 89+144 = 233
> > how can I add it to the sum linked list?
> >
> >

>
> Why on earth would you use a linked list for this? Your question doesn't
> make much sense.
>
> -Kevin
> --
> My email address is valid, but changes periodically.
> To contact me please use the address from a recent posting.
>

Michael Stockman
Guest
Posts: n/a

 09-05-2003
> Yes, I know it doesn't not make sence because the best way to do fibonacci
> is to use recursive, right?

If you by this meant something like
int fib(int n) { return n < 2 ? 1 : fib(n-1) + fib(n-2); }
then wrong.

It turns out counting the numbers in the opposite order is
(significantly) more efficient, since you will notice that this
solution would calculate small fibonacci number very many times if n
would be greater than very small.

Best regards
Michael Stockman
http://www.velocityreviews.com/forums/(E-Mail Removed)

Kevin Goodsell
Guest
Posts: n/a

 09-05-2003
fighterman19 wrote:

Please do not top-post. Re-read section 5 of the FAQ for posting guidelines.

http://www.parashift.com/c++-faq-lite/

> Yes, I know it doesn't not make sence because the best way to do fibonacci
> is to use recursive, right?

Definitely not. Recursive fibonacci is terribly inefficient, because it
does the same calculations over and over.

> to do fibonacci.
> That's why I don't know how to handle the logic when the number has too many
> digit.

I don't know what the number of digits has to do with it.

>
> by the way do you understand what i'am asking? I know it is hard to explain
> w/o the picture.
>

No, I don't understand.

-Kevin
--
My email address is valid, but changes periodically.

Stuart Golodetz
Guest
Posts: n/a

 09-08-2003
"fighterman19" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
<snip faintly ridiculous flame>

Wow, you can swear at someone in a newsgroup. We'd all be very impressed, if
it wasn't quite so stunningly lame. And to think I was actually about to
question correctly, it wasn't hugely clear). For the record, you'd be
surprised at how many people post here expecting someone to do their
homework. The result of which is, of course, that we prefer to answer
questions where people have actually had a stab at the code themselves; it
demonstrates a modicum of effort. Of course, if we're in a good mood and
feeling kind (which is most of the time, in my experience), we'll try and
help out anyway, even if we're not given a huge amount to go on. At any
rate, we will until you decide to start yelling at people, at which stage
most of us generally decide it's not worth the bother and just killfile you.
FWIW, if you apologise in the immediate future (i.e. preferably before
everybody's read the original post), I think people would still try and
edge of quite a few people's killfiles, though. And the only person who
loses out if everyone ignores you is you, bottom line. Perhaps a damage
limitation exercise is in order?

Just a suggestion,

Stuart.

P.S. The site you're looking for is http://www.parashift.com/c++-faq-lite/
Perhaps reading Section 5 would be useful?

<snip>