Help with Loops and Switch cases and Mean

1 回表示 (過去 30 日間)
D Moton
D Moton 2019 年 10 月 11 日
編集済み: Turlough Hughes 2019 年 10 月 11 日
Write a program that prompts the User for if they would like to enter a real number. If yes, prompt the User for the real number. Continue to do this until the User enters “no” to the first question. After the User enters “no”, display the average of all the numbers entered.
This is what I have so far. I am confused and I need help. How do I keep asking a question for a string and keep repeating this process? Then how do I store all the numbers entered so I can find the mean?
Q=input('Would you like to enter a real number? (Yes or No) ','s');
switch Q
case 'Yes'
n=input('Enter a number: ');
Q=input('Would you like to enter a real number? (Yes or No) ','s');
while Q~= 'No'
n=input('Enter a number: ');
end
case 'No'
mean(,)
end

採用された回答

prasanth s
prasanth s 2019 年 10 月 11 日
here is the code
Q=input('Would you like to enter a real number? (Yes or No) ','s');
n=[];
switch Q
case 'Yes'
count=1;
while ~strcmpi(Q,'no')
n(count,1)=input('Enter a number: ');
Q=input('Would you like to enter a real number? (Yes or No) ','s');
count=count+1;
end
mean_out=mean(n)
case 'No'
end

その他の回答 (1 件)

Turlough Hughes
Turlough Hughes 2019 年 10 月 11 日
編集済み: Turlough Hughes 2019 年 10 月 11 日
Hi Deriniece,
You could modify your code as follows:
Q='';
ii=1;
while ~strcmpi(Q,'No')
Q=input('Would you like to enter a real number? (Yes or No) ','s');
switch Q
case 'Yes'
n(ii)=input('Enter a number: ');
ii=ii+1;
case 'No'
disp(['The average input value is: ' num2str(mean(n))]);
end
end
Although this requires the user to have a case sensitive input.
strcmpi and if else statements will allow for case-insensitive inputs such as 'Yes', 'yes' and 'YES'
Q='';
ii=1;
while(1)
Q=input('Would you like to enter a real number? (Yes or No) ','s');
if strcmpi(Q,'Yes')
n(ii)=input('Enter a number: ');
ii=ii+1;
else
disp(['The average input value is: ' num2str(mean(n))]);
break
end
end
You might also like to consider using the following functions: menu(), inptdlg().

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by