Heim >Backend-Entwicklung >C++ >Ein rekursives Programm gibt alle Zahlen kleiner als N aus, die nur aus den Ziffern 1 oder 3 bestehen
Wir erhalten eine Ganzzahlvariable als N, die den positiven Ganzzahltypwert speichert. Die Aufgabe besteht darin, alle Zahlen, die kleiner als der gegebene Wert N sind und die Ziffern 1, 3 oder eine Kombination aus beiden haben, rekursiv auszugeben.
Eingabe− int num = 40
Ausgabe − Rekursives Programm zum Drucken aller Zahlen kleiner als N, die nur aus den Ziffern 1 oder 3 bestehen, sind: 33 31 13 11 3 1
Erklärung − Wir erhalten einen positiven ganzzahligen Wert als 40, der in einer Variablen num gespeichert ist. Jetzt werden wir rekursiv alle Zahlen herausfinden, die die Ziffern 1, 3 oder beide enthalten, und die Zahlen unter 40 sind 1, 3, 11, 13, 31, 33
Input − int num = 5
Output − Rekursives Programm zum Drucken aller Zahlen kleiner als N, die nur aus den Ziffern 1 oder 3 bestehen, sind: 3 1
Erklärung − Wir erhalten einen positiven ganzzahligen Wert von 40, der in einer Variablen num gespeichert ist. Jetzt werden wir rekursiv alle Zahlen ermitteln, die die Ziffern 1, 3 oder beide enthalten, sowie die Zahlen kleiner als 5 sind 1 und 3.
Input − int num = 1
Output − Wrong Input
Explanation −的正整数值为1.现在,我们将递归地找出所有包含数字1, 3或两者的数字, 并且这些数字小于1 sind 0, da die einzige positive Ganzzahl kleiner als 0 0 ist. Daher ist die Ausgabe eine falsche Eingabe.
Beispiel
#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
Das obige ist der detaillierte Inhalt vonEin rekursives Programm gibt alle Zahlen kleiner als N aus, die nur aus den Ziffern 1 oder 3 bestehen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!