How to add a loop counter and respond to user input

3 次查看(过去 30 天)
Write a program that repeats the process of prompting the user to enter a positive number as long as the user correctly enters positive numbers when prompted. The program should count the number of numbers that the user successfully enters. As soon as the user types a negative number the program will print OK and shows the number of numbers that the user has successfully entered.
  2 个评论
Chris
Chris 2013-6-11
编辑:Azzi Abdelmalek 2013-6-11
I already have this much.
a=10;
while a-1>0
a=input('Please input an even number [even]: ', 's')
end
Walter Roberson
Walter Roberson 2013-6-11
编辑:Walter Roberson 2013-6-11
Why are you asking the user to enter even numbers when the homework requires entering positive numbers?
You are not checking to see whether the input is acceptable or not.
What should happen if the user enters 0? 0 is not positive, but it is also not negative (the termination condition)

请先登录,再进行评论。

回答(2 个)

Vishal Rane
Vishal Rane 2013-6-11
When in doubt write a pseudo code:
1) Prompt user to enter something ( in ur case a number )
2) Accept number from user
3) Code checks if number is acceptable ( check for special chars, strings, etc)
4a) If valid number and positive, store it, repeat 1-4
4b) If valid number and negative, display 'OK', calculate and display count of stored numbers
4c) If invalid input, show prompt again ignoring user input or notifying him/her of the same

Chetan Aswathanarayana
function Sample()
Loop = true;
Count = 0;
while(Loop)
a = input('Please input a positive number: ');
if a>=0
Count = Count+1;
else
Loop = false;
end
end
fprintf('Ok, the number of inputs enetered by the user is %d',Count);
end

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by