hey just tell me the problem clearly..........
......ip : l1 : 1 - > 1
l2: 1 -> 1
op : l3: 1->2->1 ......(means 11*11=121)
this is wat is expected no???
On Jul 18, 2:09 am, Piyush Sinha <[email protected]> wrote:
> check my code below...it works for all cases....
> *
> **node *MUL(node *h1,node *h2)
> {
> node *h3,*p,*r;
> h1 = reverse(h1);
> h2 = reverse(h2);
> h3 = multiply(h1,h2->data);
> h2 = h2->next;
> p = h3;
> while(h2)
> {
> r = multiply(h1,h2->data);
> p->next = add(p->next,r);
> p = p->next;
> h2 = h2->next;
> }
> h3 = reverse(h3);
> return h3;
>
> }
>
> **node *multiply(node *h,int x)
> {
> node *head = NULL;
> node *p;
> int mul,carry=0;
> while(h)
> {
> if(!head)
> {
> head = (node *)malloc(sizeof(node));
> mul = (x*(h->data));
> carry = mul/10;
> mul=mul%10;
> head->data=mul;
> head->next = NULL;
> p = head;
> }
> else
> {
> p->next = (node *)malloc(sizeof(node));
> p = p->next;
> p->next = NULL;
> mul = (x*(h->data));
> p->data = (mul%10)+carry;
> carry = mul/10;
> }
> h = h->next;
> }
> if(carry)
> {
> p->next = (node *)malloc(sizeof(node));
> p = p->next;
> p->next = NULL;
> p->data = carry;
> }
> return head;
>
> }
>
> node * add(node *h1,node *h2)
> {
> node *h3 = NULL;
> node *p;
> int sum,carry = 0;
> while(h1)
> {
> sum = h1->data+h2->data+carry;
> carry = sum/10;
> sum = sum%10;
> if(h3==NULL)
> {
> h3 = (node *)malloc(sizeof(node));
> h3->data = sum;
> h3->next = NULL;
> p =h3;
> }
> else
> {
> p->next = (node *)malloc(sizeof(node));
> p = p->next;
> p->next = NULL;
> p->data = sum;
> }
> h1 = h1->next;
> h2 = h2->next;
> }
> while(h2)
> {
> p->next= (node *)malloc(sizeof(node));
> p = p->next;
> p->next = NULL;
> sum = h2->data + carry;
> carry = sum/10;
> sum = sum%10;
> p->data = sum;
> h2 = h2->next;
> }
> if(carry)
> {
> p->next = (node *)malloc(sizeof(node));
> p = p->next;
> p->next = NULL;
> p->data = carry;
> }
> return h3;
>
> }
>
> *
> On Mon, Jul 18, 2011 at 2:34 AM, aditi garg <[email protected]>wrote:
>
>
>
>
>
>
>
>
>
> > and 6 is carry forwarded???
> > next node wud be 6*7=42+6=48
> > 8 and 4 carry?
>
> > On Mon, Jul 18, 2011 at 2:28 AM, hary rathor <[email protected]>wrote:
>
> >> sorry 7*9=63
>
> >> put 3 in list 3
>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "Algorithm Geeks" group.
> >> To post to this group, send email to [email protected].
> >> To unsubscribe from this group, send email to
> >> [email protected].
> >> For more options, visit this group at
> >>http://groups.google.com/group/algogeeks?hl=en.
>
> > --
> > Aditi Garg
> > Undergraduate Student
> > Electronics & Communication Divison
> > NETAJI SUBHAS INSTITUTE OF TECHNOLOGY
> > Sector 3, Dwarka
> > New Delhi
>
> > 9718388816
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Algorithm Geeks" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> > [email protected].
> > For more options, visit this group at
> >http://groups.google.com/group/algogeeks?hl=en.
>
> --
> *Piyush Sinha*
> *IIIT, Allahabad*
> *+91-7483122727*
> * <https://www.facebook.com/profile.php?id=100000655377926> "NEVER SAY
> NEVER"
> *
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.