how do you display the output of a while loop as an array.
code:
function [] = hailstone_sequence(n)
n = input('Value for n: ');
h = 1;
while(n~=1)
if n==1
return
elseif mod(n,2)
n=3*n +1
else
n=n/2
end
h=h+1;
end

댓글 수: 2

jean claude
jean claude 2017년 10월 5일
what's your output variable ?
Ahmed Emam
Ahmed Emam 2017년 10월 5일
the output should be the values for each iteration in an array, so for 3 the output should be 3 10 5 16 8 4 2 1

댓글을 달려면 로그인하십시오.

 채택된 답변

Walter Roberson
Walter Roberson 2017년 10월 5일

0 개 추천

Just before the h=h+1 insert
output(h) = n;

댓글 수: 2

Ahmed Emam
Ahmed Emam 2017년 10월 5일
tried it, works but I am missing the initial value
Walter Roberson
Walter Roberson 2017년 10월 5일
Then move it to after the while() statement.
But question: does the output need to include the 1? If so then make sure to add a 1 to the end before the return statement.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

jean claude
jean claude 2017년 10월 5일
편집: jean claude 2017년 10월 5일

0 개 추천

function [output] = hailstone_sequence(n)
output=[n];
h = 1;
while(n~=1)
if n==1
return
elseif mod(n,2)
n=3*n +1
else
n=n/2
end
h=h+1;
output= [output n];
end

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

질문:

2017년 10월 5일

댓글:

2017년 10월 5일

Community Treasure Hunt

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

Start Hunting!

Translated by