how to compare previous and next values in MATLAB?
조회 수: 26 (최근 30일)
이전 댓글 표시
Write a function called number_pattern that takes no input arguments and returns no output arguments. Instead it gets it input via the function input. It asks for a number repeatedly until the user puts in the same number twice in a row. The loop that it uses must be a while-loop. Here is an example run:
>> matching_number
Please input a number: 4
Please input number (I'm looking for a pattern): 5
Sorry, that's not what I'm looking for.
Please input number (I'm looking for a pattern): 6
Sorry, that's not what I'm looking for.
Please input number (I'm looking for a pattern): 7
Sorry, that's not what I'm looking for.
Please input number (I'm looking for a pattern): 7
That's it. Well done!
The function should behave just as in the example, using exactly the same phrasing in its output (e.g., “That’s it. Well done!”)
I tried to write code but I did not understand how can I compare previous "b" and next "b". Here is my code..
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/405270/image.png)
채택된 답변
Mathieu NOE
2020년 11월 7일
hi
I believe this works :
function number_patter
b = [];
a = input ('Please input a number: ');
while 1
b = input ('Please input number (I''m looking for a pattern): ');
if a == b
fprintf('That''s it. Well done!\n');
return;
elseif b == prev_b
fprintf('That''s it. Well done!\n');
return;
else
fprintf('Sorry, that''s not what I''m looking for.\n');
end
prev_b = b;
end
댓글 수: 2
추가 답변 (1개)
Jon
2020년 11월 6일
You need to create a new variable, call it for example prevB. After each loop set
prevB = B
when you do your comparison compare prevB and B
Note you will need to initialize prevB before entering the loop so it is defined the first time through. Just set it to something that the user would never enter for example prevB = inf
댓글 수: 2
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!