Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите программу на C++ Помогите написать программу на C++ Перепечатывайте задание на форум в виде текста. И называйте тему так, чтобы было понятно о какой именно задаче в ней пойдет речь. https://www.cyberforum.ru/ cpp-beginners/ thread1965384.html C++ Напишите программу на C++
Задание по теориям алгоритмов, помогите написать прогу на C++ Перепечатывайте задание на форум в виде текста. И называйте тему так, чтобы было понятно о какой именно задаче в ней пойдет речь.
C++ Разработка протоколов электронных платежей для АСУ безопасностью предприятия нужна простая программа протоколов электронных платежей для автоматизированной системы управления безопасностью предприятия помогите пожалуйста,нет никаких идей(( https://www.cyberforum.ru/ cpp-beginners/ thread1965380.html C++ Не записывает данные в класс https://www.cyberforum.ru/ cpp-beginners/ thread1965371.html
Добрый день. Учусь на 1 курсе, не ругайте если коряво. Мне задали задачку сделать класс Книжка с контактами, где должны вводиться фамилия, имя, телефон. адрес и почта. Сортировать по почте, искать по...
C++ Выход из метода/функции
Я всегда использовал первый вариант выхода из метода. Но мне настоятельно посоветовали использовать второй вариант, так как код должен быть линейным. Как используют выход из метода в серьёзных...
C++ Проверка числа типа double на чётность/нечётность https://www.cyberforum.ru/ cpp-beginners/ thread1965359.html
В программе необходимо проверить число типа double на то, является оно четным или нет. Это возможно как-то сделать или нет? Обычный метод, как приведённый ниже не работает, так как он для чисел типа...
C++ Символ перехода на новую строку в калькуляторе Страуструпа Выполняю задание в книге "Программирование Принципы и практика с использованием с++" В главе 7 есть задание сделать так чтоб пр нажатии на Enter выводился результат вычислений. После сказано что... https://www.cyberforum.ru/ cpp-beginners/ thread1965316.html Количество элементов в массиве C++
Привет, нужно дописать программу которая находила количество чисел которые выдает массив. for(int a=0;a<=9;a++) { if(a>3) { cout << a << endl; } ...
C++ Запись в файл , и поиск содержимого / (Библиотека) Писал в "Visual Studio 2013" Есть каталог библиотеки. Нужно записать информацию о книге в файл, посмотреть содержимое , и найти интересующею книгу при помощи поиска, что-бы посмотреть есть-ли она в... https://www.cyberforum.ru/ cpp-beginners/ thread1965308.html C++ Сортировка списка пар с использованием heap https://www.cyberforum.ru/ cpp-beginners/ thread1965305.html
Для списка пар pair<string,int>, где первое число – имя пользователя, второе – сумма набранных балов, с использованием heap реализовать вывод на консоль всех имен пользователей в отсортированном по...
Построить индексный массив, упорядочивающий данные по возрастанию C++
Построить индексный массив, упорядочивающий данные по возрастанию (нумерация в массиве начинается с 1): 15 2 1 8 10 8 11 4 3 6
C++ Считывание с файла https://www.cyberforum.ru/ cpp-beginners/ thread1965291.html
ВСЕМ ПРИВЕТ!Я пишу программу смысл ее такой: создан файл key.txt(в этом файле написано 1234) при запуске программы она нам покажет если в файле текст будет 1234 то она выведет YES! иначе NO! НО...
295 / 124 / 106
Регистрация: 30.10.2015
Сообщений: 690
21.04.2017, 21:31 0

Массив структур "Библиотека" (дополнить программу) - C++ - Ответ 10357157

21.04.2017, 21:31. Показов 10748. Ответов 2
Метки (Все метки)

Ответ

Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include <iostream>
#include <cstring>
#include <vector>
#include <algorithm>
 
struct Book
{
  std::string name, author, publisher, genre;
};
 
void PrintByIndex(const std::vector<Book> &b, const size_t index);
 
int main()
{
  const unsigned int NumberOfElements = 10;
  const std::string items[] = { 
    "1) Edit.",
    "2) Print all.",
    "3) Find by author.",
    "4) Find by name.",
    "5) Sort by name.",
    "6) Sort by author.",
    "7) Sort by publisher.",
  };
 
  unsigned int key, book_number;
  std::string author, name;
 
  std::vector<Book> books(NumberOfElements);
 
  for (auto &value : books) {
    std::cout << "Name, author, publisher, genre: ";
    std::cin >> value.name >> value.author >> value.publisher >> value.genre;
  }
 
 
  while (true) {
    for (const auto &value : items)
      std::cout << value << std::endl;
 
    std::cout << ">> ";
    std::cin >> key;
 
    switch (key) {
      case 1: 
        std::cout << "Book number: ";
        std::cin >> book_number;
        std::cout << "New name, author, publisher, genre: ";
        std::cin >> books[book_number].name      >> books[book_number].author 
                    >> books[book_number].publisher >> books[book_number].genre;
        break;
      case 2:
        for (size_t i = 0; i < NumberOfElements; ++i)
          PrintByIndex(books, i);
        break;
      case 3:
        std::cout << "Author: ";
        std::cin >> author;
        for (size_t i = 0; i < NumberOfElements; ++i)
          if (books[i].author == author)
            PrintByIndex(books, i);
        break;
      case 4:
        std::cout << "Name: ";
        std::cin >> name;
        for (size_t i = 0; i < NumberOfElements; ++i)
          if (books[i].name == name)
            PrintByIndex(books, i);
        break;
      case 5:
        std::sort(books.begin(), books.end(), [](const Book &b1, const Book &b2) { return b1.name < b2.name; });
        break;
      case 6:
        std::sort(books.begin(), books.end(), [](const Book &b1, const Book &b2) { return b1.author < b2.author; });
        break;
      case 7:
        std::sort(books.begin(), books.end(), [](const Book &b1, const Book &b2) { return b1.publisher < b2.publisher; });
        break;
 
      default:
        break;
    }
  }
}
 
void PrintByIndex(const std::vector<Book> &b, const size_t index)
{
  std::cout << "[" << index << "] "  
            << b[index].name      << " " << b[index].author << " " 
            << b[index].publisher << " " << b[index].genre << std::endl;
}


Вернуться к обсуждению:
Массив структур "Библиотека" (дополнить программу) C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2017, 21:31
Готовые ответы и решения:

Написать функцию поиска человека по полю "фамилия" в массиве структур "Note" ("Персональная информация")
Вывести из структуры информацию о человеке, чья фамилия введена с клавиатуры #include...

В массиве структур студент с полями "ИМЯ" "ВОЗРАСТ" "УСПЕВАЕМОСТЬ" выполнить сортировку по успеваемости по возрастанию
в массиве структур студент с полями &quot;ИМЯ&quot; &quot;ВОЗРАСТ&quot; &quot;УСПЕВАЕМОСТЬ&quot; выполнить сортировку по...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно"
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;,...

Создать массив структур "Ведомость про участников конкурса"
здравствуйте. Прошу написать программу. Большое спасибо за ваш труд. Условие: Создать массив...

2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2017, 21:31
Помогаю со студенческими работами здесь

Отсортировать массив структур типа "Znak" по заданному полю
Вот что есть, помогите дальше... Я Ввожу знак зодиака и у меня должно сортировать в том порядке в...

Отсортировать массив структур "Студент" в порядке возрастания годов рождения
Написать программу, которая вводит с клавиатуры данные, содержащие информацию: фамилия студента,...

Массив структур "Абитуриент", определить количество абитуриентов из каждого города
Структура элемента массива поступающих в вуз: фамилия, имя, отчество, домашний адрес (город, улица,...

Создать массив структур "авто" и использовать для учета работы автомагазина
Помогите написась программу Описать структуру авто, содержащую информацию об автомобиле: марка,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru