我正在创建一个程序,让用户输入不同的销售人员,并根据他们销售的商品获得特定的级别。我现在正试图为控制台创建一个BubbleSort;销售人员";在他们卖出多少商品后按顺序排列。如何根据他们之前输入的项目编写数组?
我是一个编码新手,不介意对我当前的代码进行反馈,告诉我可以做得更好。
提前感谢!把我的代码放在下面
namespace salesprogram
{类销售人员{公共字符串名称;公开的ulong号码;公共字符串区;公共int项;
static void Main(string[] args)
{
SalesPerson.InputSalesPersons();
int[] arr = {};
bubbleSort(arr);
}
public static void InputSalesPersons()
{
Console.Write("Hur många säljare vill du mata in? ");
int count = Convert.ToInt32(Console.ReadLine());
var sellers = new List<SalesPerson>();
for (int i = 0; i < count; i++)
{
SalesPerson s = RegisterPerson(i);
sellers.Add(s);
}
}
static SalesPerson RegisterPerson(int i)
{
// Sätter en string för namn på säljare
Console.Write("Ange namn för säljare {0}: ", i);
string name = Console.ReadLine();
// String för personnummer
Console.Write("Ange personnummer för säljare {0} (10 siffror): ", i);
ulong number = ulong.Parse(Console.ReadLine());
// String för distrikt på säljare
Console.Write("Ange distrikt för säljare {0}: ", i);
string district = Console.ReadLine();
// String för sålda artiklar
Console.Write("Ange antal sålda artiklar för säljare {0}: ", i);
int items = int.Parse(Console.ReadLine());
SalesPerson s = new SalesPerson(name, number, district, items);
return s;
}
public static void bubbleSort(int[] arr)
{
for (int i = 0; i < arr.Length - 1; i++)
{
for (int j = 0; j < arr.Length - i - 1; j++)
{
if (arr[j] > arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
public SalesPerson(string name, ulong number, string district, int items)
{
this.name = name;
this.number = number;
this.district = district;
this.items = items;
}
// Beroende på antal sålda artiklar (items) får säljarna en nivå (Level)
public int Level
{
get
{
if (items < 50) return 1;
if (items < 100) return 2;
if (items < 200) return 3;
return 4;
}
}
}
}
我建议的第一件事是:保持主管道清洁。不应该有任何逻辑。将您的逻辑到方法移动到SalesPerson
;
此外,SalesPerson
应在单独的文件中。
您像使用服务一样使用SalesPerson
。应该是static class
静态方法命名为CCD_ 5。InputSalesPersons
重命名为RegisterPerson
。
使用var
是一种很好的做法。
更好的转换方法是使用Parse
和TryParse
方法
InputSalesPersons
将具有下一个代码。
public static void InputSalesPersons()
{
Console.Write("Hur många säljare vill du mata in? ");
var count = int.Parse(Console.ReadLine());
var sellers = new List<SalesPerson>();
for (int i = 0; i < count; i++)
{
SalesPerson s = RegisterPerson(i);
sellers.Add(s);
}
}
你会得到干净的Main
。美丽,不是吗?
static void Main(string[] args)
{
SalesPerson.InputSalesPersons();
}