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

Программа выдает не тот результат - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти среднее арифметическое чисел, больших М и меньших Н http://www.cyberforum.ru/cpp-beginners/thread602049.html
Написать программу с оператором for, которая проверяет пароль пользователя, а затем позволяет пользователю ввести два целых числа М и Н (М < Н), определяющие границы диапазона возможных значений, и реализовывает задание: найти среднее арифметическое чисел, больших М и меньших Н.
C++ Почему "падает" программа #include <iostream> #include <cmath> using namespace std; void vvodMas(int x, int n); void ydalenie(int x, int n); void perestanovka(int x, int k); void print(int x, int k); int main() { const int n = 5; http://www.cyberforum.ru/cpp-beginners/thread602048.html
Решние уравнения f(x)=0 методом итераций C++
Всем привет! Ребята, помогите пожалуйта! Как кровь из носа нужен код такой вот задачки Программа решения уравнения f(x)=0 методом итераций. y=(2*x-log(x))/3. В итерациях вообще ничего не понимаю... кто может чем-нибудь помочь - буду очень благодарна! в инете много теории, но все равно не оч разбираюсь... программа нужна максимум до субботы... помогите пожалуйста!
C++ Проверка вводимых символов
Что то я так и не нашел в с++ под линукс есть ли встроенные регэкспы. Мне нужно что бы люди при загрузке файла не могли подменить имя, то естьп роверить что это символы a-zA-Z-а-яёА-ЯЁ0-9_.,'- и пробел. Единственная идея не подключая сторонних либ, юто брать, по символьно и проверять входят ли эти кожы этих символов в диапазон разрешенный. то есть (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch...
C++ Ошибка в методе, как исправить? http://www.cyberforum.ru/cpp-beginners/thread601988.html
void Point::Read() { int _x,_y; cin>>"(">>_x>>",">>_y>>")"; SetX(_x); SetX(_y); } Вот метод класса Point, хотел вводить координаты в формате (10,20), само собой надо пропускать (,) Но компилятор выдаёт: error C2678: бинарный ">>": не найден оператор, принимающий левый операнд типа "std::istream" (или приемлемое преобразование отсутствует) Как мне это исправить?
C++ Дан файл, содержащий текст, записанный строчными русскими буквами. Получить в другом файле тот же текст, записанный заглавными буквами Дан файл, содержащий текст, записанный строчными русскими буквами. Получить в другом файле тот же текст, записанный заглавными буквами. подробнее

Показать сообщение отдельно
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190

Программа выдает не тот результат - C++

10.06.2012, 15:55. Просмотров 390. Ответов 0
Метки (Все метки)

Составить программу, которая содержит текущую информацию о заявках на авиабилеты. Каждая заявка включает:
• пункт назначения;
• номер рейса;
• фамилию и инициалы пассажира;
• желаемую дату вылета.
Программа должна обеспечивать:
• хранение всех заявок в виде двоичного дерева;
• добавление и удаление заявок;
• по заданному номеру рейса и дате вылета вывод заявок с их последующим удалением;
• вывод всех заявок.

Программа работает, но лишь выдает до бесконечности номера заявок и пункты назначения, номера рейсов, фио пассажиров, желаемые даты вылета, содержащиеся в этих заявках.



C++ (Qt)
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
#include <iostream>
#include <locale>
#include <ctime>
#include <string>
using namespace std;
typedef struct zajfka{ //  информация о заявках на авиабилеты:
    char point[100];    //- пункт назначения;
    int number;        //- номер рейса;
    char name1[20];    //- фамилия пассажира;
    char name2[20];    //- имя
    char name3[20];    //- отчество
    time_t date;        //- желаемая дата вылета;
    struct zajfka * next;    // указатель на структуру заявка.
}Node;
void addNode( Node *& list ); // - добавление заявок в список;
void deleteNode( Node *& list, const int num ); // - удаление заявок по заданному номеру рейса
void outNodeNum( const Node * list, int num ); // - вывод заявок по заданному номеру рейса
//void outNodeDate( const Node * list ); // - вывод заявок по дате вылета
void outNode( const Node * list ); // - вывод всех заявок.
void out( const Node * list ); // вывод одной заявки
bool if_end( char * ch, wchar_t *str = L"" );
//_________ MAIN_________________
int main(int argc, char *argv[])
{ 
    Node * list = NULL;
    wcout.imbue(locale(".866"));
    addNode( list );
    outNode( list );
    int num;
    wcout << L"\n\nВведите номер рейса для просмотра заявок этого рейса > ";
    cin >> num;        getchar();
    wcout << L"\n\nЗаявки с номером рейса "; cout << num;
    outNodeNum( list, num );
    wcout << L"\n\nУдаление заявок по заданному номеру рейса > "; 
    cin >> num;        getchar();
    deleteNode( list, num );
    wcout << L"\n\nОставшиеся заявки:";
    outNode( list );
    wcout << L"\n\nНажмите клавишу Enter для выхода из программы";
    getchar(); // пауза
    return 0;
}
//________ END MAIN ______________
void addNode( Node *& list ){
    wcout << L"Введите данные о заявках:\n";
    wcout << L"Для выхода введите слово \"end\"\n\n";
    int num = 0;
    while(1){
        num++;
        wcout << L"\nДанные о заявке № " << num << endl;
        Node * n = new Node;
        if( if_end( n->point,L"Введите пункт назначения > " )) break;
        wcout << L"Введите номер рейса > ";
        cin >> n->number;
        getchar();
        if( if_end( n->name1, L"Введите фамилию пассажира > " )) break;
        if( if_end( n->name2, L"Введите имя пассажира > " )) break;
        if( if_end( n->name3, L"Введите отчество пассажира > " )) break;
        //wcout << L"Введите желаемую дату вылета > ";
        //cin >> n->date;   // с датами я неработал ещё...
        n->next = list; // "пристыковываемся" в список
        list = n;
    }
}
bool if_end( char * ch, wchar_t *str  ){
    wcout << str;
    gets( ch );
    if( strcmp( ch, "end" )) return false;
    return true;
}
void out( const Node * list, int num ){
    wcout << L"\n\nЗаявка № " << num;
    wcout << L"\nПункт назначения > " << list->point;
    wcout << L"\nНомер рейса > "; cout << list->number;
    wcout << L"\nФамилия пассажира > " << list->name1;
    wcout << L"\nИмя пассажира > " << list->name2;
    wcout << L"\nВведите отчество пассажира > " << list->name3;
    //wcout << L"\nЖелаемая датa вылета > " << list->;
}
void outNode( const Node * list ){
    int n = 1;
    for(; list ; list = list->next ){
        out( list, n );
        n++;
    }
}
void outNodeNum( const Node * list, int num ){
    int n = 1;
    for(; list ; list = list->next ){
        if( list->number == num )
            out( list, n++ );
    }
}
void deleteNode( Node *& list, const int num ){
    int n = 1;
    Node *x, *y = list, *begin = list;
    wcout << L"\n\n_____ Удаление: ________";
    while( list ){
        if( list->number == num ){
            x = list->next;
            out( list, n );
            n++;
            if( list != y ){
                delete list;
                y->next = list = x;
            }// end  if( list != y ){
            else{
                delete list;
                y = list = x;
            }// end if( list != y ){
        }// end if( list->number == num ){
        else{
            y = list;
            list = list->next;
        }// end else  if( list->number == num )
    }// end while()
    list = begin;
}// end deleteNode()
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru