【发布时间】:2017-11-16 00:56:41
【问题描述】:
我在一个数组中有一组数据。其中第一个值将表示记录数,第二个数字将相应地表示一条记录中的数据数。数据会循环计算,直到记录数等于0。
3 -> 设置 1 - 记录数 3
2 -> 记录 1 包含两个数据值
10.00 -> 数据1
20.00 -> 数据2
4 -> 记录 2 包含四个数据值
15.00
15.01
3.00
3.01
3
5.00
9.00
4.00
2 -> 设置 2 - 记录数 2
2
8.00
6.00
2
9.20
6.75
0
我需要计算一组记录的总和,并需要将其与记录数相除,然后需要从每条记录中最小化该值以获得该值(在减少总和/数后得到记录)
输出
(第一组记录)
1.99
8.01
10.01
(第二组记录)
0.98 -> ((8.00+6.00) + (9.20+6.75))/2 - (8.00+6.00)
0.98
这是我想出的代码,但我得到的结果不同,找不到出错的地方。
我的输出
171.38 135.36
117.36
118.57 102.62
// (inputLines is the name of the array with data)
int data = 0;
float temp = 0;
List<string> tempOutputFileList = new List<string>();
while (inputLines[data] != "0")
{
var listOfPeople = new List<float>();
int people = int.Parse(inputLines[data]);
for (int n = 0; n < people; n++)
{
data = data + 1;
int receipts = int.Parse(inputLines[data]);
for (int p = 0; p < receipts; p++)
{
data = data + 1;
temp += float.Parse(inputLines[data]);
listOfPeople.Add(temp);
if (listOfPeople[n].ToString() != null)
{
listOfPeople[n] = temp;
}
}
}
float sum = 0;
string tempValue = null;
double receiptValue = 0;
foreach (float item in listOfPeople)
{
sum += item;
}
for (int v = 0; v < people; v++)
{
receiptValue = (sum / people - listOfPeople[v]);
}
data++;
tempOutputFileList.Add(" ");
listOfPeople.Clear();
}
foreach (string val in tempOutputFileList)
{
Console.WriteLine(val);
}
【问题讨论】:
-
你能用数据发布数组声明吗?
-
@Darkonekt 实际上,我从文本文件中获取了数据并将其存储在字符串数组中。下面是我使用的代码。公共静态字符串 [] inputFileLines = null;尝试 { inputFileLines = File.ReadAllLines(inputFile); } foreach(inputFileLines 中的字符串 val){ Console.WriteLine(val);我的输出 3 2 10.00 20.00 4 15.00 15.01 3.00 3.01 3 5.00 9.00 4.00 2 2 8.00 6.00 2 9.20 6.75 0 $171.38 $135.36 $117.36 $118.57 $102.62