Given two integer number n and d. The task is to find the number between 0 to n which contain the specific digit d.
Examples:
Input : n = 20
d = 5
Output : 5 15
Input : n = 50
d = 2
Output : 2 12 20 21 22 23 24 25 26 27 28 29 32 42 Approach 1:
Take a loop from 0 to n and check each number one by one, if the number contains digit d then print it otherwise increase the number. Continue this process until loop ended.
C++
// C++ program to print the number which// contain the digit d from 0 to n#include <bits/stdc++.h>using namespace std;// Returns true if d is present as digit// in number x.bool isDigitPresent(int x, int d){ // Breal loop if d is present as digit while (x > 0) { if (x % 10 == d) break; x = x / 10; } // If loop broke return (x > 0);}// function to display the valuesvoid printNumbers(int n, int d){ // Check all numbers one by one for (int i = 0; i <= n; i++) // checking for digit if (i == d || isDigitPresent(i, d)) cout << i << " ";}// Driver codeint main(){ int n = 47, d = 7; printNumbers(n, d); return 0;} |
Java
// Java program to print the number which// contain the digit d from 0 to nclass GFG{ // Returns true if d is present as digit // in number x. static boolean isDigitPresent(int x, int d) { // Breal loop if d is present as digit while (x > 0) { if (x % 10 == d) break; x = x / 10; } // If loop broke return (x > 0); } // function to display the values static void printNumbers(int n, int d) { // Check all numbers one by one for (int i = 0; i <= n; i++) // checking for digit if (i == d || isDigitPresent(i, d)) System.out.print(i + " "); } // Driver code public static void main(String[] args) { int n = 47, d = 7; printNumbers(n, d); }} |
Python3
# Python3 program to print the number which# contain the digit d from 0 to n# Returns true if d is present as digit# in number x.def isDigitPresent(x, d): # Breal loop if d is present as digit while (x > 0): if (x % 10 == d): break x = x / 10 # If loop broke return (x > 0)# function to display the valuesdef printNumbers(n, d): # Check all numbers one by one for i in range(0, n+1): # checking for digit if (i == d or isDigitPresent(i, d)): print(i,end=" ")# Driver coden = 47d = 7print("The number of values are")printNumbers(n, d)#This code is contributed by#Smitha Dinesh Semwal |
C#
// C# program to print the number which// contain the digit d from 0 to nusing System;class GFG { // Returns true if d is present as digit // in number x. static bool isDigitPresent(int x, int d) { // Breal loop if d is present as digit while (x > 0) { if (x % 10 == d) break; x = x / 10; } // If loop broke return (x > 0); } // function to display the values static void printNumbers(int n, int d) { // Check all numbers one by one for (int i = 0; i <= n; i++) // checking for digit if (i == d || isDigitPresent(i, d)) Console.Write(i + " "); } // Driver code public static void Main() { int n = 47, d = 7; printNumbers(n, d); }}// This code contribute by parashar. |
PHP
<?php// PHP program to print the number which// contain the digit d from 0 to n// Returns true if d is present as digit// in number x.function isDigitPresent($x, $d){ // Breal loop if d is // present as digit while ($x > 0) { if ($x % 10 == $d) break; $x = $x / 10; } // If loop broke return ($x > 0);}// function to display the valuesfunction printNumbers($n, $d){ // Check all numbers one by one for ($i = 0; $i <= $n; $i++) // checking for digit if ($i == $d || isDigitPresent($i, $d)) echo $i , " ";} // Driver Code $n = 47; $d = 7; printNumbers($n, $d); // This code contributed by ajit.?> |
Javascript
<script>// JavaScript program to print the number which// contain the digit d from 0 to n// Returns true if d is present as digit// in number x.function isDigitPresent(x, d){ // Breal loop if d is present as digit while (x > 0) { if (x % 10 == d) break; x = x / 10; } // If loop broke return (x > 0);}// Function to display the valuesfunction printNumbers(n, d){ // Check all numbers one by one for(let i = 0; i <= n; i++) // Checking for digit if (i == d || isDigitPresent(i, d)) document.write(i + " ");} // Driver codelet n = 47, d = 7;printNumbers(n, d);// This code is contributed by splevel62</script> |
The number of values are 7 17 27 37 47
Approach 2:
This approach uses every number as a String and checks digit is present or not. This approach use of String.indexOf() function to check if the character is present in the string or not.
String.indexOf() >= 0 means chaaracter is present
and String.indexOf() = -1 means character is not present
C++
// CPP program to print the number which// contain the digit d from 0 to n#include<bits/stdc++.h>using namespace std;// function to display the valuesvoid printNumbers(int n, int d){ // Converting d to character string st = ""; st += to_string(d); char ch = st[0]; string p = ""; p += ch; // Loop to check each digit one by one. for (int i = 0; i <= n; i++) { // initialize the string st = ""; st = st + to_string(i); int idx = st.find(p); // checking for digit if (i == d || idx!=-1) cout << (i) << " "; }}// Driver codeint main(){ int n = 100, d = 5; printNumbers(n, d);} // This code is contributed by// Surendra_Gangwar |
Java
// Java program to print the number which// contain the digit d from 0 to npublic class GFG { // function to display the values static void printNumbers(int n, int d) { // Converting d to character String st = "" + d; char ch = st.charAt(0); // Loop to check each digit one by one. for (int i = 0; i <= n; i++) { // initialize the string st = ""; st = st + i; // checking for digit if (i == d || st.indexOf(ch) >= 0) System.out.print(i + " "); } } // Driver code public static void main(String[] args) { int n = 100, d = 5; printNumbers(n, d); }} |
Python3
# Python 3 program to print the number# which contain the digit d from 0 to ndef index(st, ch): for i in range(len(st)): if(st[i] == ch): return i; return -1 # function to display the valuesdef printNumbers(n, d): # Converting d to character st = "" + str(d) ch = st[0] # Loop to check each digit one by one. for i in range(0, n + 1, 1): # initialize the string st = "" st = st + str(i) # checking for digit if (i == d or index(st, ch) >= 0): print(i, end = " ")# Driver codeif __name__ == '__main__': n = 100 d = 5 printNumbers(n, d)# This code is contributed by# Shashank_Sharma |
C#
// C# program to print the number which// contain the digit d from 0 to nusing System;class GFG{ // function to display the values static void printNumbers(int n, int d) { // Converting d to character String st = "" + d; char ch = st[0]; // Loop to check each digit one by one. for (int i = 0; i < n; i++) { // initialize the string st = ""; st = st + i; // checking for digit if (i == d || st.IndexOf(ch) >= 0) Console.Write(i + " "); } } // Driver code public static void Main() { int n = 100, d = 5; printNumbers(n, d); }}/* This code contributed by PrinciRaj1992 */ |
5 15 25 35 45 50 51 52 53 54 55 56 57 58 59 65 75 85 95
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.


