С Новым годом! Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 28.03.2015
Сообщений: 11
1

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке

13.06.2015, 17:34. Показов 1757. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!
Программа на СИ.
Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке.
Сведения о каждом автобусе содержат:
• номер автобуса;
• фамилию и инициалы водителя;
• номер маршрута.
Программа должна обеспечивать:
• начальное формирование данных обо всех автобусах в парке в виде списка;
• при выезде каждого автобуса из парка вводится номер автобуса, и программа удаляет данные об этом автобусе из списка автобусов, находящихся в парке, и записывает эти данные в список автобусов, находящихся на маршруте;
• при въезде каждого автобуса в парк вводится номер автобуса, и программа удаляет данные об этом автобусе из списка автобусов, находящихся на маршруте, и записывает эти данные в список автобусов, находящихся в парке;
• по запросу выдаются сведения об автобусах, находящихся в парке, или об автобусах,
находящихся на маршруте.

Проблема в том, что не получается "отправить автобус из парка на маршрут" и наоборот.
Помогите, пожалуйста, исправить код.
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
 
#define FIO 64
#define IN 0
#define OUT 1
 
struct node 
{
    int busnumb, busmarshrut, is_in_park;
    char driver[FIO];
    struct node* next;
};
struct node *n;
 // добавление элемента в список
struct node *list_add(struct node **p, const int busnumb, const int busmarshrut, const char* driver )
{
    struct node *n = (struct node*)malloc(sizeof(struct node));
    if (n == NULL)
    {
        puts( "Can't add new item. Something with memory." );
        return NULL;
    }
    n->next = *p;
    *p = n;
    n->busnumb = busnumb;
    n->busmarshrut = busmarshrut;
    n->is_in_park = 0;
    strcpy(n->driver, driver );
    return *p;
}
// удаление элемента из списка
void list_remove(struct node **p)
{
    if (*p != NULL)
    {
        struct node *n = *p;
        *p = (*p)->next;
        free(n);
    }
}
// поиск автобуса по номеру
struct node** list_search_number(struct node **n, const int busnumb)
{
    while (*n != NULL)
    {
        if ((*n)->busnumb == busnumb)
        return n;
        n = &(*n)->next;
    }
    return NULL;
}
// вывод списка на экран
void list_print(struct node *n, const int inout)
{
    puts("");
    if (n == NULL)
        printf("Ваш список пока пуст!\n");
    while (n != NULL)
    {
        if (inout == IN && n->is_in_park == OUT )
            ;
        else 
            if (inout == OUT && n->is_in_park == IN )
                ;
            else
                printf( "№: %d, \tМаршрут: %d, \tВодитель: %s, \tIN/OUT: %d\n",n->busnumb,n->busmarshrut,n->driver,n->is_in_park );
        n = n->next;
    }
}
 
void list_inout(struct node *n, const int inout)
{
    int busnumb;
    struct node *p = n;
    printf("Введите номер автобуса: ");
    scanf("%d", &busnumb);
    if (list_search_number(&n, busnumb) == NULL )
        puts("Нет автобуса с таким номером!");
    return;
    p = *(list_search_number(&n, busnumb));
    p->is_in_park = inout;
}
 
void menu (void)
{
    int c = 0;
    char s[80];
    puts( "\n\tМеню:" );
    puts( " 1) Вывод списка." );
    puts( " 2) Список автобусов, находящихся на маршруте." );
    puts( " 3) Список автобусов, находящихся в парке." );
    puts( " 4) Отправить автобус на маршрут" );
    puts( " 5) Отправить автобус в парк" );
    puts( " 6) Выход из меню" );
    for ( ; ; )
    {
        do
        {
            printf ("\nВыберите пункт: ");
            gets(s);
            c = atoi(s);
        }
        while (c <= 0 || c > 6);
        
        switch (c) 
        {
            case 1: list_print(n, 2 );
                    break;
            case 2: list_print(n, OUT );
                    break;
            case 3: list_print(n, IN );
                    break;
            case 4: list_inout(n, IN );
                    break;
            case 5: list_inout(n, OUT );
                    break;
            case 6: exit(0);
        }
    }
}
 
