Microsoft Visual C# debugging exercise 5-2 for chapter 5. This is my code but it gave me an error. It likes an infinitive loop. What did I do wrong, please? // Program asks user to enter a stock number // If the stock number is not 209, 312, or 414 the user must reenter the number // The program displays the correct price using System; using static System.Console; using System.Globalization; class DebugFive2 { static void Main() { const string ITEM209 = "209"; const string ITEM312 = "312"; const string ITEM414 = "414"; const double PRICE209 = 12.99; const double PRICE312 = 16.77; const double PRICE414 = 109.07; double price=0; string stockNum; Write("Please enter the stock number of the item you want "); stockNum = ReadLine(); while(stockNum != ITEM209 || stockNum != ITEM312 || stockNum != ITEM414) { WriteLine("Invalid stock number. Please enter again. "); stockNum = ReadLine(); } if(stockNum!=null && stockNum==ITEM209) { price = PRICE209; stockNum = ReadLine(); } else if(stockNum!=null && stockNum==ITEM312) { price = PRICE312; stockNum = ReadLine(); } else if(stockNum!=null && stockNum==ITEM414) { price = PRICE414; stockNum = ReadLine(); } WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C", CultureInfo.GetCultureInfo("en-US"))); } }
Microsoft Visual C# debugging exercise 5-2 for chapter 5. This is my code but it gave me an error. It likes an infinitive loop. What did I do wrong, please? // Program asks user to enter a stock number // If the stock number is not 209, 312, or 414 the user must reenter the number // The program displays the correct price using System; using static System.Console; using System.Globalization; class DebugFive2 { static void Main() { const string ITEM209 = "209"; const string ITEM312 = "312"; const string ITEM414 = "414"; const double PRICE209 = 12.99; const double PRICE312 = 16.77; const double PRICE414 = 109.07; double price=0; string stockNum; Write("Please enter the stock number of the item you want "); stockNum = ReadLine(); while(stockNum != ITEM209 || stockNum != ITEM312 || stockNum != ITEM414) { WriteLine("Invalid stock number. Please enter again. "); stockNum = ReadLine(); } if(stockNum!=null && stockNum==ITEM209) { price = PRICE209; stockNum = ReadLine(); } else if(stockNum!=null && stockNum==ITEM312) { price = PRICE312; stockNum = ReadLine(); } else if(stockNum!=null && stockNum==ITEM414) { price = PRICE414; stockNum = ReadLine(); } WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C", CultureInfo.GetCultureInfo("en-US"))); } }
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Microsoft Visual C# debugging exercise 5-2 for chapter 5.
This is my code but it gave me an error. It likes an infinitive loop. What did I do wrong, please?
// Program asks user to enter a stock number
// If the stock number is not 209, 312, or 414 the user must reenter the number
// The program displays the correct price
using System;
using static System.Console;
using System.Globalization;
class DebugFive2
{
static void Main()
{
const string ITEM209 = "209";
const string ITEM312 = "312";
const string ITEM414 = "414";
const double PRICE209 = 12.99;
const double PRICE312 = 16.77;
const double PRICE414 = 109.07;
double price=0;
string stockNum;
Write("Please enter the stock number of the item you want ");
stockNum = ReadLine();
while(stockNum != ITEM209 || stockNum != ITEM312 || stockNum != ITEM414)
{
WriteLine("Invalid stock number. Please enter again. ");
stockNum = ReadLine();
}
if(stockNum!=null && stockNum==ITEM209)
{
price = PRICE209;
stockNum = ReadLine();
}
else
if(stockNum!=null && stockNum==ITEM312)
{
price = PRICE312;
stockNum = ReadLine();
}
else
if(stockNum!=null && stockNum==ITEM414)
{
price = PRICE414;
stockNum = ReadLine();
}
WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C", CultureInfo.GetCultureInfo("en-US")));
}
}
Expert Solution
Step 1
// Hi Buddy, You have done a fabulous job but made a mistake at one point i.e. in while loop, you have tested with || ( OR Operator), so if any of the condition passes, the loop will execute, so even if you put correct stock number then also, one condition will fail, while other two will be passed so our loop will execute continuously.
// It is highly recommended to use && ( And operator ) instead of || operator.
while(stockNum != ITEM209 && stockNum != ITEM312 && stockNum != ITEM414)
Trending now
This is a popular solution!
Step by step
Solved in 2 steps with 1 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education