How do I get my MATLAB code to display an error if the user input number is less than four digits and has less than two distinct numbers?

1 vue (au cours des 30 derniers jours)
clear
clc
constant = 6174; % Initialize end condition of while loop
steps = 0; % Initialize steps in a loop
user = input('Please enter a 4 digit number: ') % User inputs a number
digits = num2str(user);
if numel(num2str(user)) < 4 && length(unique(digits)) < 2{
disp("Error. Not a valid number. Enter a four digit number with at least two distinct numbers")
}
end

Réponse acceptée

Walter Roberson
Walter Roberson le 26 Fév 2024
user = input('Please enter a 4 digit number: ') % User inputs a number
digits = num2str(user);
if numel(digits) < 4 || length(unique(digits)) < 2
error("Error. Not a valid number. Enter a four digit number with at least two distinct numbers");
end
However, you have problems if the user inputs a number starting with 0.
  2 commentaires
Richard
Richard le 26 Fév 2024
Thank you!
Is there a way to do it with a number with leading zeros?
Walter Roberson
Walter Roberson le 26 Fév 2024
Modifié(e) : Walter Roberson le 26 Fév 2024
digits = input('Please enter a 4 digit number: ', 's'); % User inputs a number
if numel(digits) ~= 4 || length(unique(digits)) < 2 || ~all(isstrprop(digits, 'digit'))
error("Error. Not a valid number. Enter a four digit number with at least two distinct numbers");
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Read, Write, and Modify Image dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by