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

Моделирование защиты работ студентами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Преобразование квадратной матрицы http://www.cyberforum.ru/cpp-beginners/thread119978.html
Доброго всем времени суток Можно ли как - то с помощью элементарных преобразований квадратной матрицы, обнулить главную диагональ? например для такой матрицы: ...
C++ Найти переодическую и непереодическую части десятичной дроби равной m/n Даны взаимно простые натуральные числа m и n (m>n). Найти переодическую и непереодическую части десятичной дроби равной m/n. Заранее спасибо, Вашь Angel-dm))) http://www.cyberforum.ru/cpp-beginners/thread119976.html
Найти переодическую и непереодическую части десятичной дроби равной m/n. C++
Даны взаимно простые натуральные числа m и n (m>n). Найти переодическую и непереодическую части десятичной дроби равной m/n. Заранее спасибо, Вашь Angel-dm))) Добавлено через 6 часов 58 минут...
Вывести контуры квадрата с диагоналями C++
Собственно контуры квадрата написал, а вот как диагонали добавить к нему не получается, если кто знает отзовитесь, пожалуйста Контур квадрата..как-то так: #include <iostream> using namespace std;...
C++ Ошибка при сохранении вектора http://www.cyberforum.ru/cpp-beginners/thread119953.html
Привет всем! После сохранении в файл вектора (дин. масс.) и чтения его в другой вектор, вылазит отакая ошибка: собственно ошибка вылазит перед завершением программы (небось, когда разрушается...
C++ Изменить содержимое файла программно. Мне надо было бы переписать файл notepad++ в другом порядке и сохранить его. Имеющийся файл (файл.inp) выгладит так: C 4 1.38990 3 118.2595 2 -0.0000 C 1 1.38922 5 29.3680 2... подробнее

Показать сообщение отдельно
Maxim Prishchepa
Эксперт С++
1922 / 1034 / 74
Регистрация: 29.03.2010
Сообщений: 3,167
21.04.2010, 15:23
мдя... что бы мне всегда таки курсовые задавали))) эх... молодёжь....

Добавлено через 33 минуты
Цитата Сообщение от ♠black heart♠ Посмотреть сообщение
помогите пожалуста решить задачу буду очень признателен:
Учебная группа из N человек защищает индивидуальные задания, выполненные ко дню защиты. Всего заданий было 3. Каждый студент желает защитить одно или несколько заданий. Преподаватель за один подход принимает только одно задание.
Разработать функцию, которая формирует очередь студентов к преподавателю после одной защиты при условии, что студент становится в хвост очереди, если после защиты у него остались незащищенные задания.
Разработать программу, моделирующую защиту заданий всеми студентами группы при условии, что в группе не более 20 человек.
или пришлите на lizunovd@mail.ru спасибо заранее
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
class student
{
public: 
    
    student(string fio, int col_task)
    {
        this->FIO = fio;
        SetColTasks(col_task)
    }
    student()
    {
        student("",3);
    }
    ~student()
    {
        delete tasks;
    }
    string GetFIO()
    {
        return this->FIO;
    }
 
    bool IsAllTasksReady()
    {
        for(int i=0;i<col_tasks;i++)
        {
            if (!tasks[i])
            {
                return false;
            }
        }
        return true;
    }
 
    void DoneOneTask()
    {
        for(int i=0;i<col_tasks;i++)
        {
            if (!tasks[i])
            {
                tasks[i]= true;
            }
        }
    }
    void SetFIO(string FIO)
    {
        this->FIO = FIO;
    }
    void SetColTasks(int col_task)
    {
        this->col_tasks = col_task;
        if(tasks != NULL)
        {
            delete tasks;
        }
        tasks = new bool[col_task];
        for(int i=0;i<col_task;i++)
        {
            tasks[i] = false;
        }
    }
private:
    string FIO;
    bool *tasks;
    int col_tasks;
};
 
void StudentsQueue(&queue<student> students)
{
    for(int i=0;i<students.size();i++)
    {
        students[i].DoneOneTask();
        if(!students[i].IsAllTasksReady())
        {
            students.push(students.pop());
        }
        else
        {
            cout<<"Student "<<students[i].GetFIO()<<" done all tasks!"<<endl;
        }       
    }
}
int main(int argc, char *argv[])
{
 
    QApplication a(argc, argv);
    queue<student> students;
    //сюда прикрутишь сам красивый ввод с клавиатуры.... ЗЫ: с тебя поллитра ;-)
    students.push(student("Ivanov", 3));
    students.push(student("Pitrov", 3));
    students.push(student("Sidarov", 3));
    StudentsQueue(students);
    return a.exec();
}
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru