The provided file has syntax and/or logical errors. Determine the problem(s) and fix the program. // Interface IReversable defines behavior Reverse() // Reverse is implemented differently for a Soldier and a PhoneCall // Main program demonstrates an object of each type using System; using static System.Console; using System.Globalization; class DebugTen03 { static void Main() { Soldier giJoe = new Soldier(266143); PhoneCall aCall = new PhoneCall("212", "344-4188"); WriteLine(giJoe.ToString()); giJoe.Reverse(); WriteLine(giJoe.ToString()); giJoe.Reverse(); WriteLine(giJoe.ToString()); WriteLine(aCall.ToString()); aCall.Reverse(); WriteLine(aCall.ToString()); } } public interface IReversable { void Reversable(); //put ; } class Soldier : IReversable { private int idNum; private string facing; public Soldier(int id) { idNum = id; //changes idNum to id facing = "front"; } public void Reversable() //implement interface { } // When a Soldier reverses if the Soldier was facing front, change to back // If the Soldier was facing back, change to front public void Reverse() { if (facing == "front") facing = "front"; else facing = "front"; } public override string ToString() //changes void toString { string temp = "Soldier #" + idNum + " is facing " + facing; return temp; //returning string } } class PhoneCall : IReversable { private string areaCode; private string number; private double charge; private string mode; public PhoneCall(string area, string num) { areaCode = area; number = num; charge = 0.25; mode = "regular"; //changes regular to string "regular" } public void Reversable() //implemented interface { } // When a phone call reverses, mode becomes collect and charge becomes 0 public void Reverse() { mode = "collect"; charge = 0; } public override string ToString() { string temp = "(" + areaCode + ") " + number + " Charge " + charge.ToString("C", CultureInfo.GetCultureInfo("en-US")) + " Call is " + mode; return temp; } }
The provided file has syntax and/or logical errors. Determine the problem(s) and fix the program. // Interface IReversable defines behavior Reverse() // Reverse is implemented differently for a Soldier and a PhoneCall // Main program demonstrates an object of each type using System; using static System.Console; using System.Globalization; class DebugTen03 { static void Main() { Soldier giJoe = new Soldier(266143); PhoneCall aCall = new PhoneCall("212", "344-4188"); WriteLine(giJoe.ToString()); giJoe.Reverse(); WriteLine(giJoe.ToString()); giJoe.Reverse(); WriteLine(giJoe.ToString()); WriteLine(aCall.ToString()); aCall.Reverse(); WriteLine(aCall.ToString()); } } public interface IReversable { void Reversable(); //put ; } class Soldier : IReversable { private int idNum; private string facing; public Soldier(int id) { idNum = id; //changes idNum to id facing = "front"; } public void Reversable() //implement interface { } // When a Soldier reverses if the Soldier was facing front, change to back // If the Soldier was facing back, change to front public void Reverse() { if (facing == "front") facing = "front"; else facing = "front"; } public override string ToString() //changes void toString { string temp = "Soldier #" + idNum + " is facing " + facing; return temp; //returning string } } class PhoneCall : IReversable { private string areaCode; private string number; private double charge; private string mode; public PhoneCall(string area, string num) { areaCode = area; number = num; charge = 0.25; mode = "regular"; //changes regular to string "regular" } public void Reversable() //implemented interface { } // When a phone call reverses, mode becomes collect and charge becomes 0 public void Reverse() { mode = "collect"; charge = 0; } public override string ToString() { string temp = "(" + areaCode + ") " + number + " Charge " + charge.ToString("C", CultureInfo.GetCultureInfo("en-US")) + " Call is " + mode; return temp; } }
Programming Logic & Design Comprehensive
9th Edition
ISBN:9781337669405
Author:FARRELL
Publisher:FARRELL
Chapter11: More Object-oriented Programming Concepts
Section: Chapter Questions
Problem 7RQ
Related questions
Question
The provided file has syntax and/or logical errors. Determine the problem(s) and fix the program.
// Interface IReversable defines behavior Reverse()
// Reverse is implemented differently for a Soldier and a PhoneCall
// Main program demonstrates an object of each type
using System;
using static System.Console;
using System.Globalization;
class DebugTen03
{
static void Main()
{
Soldier giJoe = new Soldier(266143);
PhoneCall aCall = new PhoneCall("212", "344-4188");
WriteLine(giJoe.ToString());
giJoe.Reverse();
WriteLine(giJoe.ToString());
giJoe.Reverse();
WriteLine(giJoe.ToString());
WriteLine(aCall.ToString());
aCall.Reverse();
WriteLine(aCall.ToString());
}
}
public interface IReversable
{
void Reversable(); //put ;
}
class Soldier : IReversable
{
private int idNum;
private string facing;
public Soldier(int id)
{
idNum = id; //changes idNum to id
facing = "front";
}
public void Reversable() //implement interface
{
}
// When a Soldier reverses if the Soldier was facing front, change to back
// If the Soldier was facing back, change to front
public void Reverse()
{
if (facing == "front")
facing = "front";
else
facing = "front";
}
public override string ToString() //changes void toString
{
string temp = "Soldier #" + idNum + " is facing " + facing;
return temp; //returning string
}
}
class PhoneCall : IReversable
{
private string areaCode;
private string number;
private double charge;
private string mode;
public PhoneCall(string area, string num)
{
areaCode = area;
number = num;
charge = 0.25;
mode = "regular"; //changes regular to string "regular"
}
public void Reversable() //implemented interface
{
}
// When a phone call reverses, mode becomes collect and charge becomes 0
public void Reverse()
{
mode = "collect";
charge = 0;
}
public override string ToString()
{
string temp = "(" + areaCode + ") " + number + " Charge " + charge.ToString("C", CultureInfo.GetCultureInfo("en-US")) +
" Call is " + mode;
return temp;
}
}
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 2 steps
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
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage