Why doesn't my code loop back up to the top again and how to fix it
1 回表示 (過去 30 日間)
古いコメントを表示
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/226204/image.png)
(This is the photo of my text)
%% Cash register
NumItems = 0;
Answer = 1; % Assuming there is at least 1 item
while Answer == 1
Answer = input('Is there a new item? hit 1 for yes 0 for no: ','s'); % altering final condition
ItemNum = input('What is the 5 digit item number: '); % getting the item number even though we dont use it
Price = input('What is the unit price: '); % collecting price
Quantity = input('How many of the item are there?: '); % collecting the number of items
NumItems = NumItems + 1; % using a counter for the number of items
Cost = Price * Quantity; % Calculating the cost of the items bought
if NumItems <= 1 % if the number of items is less than or equal to one then the total cost is just the cost itself
TotalCost = Cost;
else % otherwise the totalCost is equal to the cost plus the previous cost
TotalCost = Cost + TotalCost;
end
end
fprintf('The total cost is: %d',TotalCost); % Print final statement
0 件のコメント
採用された回答
vidhathri bhat
2019 年 6 月 25 日
Hi
Answer = input('Is there a new item? hit 1 for yes 0 for no: ','s'); % altering final condition
In this line you are reading input as character and in while condition you are comparing it with 1 as integer. That is why while condition is failing.
Answer = input('Is there a new item? hit 1 for yes 0 for no: ');
If you read the input as integer instead it should work.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Financial Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!