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

Структура "Автобус" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Машина Тьюринга: программа для преобразования десятичных чисел в унарную запись http://www.cyberforum.ru/cpp-beginners/thread1172661.html
Помогите с выполнением. Тема машина Тьюринга. Задание:Составить программу для преобразования десятичных чисел {0,1,2,3,4,5,6,7,8,9} в унарную запись
C++ Найти в строке те слова, которые начинаются с прописной буквы Помогите, пожалуйста, а то я в информатике, а тем более в С++ совсем не шарю) Дана строка. Словом текста считается любая последовательность букв латинского алфавита; между соседними словами - не менее одного пробела, за последним словом – точка. Найти и сохранить в строке те слова, которые начинаются с прописной буквы. Все остальные слова удалить. http://www.cyberforum.ru/cpp-beginners/thread1172640.html
Определить класс с именем TRAIN C++
1. Определить класс с именем TRAIN, содержащий следующие поля: О название пункта назначения; О номер поезда; О время отправления. Определить методы доступа к этим полям и перегруженные операции извлечения и вставки для объектов типа TRAIN. 2. Написать программу, выполняющую следующие действия: О ввод с клавиатуры данных в массив, состоящий из шести объектов типа TRAIN; записи должны быть...
C++ Как можно еще создать массив объектов класса
допустим у меня есть основной класс и куча классов что наследуют его. помню видео в котором говорили что типа виртуальные функции и делаются типа в основном для того что бы в массив обьектов базового класса записать обьекты другого класса типа вот так. osnivnio a = new nasl1();osnivnio a = new nasl2(); и так далее и что бы их записать в массив. думаю вы поняли о чем я. А еще бы хотел бы...
C++ Вывести таблицу сдачи, которую должен выдать кондуктор из купюр номиналом 2, 5, 10, 20, 50, и 100 грн http://www.cyberforum.ru/cpp-beginners/thread1172628.html
В троллейбусе стоимость проезда 1.50 грн. Выведите таблицу здачи которую должен выдать кондуктор из купюр наминалом 2, 5, 10, 20, 50, и 100 грн, для пассажиров от 1 до 10, которые одновременно оплачивают проезд за всех одной купюрой. Если купюра меньше суммы стоимости проезда поставить прочерк С++
C++ Найти ошибку в программе. Интеграл по формуле Симпсона, посмотрите правильно ли выполнил задание // Lab14Y.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream> #include "math.h" #include "conio.h" #pragma warning(disable : 4996) #define M_PI 3.1415926535897932384626433832795 подробнее

Показать сообщение отдельно
Mlino4ka
1 / 1 / 0
Регистрация: 08.05.2014
Сообщений: 19

Структура "Автобус" - C++

11.05.2014, 21:50. Просмотров 349. Ответов 2
Метки (Все метки)

Как исправить зацикливание при неверном вводе данных в этой программе?
Цель программы заключается в:составить программу которая содержит динамическую информацию о наличии автобусов в автобусном парке!

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
#include <string.h>
#include <dos.h>
#include <iostream.h>
#include <iomanip.h>
#include <vcl.h>
#include <stdlib.h>
#include <conio.h>
struct bus
{
    char FIO_voditel[ 50 ];
    int bus_number, route_number, viezd, zaezd;
    struct bus *even;
    };
struct bus *next;
struct bus *start=NULL;
struct bus *end=NULL;
int size=0;
void index( int index )
{
next=start;
for( int i=0; next; ++i )
{
    if( i==index ) break;
    next=next->even;
    }
return;
}
void addtail( bus &X )
{
++size;
next=( bus * ) malloc ( sizeof(bus) );
memcpy( next, &X, sizeof(bus) );
if( start==NULL && end==NULL )  start=next;
else end->even=next;
end=next;
end->even=NULL;
return;
}
void filled()
{
randomize();
char opt[ 10 ];
struct bus X;
clrscr();
cout << setw( 10 ) << "Naberite EXIT dlai prekrasheniai vvoda dannih" << endl;
cout << "Vvedite dannie --" << setw( 10 ) << size+1 << endl
     << "Familia i iniciali voditelaiy: ";
cin.get( X.FIO_voditel , 100 );
if( strlen(X.FIO_voditel)==0 || stricmp(X.FIO_voditel, "exit")==0 ) return;
cout << "Nomer avtobusa i nomer reisa cherez probel: ";
cin >> X.bus_number >> X.route_number;
cin.ignore();
for( ;((X.viezd=random( 24 ))>=(X.zaezd=random( 24 ))); );
addtail( X );
memset( &X, 0, sizeof(bus) );
filled(); // ?aeo?ney
}
void main( void )
{
int i, j, c;
struct time t;
gettime( &t );
filled(); //caiieiyai nienie
for( ; c!=3; )
{
    clrscr();
    cout << "[ 1 ] V parke" << endl
     << "[ 2 ] Na linii" << endl
     << "[ 3 ] Bihod" << endl
     << "Vvedite 1,2,3 : ";
    cin >> c;
    switch( c )
    {
    case 1:
        cout << "V parke v dannii moment: " << endl;
        for( j=0,i=0; i<size; ++i )
        {
        index( i );
        if( next->viezd>t.ti_hour || next->zaezd<t.ti_hour )
        {
            cout << "Nomer avtobusa: " << next->bus_number << endl
             << "Nomer reisa: " << next->route_number << endl
             << "Voditel': " << next->FIO_voditel << endl
             << "------------------------------------" << endl;
            ++j;
            }
        }
        cout << "Itogo: " << j << " iz " << size << endl
         << "Nagmite lybyu klavishy dlai prodolgeniay " << endl;
        getch();
    break;
    case 2:
        cout << "Na linii v dannii moment: " << endl;
        for( j=0,i=0; i<size; ++i )
        {
        index( i );
        if( next->viezd<t.ti_hour && next->zaezd>t.ti_hour )
        {
            cout << "Nomer avtobusa: " << next->bus_number << endl
             << "Nomer reisa: " << next->route_number << endl
             << "Voditel': " << next->FIO_voditel << endl
             << "------------------------------------" << endl;
            ++j;
            }
        }
        cout << "Itogo: " << j << " iz " << size << endl
         << "Nagmite lybyu klavishy dlai prodolgeniay " << endl;
        getch();
    break;
    default:
        if( c>3 ) cout << "Nevernii vvod!" << endl;
    break;
    }
    }
return;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru