How to multiply two numbers using recursion in C

1 Answer

0 votes
#include <stdio.h>
 
int multiply(int x, int y) {
    if (y > 0) {
        return (x + multiply(x, y - 1));
    }
 
    if (y < 0) {
        return -multiply(x, -y);
    }
 
    return 0;
}
 
int main()
{
    printf("%d\n", multiply(3, 7));
    printf("%d\n", multiply(4, 16));
    printf("%d\n", multiply(5, 0));
    printf("%d\n", multiply(0, 8));
    printf("%d\n", multiply(2, -5));
    printf("%d\n", multiply(-4, 6));
    printf("%d\n", multiply(-5, -7));
 
    return 0;
}
 
 
 
 
/*
run:
 
21
64
0
0
-10
-24
35
 
*/

 



answered May 24, 2023 by avibootz
edited Mar 15, 2024 by avibootz
...