1. Главная
  2. Библиотека
  3. Программирование
  4. struct TRec { string fio; int year; }; class TObj { TRec...
Разбор задачи

struct TRec { string fio; int year; }; class TObj { TRec *p; int num; public: void Init(int n); void GetFio(int god); void Done(); }; Метод Init предназначен для выделения памяти для поля p. Метод GetFio выводит на экран фамилии людей, родившихся в

  • Предмет: Программирование
  • Автор: Кэмп
  • #Основы алгоритмизации и программирования
  • #Языки программирования (C++, Java, Python и др.)
struct TRec { string fio; int year; }; class TObj { TRec *p; int num; public: void Init(int n); void GetFio(int god); void Done(); }; Метод Init предназначен для выделения памяти для поля p. Метод GetFio выводит на экран фамилии людей, родившихся в

Условие:

struct TRec { string fio; int year; }; class TObj { TRec *p; int num; public: void Init(int n); void GetFio(int god); void Done(); }; Метод Init предназначен для выделения памяти для поля p. Метод GetFio выводит на экран фамилии людей, родившихся в определённом году. Метод Done предназначен для освобождения выделенной памяти. В файле input.txt первая цифра — это количество людей num, а далее — ФИО и год рождения. Написать программу, которая выводит на экран фамилии людей, которым 20 лет. Максимальный размер поля fio — 10 символов.

Решение:

  1. Опишем структуру TRec. В ней содержится строка fio для хранения ФИО (с максимальной длиной 10 символов) и целое число year – год рождения. Для работы со строками подключаем заголовок <string>.

  2. Создадим класс TObj, где есть закрытые поля: указатель p на динамический массив структур TRec и целочисленная переменная num – количество записей. В публичной части класса объявим следующие методы:
    • Init(int n) – выделяет память для массива записей длиной n и записывает значение n в поле num;
    • Load(istream& in) – дополнительный метод для чтения из входног...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какой из методов класса TObj отвечает за освобождение динамически выделенной памяти?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет