М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Nezik
Nezik
30.09.2022 02:22 •  Информатика

С++ Завдання
Напишіть інформаційну систему «Співробітники». Програма має забезпечувати введення даних,
редагування даних співробітника, видалення співробітника, пошук співробітника за прізвищем, вивід інформації
про всіх співробітників зазначеного віку, або прізвище
яких починається на зазначену літеру. Організуйте можливість збереження знайденої інформації у файл. Також
весь список співробітників зберігається у файл (при
виході з програми — автоматично, у процесі виконання
програми — за командою користувача). При старті програми відбувається завантаження списку співробітників
із зазначеного користувачем файлу.

👇
Ответ:
PollyFoxk2002
PollyFoxk2002
30.09.2022

Відповідь:

якщо правильно все зрозумів то так:

Пояснення:

#include <iostream>

#include <fstream>

#include <vector>

#include <algorithm>

using namespace std;

// Клас, що представляє співробітника

class Employee {

public:

   string surname;

   string name;

   int age;

   Employee(const string& surname, const string& name, int age)

       : surname(surname), name(name), age(age) {}

};

// Клас, що представляє базу даних співробітників

class EmployeeDatabase {

private:

   vector<Employee> employees;

   string filename;

public:

   EmployeeDatabase(const string& filename)

       : filename(filename) {}

   // Додавання співробітника до бази даних

   void addEmployee(const Employee& employee) {

       employees.push_back(employee);

   }

   // Видалення співробітника з бази даних за прізвищем

   void removeEmployee(const string& surname) {

       employees.erase(remove_if(employees.begin(), employees.end(),

           [&](const Employee& employee) { return employee.surname == surname; }), employees.end());

   }

   // Пошук співробітників за прізвищем

   vector<Employee> searchBySurname(const string& surname) const {

       vector<Employee> result;

       for (const Employee& employee : employees) {

           if (employee.surname == surname) {

               result.push_back(employee);

           }

       }

       return result;

   }

   // Пошук співробітників за віком

   vector<Employee> searchByAge(int age) const {

       vector<Employee> result;

       for (const Employee& employee : employees) {

           if (employee.age == age) {

               result.push_back(employee);

           }

       }

       return result;

   }

   // Пошук співробітників за першою літерою прізвища

   vector<Employee> searchByFirstLetter(char letter) const {

       vector<Employee> result;

       for (const Employee& employee : employees) {

           if (employee.surname[0] == letter) {

               result.push_back(employee);

           }

       }

       return result;

   }

   // Завантаження списку співробітників з файлу

   void loadFromFile() {

       ifstream file(filename);

       if (file.is_open()) {

           employees.clear();

           string surname, name;

           int age;

           while (file >> surname >> name >> age) {

               employees.emplace_back(surname, name, age);

           }

           file.close();

       }

   }

   // Збереження списку співробітників у файл

   void saveToFile() const {

       ofstream file(filename);

       if (file.is_open()) {

           for (const Employee& employee : employees) {

               file << employee.surname << " " << employee.name << " " << employee.age << endl;

           }

           file.close();

       }

   }

};

