A special two-digit number is a number such that when the sum of the digits of the number is added to the product of its digits, the result is equal to the original two-digit number.
Examples :
input : 59. output : 59 is a Special Two-Digit Number Explanation: Sum of digits = 5 + 9 = 14 Product of its digits = 5 x 9 = 45 Sum of the sum of digits and product of digits = 14 + 45 = 59 input: 29 output: 29 is a Special Two-digit Number Explanation: Sum of digits = 9 + 2 = 11 Product of digits = 9 * 2 = 18 Sum of the sum of digits and product of digits = 11 + 18 = 29
Approach:
Extract the first and last digit of the number and add and multiply the digits separately. Then, add the sum and product of the digits of the two-digit number and compare it to the original number. If they are same, then it is a Special Two-Digit Number, else it is not.
Below is the implementation of above approach:
// CPP program to find if number is // a Special Two-Digit number or not #include<bits/stdc++.h> using namespace std;
// function to find if number // is special or not void specialNumber( int n)
{ // Checking whether entered
// number is 2 digit or not
if (n < 10 || n > 99)
cout << "Invalid Input! Number"
<< " should have 2 digits only" ;
else
{
// Finding the first digit
int first = n / 10;
// Finding the last digit
int last = n % 10;
// Finding the sum of
// the digits
int sum = first + last;
// Finding the product
// of the digits
int pro = first * last;
if ((sum + pro) == n)
{
cout << n << " is a Special "
<< "Two-Digit Number" ;
}
else
{
cout << n << " is Not a "
<< "Special Two-Digit Number" ;
}
}
} // Driver Code int main()
{ int n = 59;
// function calling
specialNumber(n);
return 0;
} |
// Java program to find if number is // a Special Two-Digit number or not import java.io.*;
class GFG
{ // function to find if number
// is special or not
static void specialNumber( int n)
{
// Checking whether entered
// number is 2 digit or not
if (n < 10 || n > 99 )
System.out.println( "Invalid Input! " +
"Number should have " +
"2 digits only" );
else
{
// Finding the first digit
int first = n / 10 ;
// Finding the last digit
int last = n % 10 ;
// Finding the sum
// of the digits
int sum = first + last;
// Finding the product
// of the digits
int pro = first * last;
if ((sum + pro) == n)
{
System.out.println(n + " is a Special" +
" Two-Digit Number" );
}
else
{
System.out.println(n + " is Not a Special" +
" Two-Digit Number" );
}
}
}
// Driver Code
public static void main(String args[])
{
int n = 59 ;
specialNumber(n);
}
} |
# Python3 code to find if # number is a Special # Two-Digit number or not # Function to find if number # is special or not def specialNumber(n):
# Checking whether entered
# number is 2 digit or not
if (n < 10 or n > 99 ):
print ( "Invalid Input! Number" ,
" should have 2 digits only" )
else :
# Finding the first digit
first = n / / 10
# Finding the last digit
last = n % 10
# Finding the sum
# of the digits
sum = first + last
# Finding the product
# of the digits
pro = first * last
if (( sum + pro) = = n):
print (n , " is a Special " ,
"Two-Digit Number" )
else :
print (n , " is Not a " ,
"Special Two-Digit Number" )
# Driver code n = 59
specialNumber(n) # This code is contributed # by Anant Agarwal. |
// C# program to find if number is // a Special Two-Digit number or not using System;
class GFG
{ // function to find if number
// is special or not
static void specialNumber( int n)
{
// Checking whether entered
// number is 2 digit or not
if (n < 10 || n > 99)
Console.WriteLine( "Invalid Input!" +
" Number should have" +
" 2 digits only" );
else
{
// Finding the first digit
int first = n / 10;
// Finding the last digit
int last = n % 10;
// Finding the sum
// of the digits
int sum = first + last;
// Finding the product
// of the digits
int pro = first * last;
if ((sum + pro) == n)
{
Console.WriteLine(n + " is a Special" +
" Two-Digit Number" );
}
else
{
Console.WriteLine(n + " is Not a Special" +
" Two-Digit Number" );
}
}
}
// Driver Code
public static void Main()
{
int n = 59;
specialNumber(n);
}
} // This code is contributed by vt_m. |
<?php // PHP program to find if number is // a Special Two-Digit number or not // function to find if number // is special or not function specialNumber( $n )
{ // Checking whether entered
// number is 2 digit or not
if ( $n < 10 || $n > 99)
echo "Invalid Input!
Number should
have 2 digits only";
else
{
// Finding the first digit
$first = $n / 10;
// Finding the last digit
$last = $n % 10;
// Finding the sum
// of the digits
$sum = $first + $last ;
// Finding the product
// of the digits
$pro = $first * $last ;
if (( $sum + $pro ) != $n )
{
echo $n , " is a Special " .
"Two-Digit Number" ;
}
else
{
echo $n , " is Not a Special" .
" Two-Digit Number" ;
}
}
} // Driver Code $n = 59;
// function calling specialNumber( $n );
// This code is contributed by ajit. ?> |
<script> // JavaScript program to find if number is
// a Special Two-Digit number or not
// function to find if number
// is special or not
function specialNumber(n) {
// Checking whether entered
// number is 2 digit or not
if (n < 10 || n > 99)
document.write(
"Invalid Input! Number" +
" should have 2 digits only"
);
else {
// Finding the first digit
var first = parseInt(n / 10);
// Finding the last digit
var last = parseInt(n % 10);
// Finding the sum of
// the digits
var sum = first + last;
// Finding the product
// of the digits
var pro = first * last;
if (sum + pro === n) {
document.write(
n + ( " is a Special " +
"Two-Digit Number" )
);
} else {
document.write(
n +
( " is Not a " + "Special Two-Digit Number" )
);
}
}
}
// Driver Code
var n = 59;
// function calling
specialNumber(n);
</script> |
59 is a Special Two-Digit Number
Time Complexity: O(1), As we are performing constant time operations.
Auxiliary Space: O(1), As constant extra space is used.