C# 运行时错误
C# Runtime Error
我一直在努力解决下面的问题 link:
https://www.urionlinejudge.com.br/judge/en/problems/view/1010
这是我的代码:
using System;
namespace URIProblemsBeginner {
class Program
{
static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
PRODUCT_ONE_CODE = Convert.ToInt32(Console.ReadLine());
PRODUCT_ONE_UNITS = Convert.ToInt32(Console.ReadLine());
PRODUCT_ONE_PRICE = Convert.ToSingle(Console.ReadLine());
PRODUCT_TWO_CODE = Convert.ToInt32(Console.ReadLine());
PRODUCT_TWO_UNITS = Convert.ToInt32(Console.ReadLine());
PRODUCT_TWO_PRICE = Convert.ToSingle(Console.ReadLine());
VALUE_TO_PAY = (PRODUCT_ONE_UNITS * PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS * PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
}
每当我在 Visual Studio 2015 年 运行 测试此代码时,它 运行 没有任何错误。但是每当我将其提交给 URI 编译器时,它都不会接受我的回答并给出 运行 时间错误。
不知道有没有bug?
有人可以帮忙吗?提前致谢!
根据问题陈述...
The input file contains two lines of data. In each line there will be
3 values: two integers and a floating value with 2 digits after the
decimal point.
...但是您编写的应用程序将查找六行数据。一行商品一码,一行商品一价格等
我相信您想要的方法是读取一行并将其拆分为三个部分。大致如下。
使用系统;
namespace URIProblemsBeginner
{
internal class Program
{
private static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
ConvertInput(Console.ReadLine(), out PRODUCT_ONE_CODE, out PRODUCT_ONE_UNITS, out PRODUCT_ONE_PRICE);
ConvertInput(Console.ReadLine(), out PRODUCT_TWO_CODE, out PRODUCT_TWO_UNITS, out PRODUCT_TWO_PRICE);
VALUE_TO_PAY = (PRODUCT_ONE_UNITS*PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS*PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
private static void ConvertInput(string input, out int CODE, out int UNITS, out float PRICE)
{
string[] split = input.Split(' ');
CODE = Convert.ToInt32(split[0]);
UNITS = Convert.ToInt32(split[1]);
PRICE = Convert.ToSingle(split[2]);
}
}
}
class Program
{
private static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
ConvertInput(Console.ReadLine(), out PRODUCT_ONE_CODE, out PRODUCT_ONE_UNITS, out PRODUCT_ONE_PRICE);
ConvertInput(Console.ReadLine(), out PRODUCT_TWO_CODE, out PRODUCT_TWO_UNITS, out PRODUCT_TWO_PRICE);
VALUE_TO_PAY = (PRODUCT_ONE_UNITS + PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS + PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
private static void ConvertInput(string input, out int CODE , out int UNITS, out float PRICE)
{
List<string> split = input.Split(' ').ToList();
string[] changedInput =new string[3];
for (int i = 3 - split.Count; i <= 3; i++)
{
split.Add("0");
if (split.Count ==3 )
{
break;
}
}
int.TryParse(split[0], out CODE);
int.TryParse(split[1], out UNITS);
float.TryParse(split[2], out PRICE);
}
}
我一直在努力解决下面的问题 link:
https://www.urionlinejudge.com.br/judge/en/problems/view/1010
这是我的代码:
using System;
namespace URIProblemsBeginner {
class Program
{
static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
PRODUCT_ONE_CODE = Convert.ToInt32(Console.ReadLine());
PRODUCT_ONE_UNITS = Convert.ToInt32(Console.ReadLine());
PRODUCT_ONE_PRICE = Convert.ToSingle(Console.ReadLine());
PRODUCT_TWO_CODE = Convert.ToInt32(Console.ReadLine());
PRODUCT_TWO_UNITS = Convert.ToInt32(Console.ReadLine());
PRODUCT_TWO_PRICE = Convert.ToSingle(Console.ReadLine());
VALUE_TO_PAY = (PRODUCT_ONE_UNITS * PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS * PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
}
每当我在 Visual Studio 2015 年 运行 测试此代码时,它 运行 没有任何错误。但是每当我将其提交给 URI 编译器时,它都不会接受我的回答并给出 运行 时间错误。 不知道有没有bug?
有人可以帮忙吗?提前致谢!
根据问题陈述...
The input file contains two lines of data. In each line there will be 3 values: two integers and a floating value with 2 digits after the decimal point.
...但是您编写的应用程序将查找六行数据。一行商品一码,一行商品一价格等
我相信您想要的方法是读取一行并将其拆分为三个部分。大致如下。
使用系统;
namespace URIProblemsBeginner
{
internal class Program
{
private static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
ConvertInput(Console.ReadLine(), out PRODUCT_ONE_CODE, out PRODUCT_ONE_UNITS, out PRODUCT_ONE_PRICE);
ConvertInput(Console.ReadLine(), out PRODUCT_TWO_CODE, out PRODUCT_TWO_UNITS, out PRODUCT_TWO_PRICE);
VALUE_TO_PAY = (PRODUCT_ONE_UNITS*PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS*PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
private static void ConvertInput(string input, out int CODE, out int UNITS, out float PRICE)
{
string[] split = input.Split(' ');
CODE = Convert.ToInt32(split[0]);
UNITS = Convert.ToInt32(split[1]);
PRICE = Convert.ToSingle(split[2]);
}
}
}
class Program
{
private static void Main(string[] args)
{
int PRODUCT_ONE_CODE, PRODUCT_TWO_CODE, PRODUCT_ONE_UNITS, PRODUCT_TWO_UNITS;
float PRODUCT_ONE_PRICE, PRODUCT_TWO_PRICE, VALUE_TO_PAY;
ConvertInput(Console.ReadLine(), out PRODUCT_ONE_CODE, out PRODUCT_ONE_UNITS, out PRODUCT_ONE_PRICE);
ConvertInput(Console.ReadLine(), out PRODUCT_TWO_CODE, out PRODUCT_TWO_UNITS, out PRODUCT_TWO_PRICE);
VALUE_TO_PAY = (PRODUCT_ONE_UNITS + PRODUCT_ONE_PRICE) + (PRODUCT_TWO_UNITS + PRODUCT_TWO_PRICE);
Console.WriteLine("VALOR A PAGAR: R$ " + VALUE_TO_PAY.ToString("F2"));
Console.ReadLine();
}
private static void ConvertInput(string input, out int CODE , out int UNITS, out float PRICE)
{
List<string> split = input.Split(' ').ToList();
string[] changedInput =new string[3];
for (int i = 3 - split.Count; i <= 3; i++)
{
split.Add("0");
if (split.Count ==3 )
{
break;
}
}
int.TryParse(split[0], out CODE);
int.TryParse(split[1], out UNITS);
float.TryParse(split[2], out PRICE);
}
}