Logical and function question.

I'm trying to create a function that satisfies the following conditions :
- There must be more letters than numbers in combination.
- There must be at least one uppercase letter.
- The summation of all numeric digits must be between the given minimal and maximal values (exclusive).
And the following is the input I put in. (originalcombo, mincombo, maxcombo) and the output is supposed to be 'true'(1) but it keeps giving me the answer that it's false(0). How can I fix this problem?
originalcombo = 'GPBurdell1885';
mincombo = 20;
maxcombo = 30;
numbercombo=str2double(regexp(originalcombo,'[\d.]+','match'));
W=str2double(regexp(num2str(numbercombo),'\d','match'));
numberoutput = sum(numbercombo);
B = length(originalcombo);
C = B - length(numbercombo);
A = isstrprop(originalcombo, 'upper');
A = sum(A);
lock = (C > length(W)) && (A > 0) && (maxcombo>numberoutput>mincombo)

2 Commenti

Walter Roberson
Walter Roberson il 16 Set 2016
Modificato: Walter Roberson il 16 Set 2016
I would point out that the numeric digits are not necessarily going to be beside each other, and that the digits are to be added individually. I would also point out that '.' should not be included as a numeric digit.
You just asked this question. So why post a second question just to provide more information?????????
Add a comment (NOT a new question, NOT an answer.) Or edit your original question.

Accedi per commentare.

Risposte (0)

Prodotti

Richiesto:

il 16 Set 2016

Commentato:

il 16 Set 2016

Community Treasure Hunt

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

Start Hunting!

Translated by