Integers without repeating consecutively
57 views (last 30 days)
Show older comments
Jose Grimaldo
on 15 Oct 2019
Commented: Blaine Warner
on 8 Oct 2021
A pincode consists of N integers between 1 and 9. In a valid pincode, no integer is allowed to repeat consecutively. For example, 1, 4, 5, 5, 6, 7 is invalid because 5 occurs twice. I tested the example but it does not outputs what the example shows. Any suggestions.
1 Comment
Image Analyst
on 15 Oct 2019
Insert code or attach the m-file. Make it easy for people to help you, not hard.
Accepted Answer
Shivam Prasad
on 17 Oct 2019
Edited: Shivam Prasad
on 17 Oct 2019
Hi Jose,
Check if the following code works for you:-
function [repPos, pinCodeFix] = pinCodeCheck(pinCode)
repPos = [];
pinCodeFix = [pinCode(1)];
for i=2:length(pinCode)
if pinCode(i-1) == pinCode(i)
repPos = [repPos i];
else
pinCodeFix = [pinCodeFix pinCode(i)];
end
end
end
Produces the output as:-
repPos =
3 5
pinCodeFix =
2 9 5 3
0 Comments
More Answers (1)
Andrei Bobrov
on 17 Oct 2019
function [repPos, pinCodeFix] = pinCodeCheck(pinCode)
lo = [true;diff(pinCode(:)) ~= 0];
repPos = find(~lo);
pinCodeFix = pinCode(lo);
end
1 Comment
Blaine Warner
on 8 Oct 2021
i don't think we are supposed to have learned any of that yet, if we are going in order of what we've learned how to impliment in the chapters, (and this homework requires using arrays which arent taught until the next chapter anyway, to the professor made these extra credit) all we are supposed to use is loops, arrays, and branches
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!