我们有一个整数变量 N 来存储正整数类型值。任务是递归打印小于给定值 N 的所有数字,其中包含数字 1、3 或两者的组合。
输入− int num = 40
输出 − 用于打印所有小于 N 且仅由数字 1 或 3 组成的数字的递归程序为: 33 31 13 11 3 1
解释 − 我们得到一个存储在变量 num 中的正整数值 40。现在,我们将递归地找出所有包含数字 1、3 或两者的数字,以及小于 40 的数字是 1, 3, 11, 13, 31, 33
输入− int num = 5
输出 − 用于打印所有小于 N 且仅由数字 1 或 3 组成的数字的递归程序为: 3 1
解释 − 我们得到一个正整数值 40,存储在变量 num 中。现在,我们将递归地找出所有包含数字 1、3 或两者的数字以及小于 5 的数字 是 1 和 3。
输入− int num = 1
输出
输出− 错误输入
#include <iostream> using namespace std; void Recursive_Numbers(int num){ bool check = 1; int temp = num; if(num > 0){ while(temp > 0 && check == 1){ int digit = temp % 10; if (digit != 1 && digit != 3){ check = 0; } temp = temp / 10; } if(check == 1){ cout<< num << " "; } Recursive_Numbers(num - 1); } } int main(){ int num = 40; if(num <= 1){ cout<<"Wrong input"; } else{ cout<<"Recursive program to print all numbers less than N which consist of digits 1 or 3 only are: "; Recursive_Numbers(num); } return 0; }输出🎜🎜🎜🎜如果我们运行上述代码,将生成以下输出🎜
Recursive program to print all numbers less than N which consist of digits 1 or 3 only are: 33 31 13 11 3 1🎜
以上是递归程序打印所有小于N的仅由数字1或3组成的数字的详细内容。更多信息请关注PHP中文网其他相关文章!