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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
azat20
0 / 0 / 0
Регистрация: 19.02.2009
Сообщений: 4
#1

Задание было, написать БД по билетам вокзала - C++

21.02.2009, 16:11. Просмотров 501. Ответов 3
Метки нет (Все метки)

Добрый день! Прошу совета! Задание было, написать БД по билетам вокзала. Не работает процедура покупки билета. Т.е. необходимо чтобы значение Freeplace в записи уменьшилось на 1. А потом посмотреть это, через вызов процедуры Output(cfPtr). Посмотрите пожалуйста, код. Сейчас ничего не отображается после покупки билета, такое чувство, что срабатывает
Код
if(Train.Nomer==0) break;
Всем заранее спасибо за ответы!

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
struct Ticket{  
   int Nomer;  
   char Nameoftrain[10];  
   char Endstation[10];  
   int Freeplace;  
   float Price;  
   char Servicetype[10];  
   float Starttime;  
   float Goingtime;  
   };  
  
   int Output(FILE*fPtr)  
  { struct Ticket Train={0,"","",0,0.0,"",0.0,0.0};  
     int i=0;  
     printf("%-6s%-13s%-13s%-10s%-6s%-13s%-10s%-5s\n",  
            "Nomer","Nameoftrain","Endstation","Freeplace","Pr  ice","Servicetype","Starttime","Goingtime");  
     while(Train.Nomer!=-1) {  
         fseek(fPtr,(i++)*sizeof(struct Ticket),SEEK_SET);  
         fread(&Train,sizeof(struct Ticket),1,fPtr);  
         if(Train.Nomer==0) break;  
         if(Train.Nomer!=-1)  
         printf("%-6d%-13s%-13s%-10d%-6.1f%-13s%-10.2f%-5.2f\n", Train.Nomer,  
            Train.Nameoftrain,Train.Endstation,Train.Freeplace  ,Train.Price,  
             Train.Servicetype,Train.Starttime,Train.Goingtime)  ;  
    }  
    return i;  
  }  
 
void Buying(FILE*fPtr)  
{  
 int i=0;  
int j=-1;  
 char Nameoftrain[10];  
 struct Ticket Train={0,"","",0,0.0,"",0.0,0.0};  
 printf("Input Trains Name:");  
 scanf("%s",Nameoftrain);  
 while(Train.Nomer!=-1) {  
     fseek(fPtr,(i)*sizeof(struct Ticket),SEEK_SET);  
      fread(&Train,sizeof(struct Ticket),1,fPtr);  
       if(Train.Nomer!=-1)  
      if(strcmp(Train.Nameoftrain,Nameoftrain)==0)  
      j=i;  
         i++;  
 }  
 if(j!=-1)  
 fseek(fPtr,(j)*sizeof(struct Ticket),SEEK_SET);  
 Train.Freeplace=Train.Freeplace-1;  
 fwrite(&Train,(j)*sizeof(struct Ticket),1,fPtr);  
 }
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2009, 16:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задание было, написать БД по билетам вокзала (C++):

Графы, расположить людей по билетам, кратчайший путь - C++
Здравствуйте. На соревнованиях codeforces я часто замечаю, что больше половины задач на тему графов, где нужно находить кратчайший путь или...

У меня было задание создать класс для хэширования в строку - C#
вот моя реализация: using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Задачи по экзаменационным билетам - Pascal
задачи

К каким билетам относятся ответы - Pascal
Вобщем вроде два вопроса с ответами правильно сопоставил(2,3), но тогда что отвечать на билет №1 не знаю Вопросы: 1. Строковые...

Тест по билетам: Организация приложения и файлов (iOS, Android) - C++ Builder FireMonkey
Приложения для мобильного устройства делаеться в RadStudio Builder C++(FireMonkey) по типу теста по билетам. Имеется кипа вопросов на двух...

Приложение для вокзала - VBA
Приветствую. Такая задача стоит. нужно сделать приложение для вокзала (продажа билетов). Чтобы была возможность продажи, бронировании,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Sergei
1432 / 699 / 41
Регистрация: 22.04.2008
Сообщений: 1,608
21.02.2009, 16:31 #2
А вы не пробовали выводить на экран все значения.
0
azat20
0 / 0 / 0
Регистрация: 19.02.2009
Сообщений: 4
21.02.2009, 17:00  [ТС] #3
ну сперва до уменьшения,нормально все выводит, а потом после этого, только шапка, значений нету
0
azat20
0 / 0 / 0
Регистрация: 19.02.2009
Сообщений: 4
22.02.2009, 22:02  [ТС] #4
Вопрос закрыт! Надо было добавить еще fseek(fPtr,(j)*sizeof(struct Ticket),SEEK_SET); перед fwrite(&Train,(j)*sizeof(struct Ticket),1,fPtr);
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2009, 22:02
Привет! Вот еще темы с ответами:

Разработать базу данных ЖД вокзала - Delphi БД
база данных ЖД вокзала на Delphi 7. 5 таблиц и 5 связей. SQL. спасибо заранее!

Форма заказа билета в БД ж/д вокзала - Delphi БД
Здравствуйте, возникли вопросы с построением кода заказа билета в бд жд вокзала. Данные берутся из двух таблиц. Пользователь заполняет...

Не знаю, куда можно было написать задачу по матведу.=( - Физика
Поршневые пальцы диаметром 30 мм и длиной 150 мм должны иметь по условиям работы вязкую сердцевину и твердую поверхность, хорошо...

Билетная касса железнодорожного вокзала. Моделирование СМО - GPSS
Помогите разобраться с логикой. Условие задачи: "На железнодорожном вокзале имеется 3 кассы: 2 обычные и 1 для военных. Пассажиры...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
22.02.2009, 22:02
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru