Problem 1095. Circular Primes (based on Project Euler, problem 35)
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
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
Solution Comments
Show commentsProblem Recent Solvers471
Suggested Problems

Project Euler: Problem 2, Sum of even Fibonacci
2186 Solvers

Check if number exists in vector
10886 Solvers

Replace Nonzero Numbers with 1
369 Solvers

Find the sides of an isosceles triangle when given its area and height from its base to apex
1762 Solvers

971 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!