Вопрос задан 28.09.2023 в 09:31. Предмет Информатика. Спрашивает Куркаева Лилия.

Помогите, пожалуйста. Очень нужна помощь. Описать класс, соответствующий заданию, содержащий

поля, свойства, конструктор с параметрами. При необходимости вложить в свойства дополнительную логику проверки значений. ЗАДАЧА. Ввести информацию по N школьникам (Ф.И.О, пол, год рождения). Определить количество мальчиков и девочек. Вывести список каждых.​
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Saidova Savda.

/*Описать класс, соответствующий заданию, содержащий поля, свойства, конструктор с параметрами.  

* При необходимости вложить в свойства дополнительную логику проверки значений.

ЗАДАЧА. Ввести информацию по N школьникам (Ф.И.О, пол, год рождения).  

Определить количество мальчиков и девочек. Вывести список каждых.​*/

using System;

using System.Collections;

namespace restless

{

   class Pupil

   {

       private string _fullName;

       private string _gender;

       private int _yearBirth;

       

       public Pupil(string fullName, string gender, int yearBirth)

       {

           _fullName = fullName;

           Gender = gender;

           _yearBirth = yearBirth;

       }

       public void PrintInfo()

       {

           Console.WriteLine($"Ф.И.О: {_fullName}\nПол: {_gender}\nГод рождения: {_yearBirth}\n");

       }

       public int isMan()

       {

           if (_gender == "М" || _gender == "м")

               return 1;

           else if (_gender == "Ж" || _gender == "ж")

               return 2;

           return -1;

       }

       public string Gender

       {

           get

           {

               return _gender;

           }

           set

           {

               if (value.ToLower() == "м" || value.ToLower() == "ж")

                   _gender = value;

               else

               {

                   Console.WriteLine("Пол человека введен неверно! (М/Ж)");

                   _gender = "-";

               }

           }

       }

   }

   class Program

   {

       static void Main(string[] args)

       {

           int N = 3;

           ArrayList school = new ArrayList();

           ArrayList boys = new ArrayList();

           ArrayList girls = new ArrayList();

           for(int i = 0; i < N; i++)

           {

               Console.Write("\nФИО: ");

               string fn = Console.ReadLine();

               Console.Write("Пол: ");

               string g = Console.ReadLine();

               Console.Write("Год рождения: ");

               int db = Convert.ToInt32(Console.ReadLine());

               school.Add(new Pupil(fn, g, db));

           }

           Console.WriteLine("\nОбщий список: ");

           foreach (Pupil item in school)

           {

               item.PrintInfo();

               if (item.isMan() == 1)

                   boys.Add(item);

               else if (item.isMan() == 2)

                   girls.Add(item);

           }

           Console.WriteLine("\nСписок мальчиков: ");

           foreach (Pupil item in boys)

           {

               item.PrintInfo();

           }

           Console.WriteLine("\nСписок девочек: ");

           foreach (Pupil item in girls)

           {

               item.PrintInfo();

           }

           Console.WriteLine($"Количество мальчиков: {boys.Count}");

           Console.WriteLine($"Количество девочек: {girls.Count}");

       }

   }

}


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам создать класс для решения данной задачи на языке программирования C#. Вот пример класса для описания школьников:

csharp
using System; using System.Collections.Generic; class Student { // Поля класса private string fullName; private char gender; private int birthYear; // Свойства для доступа к полям с проверкой значений public string FullName { get { return fullName; } set { if (!string.IsNullOrWhiteSpace(value)) fullName = value; else throw new ArgumentException("Имя не может быть пустым или содержать только пробелы."); } } public char Gender { get { return gender; } set { if (value == 'М' || value == 'Ж') gender = value; else throw new ArgumentException("Пол должен быть указан как 'М' (мальчик) или 'Ж' (девочка)."); } } public int BirthYear { get { return birthYear; } set { int currentYear = DateTime.Now.Year; if (value >= 1900 && value <= currentYear) birthYear = value; else throw new ArgumentException("Некорректный год рождения."); } } // Конструктор с параметрами для инициализации полей public Student(string fullName, char gender, int birthYear) { FullName = fullName; Gender = gender; BirthYear = birthYear; } } class Program { static void Main(string[] args) { // Создаем список для хранения школьников List<Student> students = new List<Student>(); // Ввод информации о школьниках Console.Write("Введите количество школьников (N): "); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { Console.WriteLine($"Введите информацию о школьнике #{i + 1}:"); Console.Write("Ф.И.О.: "); string fullName = Console.ReadLine(); Console.Write("Пол (М/Ж): "); char gender = char.Parse(Console.ReadLine().ToUpper()); Console.Write("Год рождения: "); int birthYear = int.Parse(Console.ReadLine()); // Создаем объект Student и добавляем его в список students.Add(new Student(fullName, gender, birthYear)); } // Определение количества мальчиков и девочек int maleCount = students.Count(student => student.Gender == 'М'); int femaleCount = students.Count(student => student.Gender == 'Ж'); // Вывод результатов Console.WriteLine($"Количество мальчиков: {maleCount}"); Console.WriteLine($"Количество девочек: {femaleCount}"); // Вывод списка мальчиков и девочек Console.WriteLine("Список мальчиков:"); foreach (var student in students.Where(student => student.Gender == 'М')) { Console.WriteLine($"Имя: {student.FullName}, Год рождения: {student.BirthYear}"); } Console.WriteLine("Список девочек:"); foreach (var student in students.Where(student => student.Gender == 'Ж')) { Console.WriteLine($"Имя: {student.FullName}, Год рождения: {student.BirthYear}"); } } }

Этот код создает класс Student с полями для Ф.И.О, пола и года рождения, а также свойствами с проверкой значений. В методе Main программы вводится информация о школьниках, определяется количество мальчиков и девочек, и выводится список каждой категории.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос