我有一个输入文件,其中有主要分数和次要分数。我需要找到主要分数的平均值。来自输入文件的列表平均值
我可以读取主要和次要分数并将它们添加到列表中。但在计算平均值时,我在线上收到一个错误s1.Average(PrimaryScore);
我附加了program.cs和回归.cs类。感谢您的任何帮助。
class Program
{
static Regression s1;
static void Main(string[] args)
{
int numRecords = 0;
List<double> PrimaryScore = new List<double>();
List<double> SecondaryScore = new List<double>();
FileStream fs = null;
Console.Write("Enter the file path: ");
while (fs == null)
{
string fileName = Console.ReadLine();
fs = OpenFileForRead(fileName);
}
StreamReader sr = new StreamReader(fs);
ReadFirstValueAsInt(sr, ref numRecords);
sr.ReadLine();
for (int i = 1; i <= numRecords; i++)
{
ReadRecordAsDoubleList(sr, PrimaryScore);
ReadRecordAsDoubleList(sr, SecondaryScore);
Console.WriteLine("Primary Data set {0}: ", i);
foreach (double d in PrimaryScore)
Console.Write(d + " ");
Console.WriteLine();
Console.ReadLine();
PrimaryScore.Clear();
sr.ReadLine();
Console.WriteLine("Secondary Data set {0}: ", i);
foreach (double d in SecondaryScore)
Console.Write(d + " ");
Console.WriteLine();
Console.ReadLine();
SecondaryScore.Clear();
}
s1 = new Regression();
s1.Average(PrimaryScore); //getting an error here
}
public static FileStream OpenFileForRead(string fileName)
{
try
{
return new FileStream(fileName, FileMode.Open, FileAccess.Read);
}
catch (Exception e)
{
Console.Write("Problem opening file {0}, please enter a valid path: ", fileName);
}
return null;
}
public static void ReadFirstValueAsInt(StreamReader sr, ref int numRecords)
{
try
{
numRecords = Int32.Parse(sr.ReadLine());
}
catch (Exception e)
{
Console.Write(e.Message);
}
}
public static void ReadRecordAsDoubleList(StreamReader sr, List<double> cr)
{
try
{
string[] doubles = sr.ReadLine().Split(new char[] { ' ' });
foreach (string s in doubles)
cr.Add(Double.Parse(s));
}
catch (Exception e)
{
Console.Write(e.Message);
}
}
}
回归类,这是从程序类
class Regression
{
public static double Average(List<double> PrimaryScore)
{
int sum = 0;
foreach (int element in PrimaryScore)
sum += element;
return (double)sum/PrimaryScore.Count;
}
}
“我上线得到一个错误” ---编译错误或运行时异常? –
什么是错误信息 –
作为一个方面说明:您应该在使用它们后关闭'Stream's或将它们封装在'using'语句中。 – Jim