Простите меня, я новичок, но я делаю базовую программу "конвертировать по Фаренгейту в цель", и я не могу понять вышеприведенную ошибку. Мой код прямо сейчас выглядит следующим образом:
<%@ Page Language="C#" %>
<!DOCTYPE html>
<script runat="server">
protected void Button1_Click(object sender, EventArgs e)
{
double fahrenheit = double.Parse(farTemp.Text);
lblCelsius.Text = (5 / 9) * (fahrenheit - 32).ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Convert Temperature</title>
</head>
<body>
<form id="form1" runat="server">
<div>
Please enter the temperature in degrees Fahrenheit:
<asp:TextBox
Width="75"
id="farTemp"
Runat="server" />
<br />
<br />
<asp:Button
id="Button1"
Text="Convert to Celsius"
OnClick="Button1_Click"
Runat="server" />
</div>
<br />
<div>
Degrees in Celsius:
<asp:Label
id="lblCelsius"
Runat="server" />
<br />
</div>
</div>
</form>
</body>
</html>
Ошибка появляется в строке 7. Странная вещь, когда я меняю символ "*" на символ "+", работает программа (за исключением того, что она делает неправильную математику). Любая идея, что происходит?
Ваша скобка находится в неправильном месте. Вы делаете fahrenheit - 32, преобразовывая это в строку, а затем пытаетесь ее умножить. Попробуй это:
lblCelsius.Text = ((5 / 9) * fahrenheit - 32).ToString();