int main() {

   string filename = "employees.txt";

   EmployeeDatabase database(filename);

   // Завантаження списку співробітників з файлу

   database.loadFromFile();

   int choice;

   do {

       cout << "=== ІНФОРМАЦІЙНА СИСТЕМА \"СПІВРОБІТНИКИ\" ===" << endl;

       cout << "1. Додати співробітника" << endl;

       cout << "2. Видалити співробітника" << endl;

       cout << "3. Пошук за прізвищем" << endl;

       cout << "4. Пошук за віком" << endl;

       cout << "5. Пошук за першою літерою прізвища" << endl;

       cout << "6. Зберегти список співробітників у файл" << endl;

       cout << "0. Вихід" << endl;

       cout << "Ваш вибір: ";

       cin >> choice;

       switch (choice) {

           case 1: {

               string surname, name;

               int age;

               cout << "Введіть прізвище: ";

               cin >> surname;

               cout << "Введіть ім'я: ";

               cin >> name;

               cout << "Введіть вік: ";

               cin >> age;

               database.addEmployee(Employee(surname, name, age));

               cout << "Співробітник успішно доданий!" << endl;

               break;

           }

           case 2: {

               string surname;

               cout << "Введіть прізвище співробітника, якого бажаєте видалити: ";

               cin >> surname;

               database.removeEmployee(surname);

               cout << "Співробітник успішно видалений!" << endl;

               break;

           }

           case 3: {

               string surname;

               cout << "Введіть прізвище для пошуку: ";

               cin >> surname;

               vector<Employee> result = database.searchBySurname(surname);

               if (result.empty()) {

                   cout << "Співробітників з таким прізвищем не знайдено." << endl;

               } else {

                   cout << "Результати пошуку:" << endl;

                   for (const Employee& employee : result) {

                       cout << "Прізвище: " << employee.surname << ", Ім'я: " << employee.name << ", Вік: " << employee.age << endl;

                   }

               }

               break;

           }

           case 4: {

               int age;

               cout << "Введіть вік для пошуку: ";

               cin >> age;

               vector<Employee> result = database.searchByAge(age);

               if (result.empty()) {

                   cout << "Співробітників з таким віком не знайдено." << endl;

               } else {

                   cout << "Результати пошуку:" << endl;

                   for (const Employee& employee : result) {

                       cout << "Прізвище: " << employee.surname << ", Ім'я: " << employee.name << ", Вік: " << employee.age << endl;

                   }

               }

               break;

           }

           case 5: {

               char letter;

               cout << "Введіть літеру для пошуку: ";

               cin >> letter;

               vector<Employee> result = database.searchByFirstLetter(letter);

               if (result.empty()) {

                   cout << "Співробітників з прізвищами, що починаються на задану літеру, не знайдено." << endl;

               } else {

                   cout << "Результати пошуку:" << endl;

                   for (const Employee& employee : result) {

                       cout << "Прізвище: " << employee.surname << ", Ім'я: " << employee.name << ", Вік: " << employee.age << endl;

                   }

               }

               break;

           }

           case 6: {

               database.saveToFile();

               cout << "Список співробітників успішно збережений у файл!" << endl;

               break;

           }

           case 0:

               break;

           default:

               cout << "Невірний вибір. Спробуйте ще раз." << endl;

               break;

       }

       cout << endl;

   } while (choice != 0);

   return 0;

}

4,7(22 оценок)
Открыть все ответы
Ответ:
sharunovamaria01
sharunovamaria01
30.09.2022
Дано a=82_{16}, b=701_8. Выберите число с, записанное в двоичной системе, которое отвечает условию a<c<b.
Число в 16-ой и 8-ой системе очень легко записать в двоичное системе расписав каждую цифру числа на черыре цифры у 16-го числа и на три цифры у 8-го числа
Первое число 82(в 16)
8 =1000(в двоичной системе)
2= 0010
82 =10000010
Второе число 701(в 8 системе)
7=111( в двоичной системе)
0=000
1=001
701=111000001
Данные системы счисления относятся к позиционным поэтому вес каждой цифры зависит от ее положения
Число с удолетворяющее условию a<c<b равняется 11010111
11010111(2) =327(8)=D7(16)
4,7(91 оценок)
Ответ:
hakimov676
hakimov676
30.09.2022
Const c:array [1..10] of integer = (-7,3,0,2,-1,4,8,-9,1,6);
var b,d:array [1..10] of integer;
     p,k,max,i,j,tmp:integer;
begin
  p:=1;
  for i:=1 to 10 do
    if c[i] > 0 then p:=p*c[i];
  k:=0;
  for i:=1 to 10 do
    if c[i] < 0 then inc(k);
  d:=c;
  max:=d[1];
  for i:=2 to 10 do
    if c[i] > max then max:=c[i];
  writeln ('Max: ',max);
  writeln ('Kol-vo otriz. elementov: ',k);
  writeln ('Proizvedenie: ',p);
  for i:=1 to 10 do
    if c[i] >= 0 then b[i]:=c[i]+10 else
      if c[i] < 0 then b[i]:=c[i]*c[i];
  writeln ('New massiv: ');
  for i:=1 to 10 do write (b[i],' ');
  writeln;
  for i:=1 to 9 do
    for j:=i+1 to 10 do
      if d[j] > d[i] then
       begin
         tmp:=d[j];
         d[j]:=d[i];
         d[i]:=tmp;
       end; 
  for i:=1 to 10 do write (d[i],' ');
  writeln;
end.
4,8(8 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