Другие языки программирования и технологии
Пожалуйста помогите в написании программы на С++
На вход подается некоторое количество описаний книг (автор, название, количество страниц) . Отсортировать и вывести в алфавитном порядке по названиям.
#include <string>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
struct book {
string author, title;
unsigned num_pages;
};
bool cmp(book& b1, book& b2) { return b1.title < b2.title; }
int main() {
int n;
cout << "количество описаний книг? ";
cin >> n; cin.get();
vector< book > books(n);
for (int c = 0; c < n; ++c) {
string a, t;
unsigned np;
cout << "автор? "; getline(cin, a);
cout << "название? "; getline(cin, t);
cout << "страниц? "; cin >> np; cin.get();
books[c].author = a;
books[c].title = t;
books[c].num_pages = np;
cout << endl;
}
sort(books.begin(), books.end(), cmp);
for (int c = 0; c < n; ++c) {
cout << "название: " << books[c].title << endl
<< "автор: " << books[c].author << endl
<< "страниц: " << books[c].num_pages << endl << endl;
}
}
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
struct book {
string author, title;
unsigned num_pages;
};
bool cmp(book& b1, book& b2) { return b1.title < b2.title; }
int main() {
int n;
cout << "количество описаний книг? ";
cin >> n; cin.get();
vector< book > books(n);
for (int c = 0; c < n; ++c) {
string a, t;
unsigned np;
cout << "автор? "; getline(cin, a);
cout << "название? "; getline(cin, t);
cout << "страниц? "; cin >> np; cin.get();
books[c].author = a;
books[c].title = t;
books[c].num_pages = np;
cout << endl;
}
sort(books.begin(), books.end(), cmp);
for (int c = 0; c < n; ++c) {
cout << "название: " << books[c].title << endl
<< "автор: " << books[c].author << endl
<< "страниц: " << books[c].num_pages << endl << endl;
}
}
Создаешь класс Книга, формируешь массив объектов этого типа, а дальше пробегаешь в цикле регуляркой по названиям и сортируешь. Алгоритмов сортировки в интере дофига и больше.
Похожие вопросы
- Pycharm (Пожалуйста, помогите с написанием программы)
- Помогите в написании программы.
- Помогите с написание программы СИ (С комментариями пожалуйста )
- помогите с написанием программ на паскале
- Помогите с написанием программы C++
- Помогите с написанием программы на языке Ассемблер, алгоритм знаю, вот только команды самого языка - не очень.
- Помогите с написанием программы
- помогите с написание программы плиз:
- Помогите в написании программы на С++
- Помогите в написании программы на языке с++