有什么建议我怎么能做得更好?

时间:2015-12-25 13:57:57

标签: c#

首先,我想说对不起,我没有使用英语,但你会对我想要做的事情有一个大概的了解。

创建类主题变量和特征/属性: - kodiILendes - emriILendes - nota 方法Main应该使用户可以引入这些数据,代码 文件,文件名和等级。 您需要为5个主题创建对象 使用配件(获取和设置),以标记所以你应该分配成绩不应该 小于5且也不得大于10。 并提交本学期格式的平均值,p.sh。:"您的平均值 它是9.3"。

class Lendet
{
    public int kodiIlendes;
    public string emriIlendes;

    private int nota;
    public int Nota {
        get {
            return nota;
        }
        set {
            if (value > 5 && value <= 10)
            {
                nota = value;
            }
            else {
                Console.WriteLine("Nota duhet te jet me e > se 5 dhe nuk duhet te jet me e > se 10 ");
            }
        }
    }

}


 static void Main(string[] args)
        {
            Lendet Anglisht = new Lendet();
            Anglisht.kodiIlendes = 100;
            Anglisht.emriIlendes = "Anglisht";
            Anglisht.Nota = 10;
        }

现在假设我创建了5个对象,我想找到平均值。我该怎么做? 一种方法就是这样Console.WriteLine(x.Nota+y.Nota+z.Nota+b.Nota+c.Nota/5)

2 个答案:

答案 0 :(得分:0)

class Lendet
{
    public int kodiIlendes;
    public string emriIlendes;
    public static float sum;    
    public static int count;

    public Lendet()
{
count++;
}
    private int nota;
    public int Nota {
        get {
            return nota;
        }
        set {
            if (value > 5 && value <= 10)
            {
                sum =sum+value;
                nota = value;
            }
            else {
                Console.WriteLine("Nota duhet te jet me e > se 5 dhe nuk duhet te jet me e > se 10 ");
            }
        }
    }

}

static void Main(string[] args)
        {
            //create object1
            // create object2
           //......create object n
          Console.WriteLine(Lendet.sum/Lendet.count);
        }

创建两个静态变量,一个用于创建对象的计数,另一个用于求和。先用秒来得到平均值。

答案 1 :(得分:0)

我的方法,有历史:

class Lendet
{
     public int Nota { get; private set; }
     public Lendet(int nota)
     {
          this.Nota = nota;
          LendetHistory.Add(this);
     }
}

static class LendetHistory
{
     private static List<Lendet> lendets = new List<Lendet>();
     public static float Average()
     {
          if(lendets.Count < 1)
                  return 0;

          return lendets.Select(s => s.Nota).Average();
     }
     public static void Add(Lendet lendet)
     {
          lendets.Add(lendet);
     }
}

在代码中使用:

  var k = new Lendet(10);
  var c = new Lendet(20);
  Console.WriteLine(LendetHistory.Average());

通过这种方法,您可以扩展您的逻辑