Форум программистов, компьютерный форум CyberForum.ru

Упорядочить список студентов по году рождения и распечатать его - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как реализовать на языке прогр. C++ сглаживание функции http://www.cyberforum.ru/cpp-beginners/thread887787.html
Здравствуйте, подскажите пожалуйста, как можно реализовать сглаживание функции a(t) = sin(cos(0.1·t +5)) ·cos(sin(-1.33·t -2)) + rnd(-0.005;0.005) фильтром низких частот и интерполяцию(линейная, квадратичная, по методу Лагранжа)
C++ В отсортированном одномерном массиве выполнить поиск заданного элемента последовательным методом Знаю,что тут есть похожая очень тема, но не могу справиться который день...так что прошу помощи:wall: В отсортированном одномерном массиве Х(100) выполнить поиск заданного элемента последовательным методом,сортировка у меня методом вставки в список.Если будет проще,то вот мой отсортированный массив.Буду очень благодарна, если откликнитесь)#include <iostream> #include <ctime> #define N 100 ... http://www.cyberforum.ru/cpp-beginners/thread887783.html
C++ 5d массив
помогите выделить память под 5D массив через calloc.
Компилятор выдаёт ошибку: неразрешенный вид '_main C++
#include <vcl.h> #include <iostream.h> using namespace std; class CClass { protected: double a; int b; public: CClass(){a=0;b=b=b=b=b=0;}
C++ Упорядочить заданную последовательность чисел так, чтобы каждый элемент, стоящий на нечетном месте, был больше каждого из соседних http://www.cyberforum.ru/cpp-beginners/thread887755.html
Здесь совсем у меня вариантов нету.. не сталкивался с подобной сортировкой до этого. Нужно составить алгоритм, упорядочивающий заданную последовательность чисел так, чтобы каждый элемент, стоящий на нечетном месте, был больше каждого из соседних. Обеспечить ввод параметров и количество элементов массива с клавиатуры.
C++ Увеличить предел константного целочисленного литерала Добрый день. Появилась потребность увеличить предел целочисленного строкового литерала. Т.е. фактически изменить его тип. Например хочется реализовать в моём классе следующее: Class Foo; int main() { Foo obj1 = 4534657567463345656565757575757575334545454543345456; Foo obj2(4534657567463345656565757575757575334545454543345456); } Возможно ли вообще такое? подробнее

Показать сообщение отдельно
Issues
430 / 365 / 37
Регистрация: 06.08.2012
Сообщений: 961
02.06.2013, 11:19     Упорядочить список студентов по году рождения и распечатать его
Конечно, всё можно было сделать намного проще, но мне почему то захотелось так. Я сделал сортировку, только по году, т.е. если годы одинаковые, то сортировки не будет. Чтобы было всё как надо, измени немного оператор <, в классе Студент. Если не получиться, или если тебе нужно код по проще, пиши.
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
92
93
94
95
#include <algorithm>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
#include <vector>
 
 /////////////////////////////////////////////////////////////////////////////////
// ---------------------------------STUDENT ---------------------------------//
 
class Student
{
    struct Birthday {
        Birthday(int _d, int _m, int _y): d(_d), m(_m), y(_y) { }
 
        int d, m, y;
    };
    
    struct FullName {
        FullName(std::string _name, std::string _surname, std::string _patronymic):
            name(_name), surname(_surname), patronymic(_patronymic) { }
 
        std::string name, surname, patronymic;
    };
 
    Birthday birthday;
    FullName fullname;
 
public:
    Student(std::string _name, std::string _surname, std::string _patronymic,
        int _d, int _m, int _y):
    fullname(FullName(_name, _surname, _patronymic)), birthday(Birthday(_d, _m, _y))
    { }
 
    bool operator< (const Student& rhs) { 
        return birthday.y < rhs.birthday.y; 
    }
 
    friend std::ostream& operator<< (std::ostream&, const Student&);
 
};
 
std::ostream& operator<< (std::ostream& os, const Student& stud)
{
    os << stud.fullname.surname << ' ' << stud.fullname.name << ' ' << stud.fullname.patronymic 
        << std::setw(0x5) << stud.birthday.d << '.' << stud.birthday.m << '.' << stud.birthday.y;
 
    return os;
}
 
 // ---------------------------------END STUDENT -----------------------------//
/////////////////////////////////////////////////////////////////////////////////
 
 
void StudSort(std::vector<Student>& stud) { 
    std::sort(stud.begin(), stud.end());
}
 
 
void Print(const Student& stud) { 
    std::cout << stud << std::endl; 
}
 
 
 // ---------------------------------MAIN ------------------------------------//
/////////////////////////////////////////////////////////////////////////////////
 
int main()
{
    std::vector<Student> studBase;
 
    std::ifstream ifsStud("STUDENT.DAT");
 
    std::string n, s, p;
    int d, m, y;
 
    if (!ifsStud.is_open()) { std::cerr << "ERROR! File can't opened. \n";
        exit(EXIT_FAILURE);
    }
 
    while (!ifsStud.eof())
    {
        ifsStud >> n; ifsStud >> s; ifsStud >> p;
        ifsStud >> d; ifsStud >> m; ifsStud >> y;
 
        studBase.push_back(Student(n, s, p, d, m, y));
    }
 
    StudSort(studBase);
 
    std::for_each(studBase.begin(), studBase.end(), Print);
 
    system("PAUSE");
    return 0;
}
 
Текущее время: 05:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru