Я изменяю простую программу C#, которая показывает область прямоугольника, ширина и высота которого вы пишете в консоли (изначально значения ширины и высоты были указаны в программе). Тем не менее, пользовательская часть ввода, похоже, не работает. Я пробовал Convert.ToInt32()
, и я даже изменил переменные на целые числа, даже если они должны быть плавающими, считая, что преобразование будет работать именно так, но безрезультатно. Ошибка I get is: "error CS0266: Невозможно неявно преобразовать тип 'double' в 'int'.". Чтение переменной float из пользовательского ввода внутри функции
Вопрос заключается в том, что мне делать, чтобы сделать эту работу? Я думаю, что я мог бы просто удалить функцию и просто написать код в основном, но я пытаюсь научиться использовать функции, и я был бы благодарен, если бы вы могли показать мне способ присвоить значение переменной ввод на клавиатуре без удаления функции.
'
class Rectangle
{
// member variables
double length;
double width;
public void Acceptdetails()
{
//read length and width from the keyboard
length = Convert.ToDouble(Console.ReadLine());
width = Convert.ToDouble(Console.ReadLine());
}
public double GetArea()
{
return length * width;
}
public void Display()
{ //display the length width and area
Console.WriteLine("Length: {0}", length);
Console.WriteLine("Width: {0}", width);
Console.WriteLine("Area: {0}", GetArea());
}
}
class ExecuteRectangle
{
static void Main(string[] args)
{
Rectangle r = new Rectangle();
r.Acceptdetails();
r.Display();
Console.ReadLine();
}
}
'
_length = Convert.ToInt32 (Console.ReadLine()); _ – Steve
Вы уже исправил проблему в вашем примере? Я не мог видеть проблему, поэтому я скопировал это в быстрый проект в Visual Studio и, конечно же, работает так, как ожидалось. Ваше сообщение об ошибке должно содержать номер строки. Какая конкретная строка кода является ошибкой? –