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

Список элементами которого являются очереди - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сложные строки! http://www.cyberforum.ru/cpp-beginners/thread299201.html
Написать программу, которая вводит текст, состоящий из нескольких предложений, и выводит на экран только цитаты, то есть предложения, заключенные в кавычки. вообще нет мыслей! так как то вести счет кавычек особенный не знаю как((
C++ Матрицы. Нужно написать лабораторную по С++ )) Задание: Сформировать квадратную матрицу размерностью 10х10. Заполнить ее с помощью генератора псевдослучайных чисел. Вывести на экран сложившуюся матрицу. Для каждого столбца с четными номерами (2, 4, 6, 8, 10) найти максимальный его элементов. Вывести на экран номер столбца матрицы (2, 4, 6, 8, 10) и определяемое значение. Я вроде часть написал,... http://www.cyberforum.ru/cpp-beginners/thread299190.html
C++ Поиск данных в файле. Как сделать?
Вобщем такое дело. Нужно что бы при нажатии 2, оно искало и выводило на экран плюсовые числа. У меня не получаеться, помогите пожалуйста. #include <iostream> #include <fstream> #include <string.h> using namespace std;
C++ Не могу написать программу с факториалом.
Всем привет помогите с программой. Не могу сделать, проблемма в факториале. Вот задание: http://s59.***********/i165/1105/a3/8ed9fe47087e.jpg Вот то что я писал. #include <iostream> #include <math.h> using namespace std;
C++ Программа, вычисляющая площадь трапеции по высоте и двум основаниям http://www.cyberforum.ru/cpp-beginners/thread299176.html
Помогите пожалуйста, нужно написать программу, вычисляющую площадь трапеции по высоте и двум основаниям. Процедуру вычисления площади реализовать в отдельном потоке. Добавлено через 21 час 25 минут Чувствую,что очень грустно все(((((((((((
C++ Структура и файл Всем добрый день. Такая проблема, нужно сделать в игре рейтинг игроков, тоисть после смерти или прохождения уровня нужно запрашивать вода имени персонажа, из структуры character сливать поле score(набранные очки) ну и естественно записывать позицию в рейтинге.Немогу понять лишь одного, как сделать так чтобы если к примеру записан один игрок со значением очков 300, и появился новый игрок со... подробнее

Показать сообщение отдельно
fidzhi
5 / 5 / 1
Регистрация: 16.02.2011
Сообщений: 45
31.05.2011, 21:17  [ТС]     Список элементами которого являются очереди
Спасибо, большое, Accept, пришла идея, прочитав твои примеры.
Попробывал сделать как хотел сам, решил остановиться на очереди очередей.
Посмотри пожалуйста код, в чем-то у меня прошиб огромный, я оставил комментарии там немного, чтобы мысль была понятна.
Пока задачу себе поставил такую: создать очередь касс, (Например 1,2,3). Человек потом хочет стать в очередь и вводит номер кассы, и добавляется в очередь именно на этой кассе. Проблема в том, что каждый раз создается новая очередь на элемент кассы, а не продолжается старая..
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
96
97
98
99
100
struct queue{
    char inf[50];
    queue *n;
};
 
struct mainq{
    char num[10];
    queue *q;
    mainq *n;
};
 
void add_cash(mainq **t,mainq **);
void showqueue(mainq *h);
void add_queue(mainq **h);
 
int main ()
{
    mainq *t=NULL,*h=NULL;  
        add_cash(&t,&h);
    add_queue(&h);
    add_queue(&h);
    add_queue(&h);
    add_queue(&h);
    getch();
}
 
void add_cash(mainq **t,mainq **h)//функция создания касс, она работает 100%но
{
    mainq *n;
    do
    {
        if(!(n=(mainq*)calloc(1,sizeof(mainq)))){
            perror("Memory error");
            return;
        }
        printf("Enter the number of cash:\n");
        fflush(stdin);
        gets(n->num);
        if (!*t)        // очередь еще не создана
        *t=*h=n;
        else
        {
            (*t)->n=n;
            *t=n;
        }
    }while((getch()=='y'));
    printf("Done!\n");
 
}
 
void add_queue(mainq **h)  //и функция создания очереди на каждую кассу
{
    char temp[123];
    mainq *s1=*h;
    puts("\nEnter the cash number");
    gets(temp);
 
    do   //вводим кассу, если такая есть в очереди касс, то ок
    {
        if(strcmp(s1->num,temp))
        {
            s1=s1->n;
            if(!s1) 
            {
                puts("\nNo cash");
                return;
            }
        }
        else{
            printf("\nCash has been found");break;
        }
 
    }while(s1);
 
    queue *nh,*nt,*tmp; //указатели на очереди
    nh=NULL,nt=NULL,tmp=NULL;
 
    nt=nh=(s1)->q;   //указатель на голову и хвост сразу указывают на очередь в главной очереди
 
    if(!(tmp=(queue*)calloc(1,sizeof(queue)))){
        printf("Error");return;
    }
 
    printf("\nEnter Surname");
    gets(tmp->inf);
 
    if(!nh)
    {
        (nh)=(nt)=tmp;
        printf("\n1st");   //просто добавил, чтобы контролировать, продолжает ли оно старую очередь на кассу, или создает новую
        
    }
    else
    {
 
        tmp->n=(nh);
        (nh)=tmp;
        printf("\n2nd ot more");
    }
}
Добавлено через 9 часов 50 минут
Разобрался, при создании очереди надо ещё присвоить указателю, который хранится в главной очереди указатель nh
 
Текущее время: 22:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru