Integers without repeating consecutively

64 visualizaciones (últimos 30 días)
Jose Grimaldo
Jose Grimaldo el 15 de Oct. de 2019
Comentada: Blaine Warner el 8 de Oct. de 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.
Screenshot (142).png
  1 comentario
Image Analyst
Image Analyst el 15 de Oct. de 2019
Insert code or attach the m-file. Make it easy for people to help you, not hard.

Iniciar sesión para comentar.

Respuesta aceptada

Shivam Prasad
Shivam Prasad el 17 de Oct. de 2019
Editada: Shivam Prasad el 17 de Oct. de 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

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 17 de Oct. de 2019
function [repPos, pinCodeFix] = pinCodeCheck(pinCode)
lo = [true;diff(pinCode(:)) ~= 0];
repPos = find(~lo);
pinCodeFix = pinCode(lo);
end
  1 comentario
Blaine Warner
Blaine Warner el 8 de Oct. de 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

Iniciar sesión para comentar.

Categorías

Más información sobre Solver Outputs and Iterative Display en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by