TheAlgorithms/C-Plus-Plus

[BUG] Incorrect Binary Addition Logic in add_strings in divide_and_conquer/karatsuba_algorithm_for_fast_multiplication.cpp

shrivalidutt opened this issue · 2 comments

Description

The current implementation of add_strings contains an issue with how bits are summed and inserted into the result string. The bitwise XOR and carry logic is incorrect. It incorrectly treats the sum and carry operation as a character instead of using integer arithmetic.

Expected behavior

The function add_strings is supposed to correctly sum two binary strings, handling the addition of bits along with managing carry.

Actual behavior

Instead of performing correct integer arithmetic for binary addition, the function uses bitwise XOR and character casting, leading to incorrect results.

Steps to reproduce

No response

Context

The incorrect use of XOR and char casting caused the function to fail at handling binary addition properly. This bug results in faulty summation, especially when there is a carry involved between bit positions.

Additional information

The bug causes the program to produce incorrect results for binary multiplication.

This issue has been automatically marked as abandoned because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Please ping one of the maintainers once you add more information and updates here. If this is not the case and you need some help, feel free to ask for help in our Gitter channel or our Discord server. Thank you for your contributions!