📜  打印给定数字的所有可能的算术表达式

📅  最后修改于: 2021-05-17 06:34:44             🧑  作者: Mango

给定整数N,任务是使用从1到N的所有数字以及二进制运算符+,–,*和/来打印所有可能的算术表达式。

例子:

方法:

  • 我们将创建一个长度= n + n – 1的字符数组,因为要使具有n个操作数的表达式有效,我们将需要n-1个运算符
  • 迭代数组,将数字放在偶数位置,将符号放在奇数位置,然后递归调用函数。
  • 如果字符数等于数组的长度,请打印数组。

下面是上述方法的实现:

// C++ program to print all the 
// expressions for the input value 
  
#include
#include
using namespace std;
  
// Function to print all the
// expressions using the number
void PrintRecursive(char *str,int arr[],
                 int i, int n,char *res,
                 int j, int len,int ln)
{
    // Termination condition
    if(j==len)
    {
        res[j]='\0';
        cout<
输出:
1+2
1-2
1/2
1*2