Check Whether the number is twisted prime | Java, Python, C & C++ program to check if a input number is twisted prime | Java, Python, C & C++ program to check if a given number is twisted prime or not


Explanation of the Code: Java, Python, C & C++ program to check if a input number is twisted prime

The problem defines a "Twisted Prime Number" as a number that:

  1. Itself is prime.
  2. The number formed by reversing its digits is also prime.

A number is called a twisted prime number if it is a prime number and reverse of this number is also a prime number.

Example: 31


Check Whether the number is twisted prime | Java, Python, C & C++ program to check if a input number is twisted prime | Java, Python, C & C++ program to check if a given number is twisted prime or not
Check Whether the number is twisted prime | Java, Python, C & C++ program to check if a input number is twisted prime | Java, Python, C & C++ program to check if a given number is twisted prime or not




The logic follows these steps:

  • isPrime: This function checks if a number is prime by testing divisibility for all numbers less than n.
  • reverse: This function reverses the digits of the number m by repeatedly extracting the last digit and building the reversed number.
  • isTwistedPrime: This function checks if both the number a and its reversed version b are prime. If they are, it prints that the number is a "Twisted Prime"; otherwise, it prints that it's not.

Java Code : to check if a input number is twisted prime


import java.util.Scanner;

public class twistedPrime {
public static boolean isPrime(int n)
{
int i=2;
boolean prime=true;
while(n>i)
{
if(n%i==0)
{
prime=false;
break;
}
i++;
}
return prime;
}

public static int reverse(int m)
{
int digit;
int rev=0;
while(m!=0)
{
digit=m%10;
rev=rev*10+digit;
m=m/10;
}
return rev;

}

public static void isTwistedPrime(int a)
{
int b=reverse(a);
if(isPrime(a)&& isPrime(b))
{
System.out.println(a+" is a Twisted Prime Number.");

}
else
{
System.out.println(a+" is not a Twisted Prime Number.");
}
}
public static void main(String[] args) {
Scanner read=new Scanner(System.in);
System.out.print("Enter a number: ");
int a=read.nextInt();
read.close();
isTwistedPrime(a);

}
}


// |VICTORY| The code ran successfully !

Python Code: to check if a input number is twisted prime

def is_prime(n): i = 2 while n > i: if n % i == 0: return False i += 1 return True def reverse(m): rev = 0 while m != 0: digit = m % 10 rev = rev * 10 + digit m //= 10 return rev def is_twisted_prime(a): b = reverse(a) if is_prime(a) and is_prime(b): print(f"{a} is a Twisted Prime Number.") else: print(f"{a} is not a Twisted Prime Number.") # Input and output a = int(input("Enter a number: ")) is_twisted_prime(a)

C code : to check if a input number is twisted prime

#include <stdio.h> int isPrime(int n) { int i = 2; while (n > i) { if (n % i == 0) { return 0; // not prime } i++; } return 1; // prime } int reverse(int m) { int digit, rev = 0; while (m != 0) { digit = m % 10; rev = rev * 10 + digit; m = m / 10; } return rev; } void isTwistedPrime(int a) { int b = reverse(a); if (isPrime(a) && isPrime(b)) { printf("%d is a Twisted Prime Number.\n", a); } else { printf("%d is not a Twisted Prime Number.\n", a); } } int main() { int a; printf("Enter a number: "); scanf("%d", &a); isTwistedPrime(a); return 0; }

C++ : program to check if a input number is twisted prime

#include <iostream> using namespace std; bool isPrime(int n) { int i = 2; while (n > i) { if (n % i == 0) { return false; // not prime } i++; } return true; // prime } int reverse(int m) { int digit, rev = 0; while (m != 0) { digit = m % 10; rev = rev * 10 + digit; m = m / 10; } return rev; } void isTwistedPrime(int a) { int b = reverse(a); if (isPrime(a) && isPrime(b)) { cout << a << " is a Twisted Prime Number." << endl; } else { cout << a << " is not a Twisted Prime Number." << endl; } } int main() { int a; cout << "Enter a number: "; cin >> a; isTwistedPrime(a); return 0; }


Time Complexity:

  1. isPrime function:

    • The isPrime function checks if a number n is prime by dividing it from 2 to n-1 (or until sqrt(n) for optimization, but the current code doesn't include this optimization). The time complexity of this is O(n) in the worst case.
  2. reverse function:

    • The reverse function processes each digit of the number. The time complexity for reversing a number m is O(d), where d is the number of digits in m. Since d is proportional to log(m), the time complexity is O(log m).
  3. isTwistedPrime function:

    • The function calls isPrime(a) and isPrime(reverse(a)). Thus, the total time complexity is the sum of:
      • O(n) for checking if a is prime.
      • O(log a) for reversing a (since reverse(a) takes O(log a) time).
      • O(n) for checking if the reversed number is prime.
    • Hence, the total time complexity is O(n + log a + n) = O(n) in the worst case.

Overall Time Complexity: O(n) (for checking primality).

Space Complexity:

The space complexity is O(1) because the algorithm uses only a few integer variables (i, rev, etc.), and no additional memory-dependent data structures are used.

Overall Space Complexity: O(1).


Thank You for reading this post. You can check out more articles like this on www.physicswallah.in .
If you have any doubts then you can post a comment below.

1 comment:

  1. Thora website ko acche se customise ki jarurat i am a web developer i can help you please take me as a team member

    ReplyDelete

 

Notes Centre is an independent educational website. It is not affiliated with, endorsed by or connected to Physics Wallah Ltd, NCERT, CBSE, AKTU or any company named on this site. About · Disclaimer · Privacy · Editorial policy · Copyright · Contact