На основе данных входного файла составить список вкладчиков банка, включив следующие данные - C#

Узнай цену своей работы

Формулировка задачи:

На основе данных входного файла составить список вкладчиков банка, включив следующие данные: ФИО, № счета, сумма, год открытия счета. Вывести в новый файл информацию о тех вкладчиках, которые открыли вклад в текущем году, отсортировав их по сумме вклада. После запуска выдает 3 ошибки
1>D:\Проекты Visual Studio C#\лаба 14\ConsoleApplication1\Vklad.cs(14,11,14,16): warning CS0660: 'ConsoleApplication1.Vklad' defines operator == or operator != but does not override Object.Equals(object o) 1>D:\Проекты Visual Studio C#\лаба 14\ConsoleApplication1\Vklad.cs(14,11,14,16): warning CS0661: 'ConsoleApplication1.Vklad' defines operator == or operator != but does not override Object.GetHashCode() 1>D:\Проекты Visual Studio C#\лаба 14\ConsoleApplication1\Vklad.cs(14,11,14,16): error CS0535: 'ConsoleApplication1.Vklad' does not implement interface member 'System.ICloneable.Clone()'
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            StreamReader file = new StreamReader("input.txt");

            Console.Write("Введите текущий год:");
            int now_year = int.Parse(Console.ReadLine());
            string s;
            int n = 0;
            while ((s = file.ReadLine()) != null)
                n++;
            file.Close();
            
            Vklad[] vk = new Vklad[n];
            StreamReader file2 = new StreamReader("input.txt");
            int i = 0;
            while((s=file2.ReadLine())!=null)
            {
                vk[i] = new Vklad(s);
                i++;
            }
            file2.Close();
 
            Array.Sort(vk);
 
            StreamWriter fileOut = new StreamWriter("output.txt");
            for (i = 0; i < n; i++)
                if (vk[i] == now_year)
                    fileOut.WriteLine(vk[i].ToString());
            fileOut.Close();
                Console.Read();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
      
    class Vklad:IComparable
    {
        protected string name;
        protected string surname;
        protected string twoname;
        protected int number_vklad;
        protected int sum;
        protected int year;
 
        public Vklad(string s)
        {
            string[] mas = s.Split(' ');
            surname = mas[0];
            name = mas[1];
            twoname = mas[2];
            number_vklad = int.Parse(mas[3]);
            sum = int.Parse(mas[4]);
            year = int.Parse(mas[5]);
            
        }
 
        public int CompareTo(object obj)
        {
            Vklad b = (Vklad)obj;
            if (this.sum == b.sum) return 0;
            else if (this.sum > b.sum) return 1;
            else return -1;
        }
 
        public static bool operator <(Vklad a, int b)
        {
            return ((a.sum < b) ? true : false);
        }
        public static bool operator >(Vklad a, int b)
        {
            return ((a.sum > b) ? true : false);
        }
        public static bool operator ==(Vklad a, int b)
        {
            return ((a.sum == b) ? true : false);
        }
        public static bool operator !=(Vklad a, int b)
        {
            return ((a.sum != b) ? true : false);
        }
 
        public override string ToString()
        {
            return string.Format("{0} {1} {2} {3} {4} {5}", surname, name,twoname,number_vklad, sum,year);
        }
    }
}
по ошибке выбрал не IComparable. но теперь не записывает в файл результат.

Решение задачи: «На основе данных входного файла составить список вкладчиков банка, включив следующие данные»

textual
Листинг программы
vk[i] == now_year

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы