The number, 197, is called a circular prime because all rotations of the digits: 197, 971, and 719, are themselves prime.
There are thirteen such primes below 100: 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, and 97.
Given a number x, write a MATLAB script that will tell you the number of circular primes less than or equal to x as well as a sorted list of what the circular prime numbers are.
Solution Stats
Problem Comments
6 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers649
Suggested Problems
-
5016 Solvers
-
1777 Solvers
-
Calculate the Levenshtein distance between two strings
1506 Solvers
-
787 Solvers
-
2955 Solvers
More from this Author80
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Very nice problem!
How do you return two separable outputs via a single vector?
Christopher, I should have been more clear in the problem description.
There are two outputs to the function. The first output (how_many) is a scalar, and is the number of circular primes.
The second output (what_numbers) is the vector containing the values of the circular primes.
Does this help?
197 is not circular prime, because neither 791 nor 917 are themselves prime. Only test case 2 is correct.
Christopher, if our number is represented as ABC, then a cicrular prime is a number where ABC, BCA, and CAB are all prime. You are either shifting the numbers in the opposite direction or scrambling them. Not every permutation of the numbers has to be a prime number, although that in itself would be an interesting Cody problem. :-)
good question! tricky