• C#
    Дан текстовый файл, содержащий сведения о пациентах глазной клиники. Каждая строка файла содержит: фамилию, имя, отчество пациента, пол, возраст, место проживания(город), диагноз.
    Вывести по запросу данные
    - о количестве пациентов-мужчин и количестве пациентов-женщин
    - о пациентах с заданным диагнозом в алфавитном порядке

Ответы 6

  • Правильный текстовый файл:
  • Сергеев:Иван:Алексеевич:Мужской:34:Санкт-Петербург:Кариес;Белоусова:Элина:Станислава:Женский:27:Москва:Ангина;Павлов:Николай:Дмитриевич: Мужской:89:Астрахань:Сахарный диабет
  • и эту строку String file = File.ReadAllText("persons.txt"); поменяй на эту: String file = File.ReadAllText("persons.txt",Encoding.GetEncoding(1251));
    • Автор:

      mcclure
    • 5 лет назад
    • 0
  • и,если не знаешь, чтобы приложение не закрылось раньше времени,добавь в конце кода Console.ReadKey();
    • Автор:

      camacho
    • 5 лет назад
    • 0
  • все сделал, спасибо большое)
  • Отпишитесь если будут ошибки,т.к. кодил на мобилке.Тело программы:public static void Main(string[] args) { int man = 0; int woman = 0; String file = File.ReadAllText("persons.txt"); List<Person> persons = StringToPersons(file); foreach(Person p in persons) if(p.Sex == "Мужской") man++; else if(p.Sex == "Женский") woman++; Console.WriteLine("Женщин: {0}Мужчин: {1}",woman,man); persons = persons.OrderBy(p => p.LastName).ToList(); for(int i = 0;i<persons.Count;i++) { Person p = persons[i]; Console.WriteLine("Пациент # {0}ФИО: {1} {2} {3},Пол: {4},Возраст: {5} лет,Место проживания: {6}, Диагноз: {7}.",i+1,p.LastName,p.FirstName,p.Patronymic,p.Sex,p.Age,p.City,p.Main); } } public static List<Person> StringToPersons(String FileContent) { List<Person> persons = new List<Person>(); String[] lines = FileContent.Split(';'); foreach(String line in lines) { String[] data = line.Split(':'); if(data.Length>7) { throw new Exception("Error read persons file"); } Person person = new Person(data[0],data[1],data[2],data[3],data[4],data[5],data[6]); persons.Add(person); } return persons; } } public class Person { public String LastName; public String FirstName; public String Patronymic; public String Sex; public String Age; public String City; public String Main; public Person(String LastName,String FirstName,String Patronymic,String Sex,String Age,String City,String Main) { this.LastName = LastName; this.FirstName = FirstName; this.Patronymic = Patronymic; this.Sex = Sex; this.Age = Age; this.City = City; this.Main = Main; } }Текстовый файл:Сергеев:Иван:Алексеевич:Мужской:34:Санкт-Петербург:Кариес;Белоусова:Элина:Станислава:Женщина:27:Москва:Ангина;Павлов:Николай:Дмитриевич: Мужской:89:Астрахань:Сахарный диабетP.s. я не доктор, соответственно в плане диагноза я написал чушь.
    • Автор:

      rydervlya
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years