📜  使用递归的2个数字的乘积

📅  最后修改于: 2021-04-27 23:09:47             🧑  作者: Mango

给定两个数字x和y,使用递归查找乘积。
例子 :

Input : x = 5, y = 2
Output : 10

Input : x = 100, y = 5
Output : 500

方法
1)如果x小于y,则交换两个变量的值
2)递归求y乘以x的总和
3)如果其中任何一个变为零,则返回0

C++
// C++ Program to find Product
// of 2 Numbers using Recursion
#include 
using namespace std;
 
// recursive function to calculate
// multiplication of two numbers
int product(int x, int y)
{
    // if x is less than
    // y swap the numbers
    if (x < y)
        return product(y, x);
 
    // iteratively calculate
    // y times sum of x
    else if (y != 0)
        return (x + product(x, y - 1));
 
    // if any of the two numbers is
    // zero return zero
    else
        return 0;
}
 
// Driver Code
int main()
{
    int x = 5, y = 2;
    cout << product(x, y);
    return 0;
}


Java
// Java Program to find Product
// of 2 Numbers using Recursion
import java.io.*;
import java.util.*;
 
class GFG
{
     
    // recursive function to calculate
    // multiplication of two numbers
    static int product(int x, int y)
    {
        // if x is less than
        // y swap the numbers
        if (x < y)
            return product(y, x);
     
        // iteratively calculate
        // y times sum of x
        else if (y != 0)
            return (x + product(x, y - 1));
     
        // if any of the two numbers is
        // zero return zero
        else
            return 0;
    }
     
    // Driver Code
    public static void main (String[] args)
    {
        int x = 5, y = 2;
        System.out.println(product(x, y));
    }
}
 
// This code is contributed by Gitanjali.


Python3
# Python3 to find Product of
# 2 Numbers using Recursion
 
# recursive function to calculate
# multiplication of two numbers
def product( x , y ):
    # if x is less than y swap
    # the numbers
    if x < y:
        return product(y, x)
     
    # iteratively calculate y
    # times sum of x
    elif y != 0:
        return (x + product(x, y - 1))
     
    # if any of the two numbers is
    # zero return zero
    else:
        return 0
 
# Driver code
x = 5
y = 2
print( product(x, y))
 
# This code is contributed
# by Abhishek Sharma44.


C#
// C# Program to find Product
// of 2 Numbers using Recursion
using System;
 
class GFG
{
     
    // recursive function to calculate
    // multiplication of two numbers
    static int product(int x, int y)
    {
        // if x is less than
        // y swap the numbers
        if (x < y)
            return product(y, x);
     
        // iteratively calculate
        // y times sum of x
        else if (y != 0)
            return (x + product(x, y - 1));
     
        // if any of the two numbers is
        // zero return zero
        else
            return 0;
    }
     
    // Driver code
    public static void Main ()
    {
        int x = 5, y = 2;
        Console.WriteLine(product(x, y));
    }
}
 
// This code is contributed by vt_m.


PHP


Javascript


输出 :

10