예제 #1
0
 /// <summary>
 /// Добавляет находку в список.
 /// </summary>
 /// <param name="finds">Список находок.</param>
 /// <param name="archaeologicalFind">Находка.</param>
 public static void AddFind(ICollection <ArchaeologicalFind> finds, ArchaeologicalFind archaeologicalFind)
 {
     if (!finds.Contains(archaeologicalFind))
     {
         finds.Add(archaeologicalFind);
     }
     archaeologicalFind.Index = TotalFindsNumber;
     TotalFindsNumber++;
 }
    /// <summary>
    /// Добавляет находку в список.
    /// </summary>
    /// <param name="finds">Список находок.</param>
    /// <param name="archaeologicalFind">Находка.</param>
    public static void AddFind(ICollection <ArchaeologicalFind> finds, ArchaeologicalFind archaeologicalFind)
    {
        if (finds.Any(x => x.Equals(archaeologicalFind)))
        {
            return;
        }

        finds.Add(archaeologicalFind);
    }
예제 #3
0
    public override bool Equals(object obj)
    {
        ArchaeologicalFind b = obj as ArchaeologicalFind;

        if (this.Age == b.Age && this.Weight == b.Weight && this.Name == b.Name)
        {
            return(true);
        }
        return(false);
    }
예제 #4
0
    /// <summary>
    /// Добавляет находку в список.
    /// </summary>
    /// <param name="finds">Список находок.</param>
    /// <param name="archaeologicalFind">Находка.</param>
    public static void AddFind(ICollection <ArchaeologicalFind> finds, ArchaeologicalFind archaeologicalFind)
    {
        TotalFindsNumber++;

        if (finds.Contains(archaeologicalFind))
        {
            return;
        }

        archaeologicalFind._index = TotalFindsNumber - 1;
        finds.Add(archaeologicalFind);
    }
    public static void Main(string[] args)
    {
        int findsNumber         = int.Parse(Console.ReadLine());
        var archaeologicalFinds = new List <ArchaeologicalFind>();

        for (int i = 0; i < findsNumber; ++i)
        {
            if (ReadFind(Console.ReadLine().Split(' '), out var archaeologicalFind))
            {
                ArchaeologicalFind.AddFind(archaeologicalFinds, archaeologicalFind);
            }
        }

        archaeologicalFinds.ForEach(Console.WriteLine);
        Console.WriteLine(ArchaeologicalFind.TotalFindsNumber);
    }
    private static bool ReadFind(IReadOnlyList <string> data, out ArchaeologicalFind archaeologicalFind)
    {
        archaeologicalFind = null;

        try
        {
            archaeologicalFind = new ArchaeologicalFind(int.Parse(data[0]), int.Parse(data[1]), data[2]);
        }
        catch (ArgumentException e)
        {
            Console.WriteLine(e.Message);
            return(false);
        }

        return(true);
    }
예제 #7
0
    /// <summary>
    /// Добавляет находку в список.
    /// </summary>
    /// <param name="finds">Список находок.</param>
    /// <param name="archaeologicalFind">Находка.</param>
    public static void AddFind(ICollection <ArchaeologicalFind> finds, ArchaeologicalFind archaeologicalFind)
    {
        bool InFinds = false;

        foreach (ArchaeologicalFind f in finds)
        {
            if (f.Equals(archaeologicalFind))
            {
                InFinds = true;
            }
        }
        if (!InFinds)
        {
            archaeologicalFind.number = FNumber;
            finds.Add(archaeologicalFind);
        }
        FNumber++;
    }