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

Не выходит из цикла. Не переходит на след. узел. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Исправление лабораторной(с классом) http://www.cyberforum.ru/cpp-beginners/thread72043.html
Всем привет. Помогите плиз исправить так чтобы программка была с классом!) Задание: Ввести несколько строк и проверить, может ли этот текст быть классом. Проверять только наличие слова class ,...
C++ Одномерный массив Кто нить помоги разобраться в этом адском ужасе, что совсем не чего не выходит... Создавть в динамической памяти одномерный массив вещественных чисел. Преобразовать массив таким образом, что бы в... http://www.cyberforum.ru/cpp-beginners/thread72040.html
C++ два вопроса по С++,вопрос про заг.файла и поток cin
1.У меня есть заголовoчный файл,созданный в проекте А,в проекте В он нужен,как его туда добавить?Надо самим файл из папку в папку добавить?в коде нельзя что то сделать? 2.написал функцию которая...
C++ массив
Дана матрица М (3х3). Преобразовать матрицу: поэлементно вычесть последнюю строку из всех строк, кроме последней. #include <stdio.h> #include <conio.h> int main() {int mas; int i,j; ...
C++ Бинарная сорировка и измерение работы функции http://www.cyberforum.ru/cpp-beginners/thread71988.html
Запрограммировать и протестировать следующие алгоритмы: Алгоритм бинарных вставок и алгоритм Шелла; исходники нашел.только не пойму как их использовать.подскажите пожалуйста как из main вызвать...
C++ Упорядочить строки матрицы в порядке возрастания первого столбца Привет всем. Помогите пожалуйста пару решить нетруднух задач.Заранее спасибо. (если можно рабочую версию) 1.Дан двумерный массив. упорядочить строки матрицы в порядке возрастания первого столбца... подробнее

Показать сообщение отдельно
"Ламер"-программер:)
5 / 5 / 0
Регистрация: 17.04.2009
Сообщений: 69
08.12.2009, 22:18  [ТС]
В общем надеюсь сильно бить не будете, в общем вот моё "чудовище" =)
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
#include <iostream>
#include <string>
#include <time.h>
 
using namespace std;
 
class DListNode
{
public:
    string denomination;//Наименование купюры
    double curse;       //Стоимость в рублях
    int day, month, year;       //Дата - переменные
    DListNode* next;    //Ссылка на след. элемент
    DListNode* prev;    //Ссылка на пред. элемент
};
 
void main()
{
    //Указатели на элементы
    DListNode* first=NULL;
    DListNode* last=NULL;
    DListNode* tek=NULL;
 
    int chose;
    int k=1, n=0, i=0, j=0, q, w, e;
    double cost;//Для преобразования
    int numb;//Для преобразования
    string key, c;
 
    while (k==1)
    {s1://Главное меню программы
        cout<<"1 - Do6aBuTb HoB eJleM\n";
        cout<<"2 - BblBecTu cnucok\n";
        cout<<"3 - nouck kynIOpbI\n";
        cout<<"4 - y3HaTb B py6Jl9x\n";
        cout<<"5 - \n";
        cout<<"6 - \n";
        cout<<"7 - nepeBecTu B pybJLu\n";
        cout<<"8 - Bblxod\n\n";
        cout<<"BbinoJlHuTb: ";
        cin>>chose;
 
        switch(chose)
        {
 
        case 1://Добавить купюру
            {
                struct tm when;
                time_t now, result;
                string k;
                double c;
                int d;
 
s2:
                cout<<"BBeduTe kynIOpy: ";
                cin>>k;
                cout<<"BBeduTe cTouMocTb: ";
                cin>>c;
                cout<<"BBedute dHu: ";
                time( &now );
                when = *localtime( &now );
                cin>>d;
 
                when.tm_mday = when.tm_mday + d;
 
                DListNode* ptr=new DListNode;
                ptr->denomination=k;
                ptr->curse=c;
                if( (result = mktime( &when )) != (time_t)-1 )
                {
                    q=when.tm_mday;
                    w=when.tm_mon+1;
                    e=when.tm_year+1900;
                    ptr->day=q;
                    ptr->month=w;
                    ptr->year=e;
                }
                else
                {
                    perror("BBedeHo He KoppeKTHoe 4ucJlo!");
                    break;
                }
                ptr->next=NULL;
                last=ptr;
 
                if (first==NULL)
                {
                    first=ptr;
                    tek=ptr;
                    ptr->prev=NULL;
                }
 
                ptr->prev=tek;
                tek->next=ptr;
                tek=ptr;
                break;
            }
        case 2://Вывести список всех записей
            {
                DListNode* ptr = NULL;
                if (first==NULL)
                {
                    cout<<"Cnucok nycT!\n";
                    break;
                }
                else
                {
                    ptr=first;
                    while (1)
                    {
                        cout<<ptr->denomination<<" ";
                        cout<<ptr->curse<<" ";
                        cout<<ptr->day<<"-";
                        cout<<ptr->month<<"-";
                        cout<<ptr->year<<"\n\n";
                        cin>>c;
                        if (ptr->next==NULL)
                        {
                            break;
                        }
                        ptr=ptr->next;
                    }
                }
                break;
            }
        case 3://Поиск определённой купюры
            {
                DListNode* ptr=NULL;
                if (first==NULL)
                {   
                    cout<<"\neJLeMeHTbl oTcyTcTByIOT\n";
                    goto s1;
                }
                cout<<"BBeduTe eJLeMeHT dJL9 noucka: ";
                cin>>key;
                ptr=first;
                while (1)
                {
                    if (key==ptr->denomination)
                    {
                        cout<<"\ndaHHble EJleMeHTa:\n";
                        cout<<ptr->curse<<" ";
                        cout<<ptr->day<<"-";
                        cout<<ptr->month<<"-";
                        cout<<ptr->year<<" ";
                        cout<<ptr->denomination<<"\n";
                    }
                    if (ptr->next==NULL)
                        {
                            cout<<"\nEJleMeHT He HaudeH\n";
                            goto s1;
                        }
                    ptr=ptr->next;
                }
            }
 
        case 4://Конвертер
            {
                cout<<"\nBBeduTe cTouMocTb: ";
                cin>>cost;
                cout<<"\nBBeduTe koJlu4ecTBo: ";
                cin>>numb;
            }
        case 8://Выход из программы
            {
                k=0;
                break;
            }
        }
    }
}
Добавлено через 3 минуты
Что то мне подсказывает что причина ещё при введении. Но где и почему - в голове не вяжется.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru