Changing prime numbers in a matrix

1 view (last 30 days)
Doga Ince
Doga Ince on 16 Jun 2021
Commented: Scott MacKenzie on 16 Jun 2021
I printed a 100x100 random matrix of integers from 1 to 50. However, I want to replace the prime numbers in this matrix with the number 1415. How can I replace the prime numbers in that matrix with a specific number (1415)? Thank you.

Answers (1)

Scott MacKenzie
Scott MacKenzie on 16 Jun 2021
M = randi([1 50],100);
M(isprime(M)) = 1415;
  2 Comments
Doga Ince
Doga Ince on 16 Jun 2021
Thank you but i am getting error 😥
Could I be getting an error because I want to both find the prime numbers in my matrix and replace those numbers with 1415? Can you help me?
Scott MacKenzie
Scott MacKenzie on 16 Jun 2021
Ok, sure. This modification stores the locations of the prime numbers in a logical variable, outputs the prime numbers, then replaces the prime numbers in M with 1415.
M = randi([1 50],100);
% find locations in M containing prime number
primeLogical = isprime(M);
% output prime numbers in M
M(primeLogical)
% change prime numbers in M to 1415
M(primeLogical) = 1415;

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!