int main(void)
{
    setlocale (LC_ALL, "rus");
    printf ("Лабораторная работа №10\nЧасть 2\nВариант 1\nЗадание:\nСоставить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке.");
    list_add(&n, 1, 2, "Петров И. И." ); // заполнение списка
    list_add(&n, 2, 1, "Иванов М. С." );
    list_add(&n, 3, 1, "Колёскин И. М." );
    list_add(&n, 4, 3, "Сидоров С. С." );
    menu ();
return 0;
}
0
IT_Exp
Эксперт
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
Блог
13.06.2015, 17:34
Ответы с готовыми решениями:

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке.
Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном...

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке
Всем доброго времени суток... у меня к вам огромная просьба....вы не могли бы посмотреть есть ли в...

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке
Прошу помочь с написанием программы. Условие: Составить программу, которая содержит динамическую...

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке
Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном...

1
596 / 418 / 136
Регистрация: 02.10.2008
Сообщений: 1,781
Записей в блоге: 1
13.06.2015, 21:30 2
А не легче избавиться от IN/OUT и организовать 2 списка? (те которые едут и те которые в парке)
0
13.06.2015, 21:30
BasicMan
Эксперт
19315 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
Блог
13.06.2015, 21:30
Помогаю со студенческими работами здесь

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке.
Есть готовая программа, но понять бы, почему не запускается.... Составить программу, которая...

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке
Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном...

Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке
Здравствуйте. Скажите пожалуйста, в чём может быть проблема различных багов в результате выполнения...

Списки. Составить программу, которая содержит динамическую информацию о наличии автобусов в автобусном парке. Исправить ошибку
Помогите исправить ошибки у меня MinGW Developer Studio 2.05 установлен.Я его отсюда скачивал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Блоги программистов
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного суматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­хронный счётчик с управляющим сигналом задержки).
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
Применение компонентов PrimeVue в Vue.js 3 на TypeScript
BasicMan 04.01.2025
Введение в PrimeVue и настройка окружения PrimeVue представляет собой мощную библиотеку компонентов пользовательского интерфейса для Vue. js 3, которая предоставляет разработчикам богатый набор. . .
Как стать Senior developer
cpp_developer 04.01.2025
В современной индустрии разработки программного обеспечения позиция Senior Developer представляет собой не просто следующую ступень карьерной лестницы, а качественно новый уровень профессионального. . .
Что известно о дате выхода Windows 12 и чего от нее ждать
IT_Exp 04.01.2025
В мире технологий постоянно происходят изменения, и операционные системы не являются исключением. Windows 11, выпущенная в октябре 2021 года, принесла множество инноваций и улучшений, но. . .
Что новенького в .NET Core 9
Programming 04.01.2025
Обзор ключевых изменений в . NET Core 9 Платформа . NET Core продолжает активно развиваться, и версия 9 представляет собой значительный шаг вперед в эволюции этой технологии. Новый релиз. . .
Инструкция по установке python3.13.1 в Debian 12
AlexSky-coder 03.01.2025
sudo apt update sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget. . .
Затестил триггеры. архив проекта прилагаю с GOA файлами в настройках архиватора проектов.
Hrethgir 03.01.2025
В этот раз нет закольцованности, потому что от неё только глюки, как я понял, логика не вырезанная. Триггеры очень быстрые если верить измерениям с помощью анализатора от Gowin. Есть ещё регистры,. . .
Python в помощь DevOps
IT_Exp 03.01.2025
Причины использования Python в работе DevOps Python стал неотъемлемой частью мира DevOps, и это не случайно. Этот язык программирования обладает множеством преимуществ, которые делают его. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru