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

работа с файоами таблицами и со списками - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Builder Как считать строчки из Мемо http://www.cyberforum.ru/cpp-beginners/thread41253.html
Доброго Времени суток, кто-нибудь может подсказать, как считать строчки из мемо (это цифры). Они нужны мне как числа для дальнейших вычислений. Вот кусочек программы double x,y,z; { x=StrToFloat(Edit5->Text); y=StrToFloat(Edit6->Text); z=StrToFloat(Edit7->Text);
C++ Вычисление корня нелинейного уравнения методом Золотого сечения. Всем вечер добрый, нужен алгоритм поиска корня нелинейного уравнения методом Золотого сечения. Никто с подобным не сталкивался? У самого ничего не получается, уже незнаю чего "нашаманить" такого что бы корень находился... Добавлено через 6 минут 13 секунд int g; g=0; // количество интераций double t, y1, y2, y; t = (1.+sqrt(5.))*0.5; double a, b, x0, x1, x2, x; a =... http://www.cyberforum.ru/cpp-beginners/thread41245.html
C++ Пишем свой интерпретатор языка BASIC
***************** Благодаря форуму и Evg в частности интерпретатор развивается, потихоньку превращаясь в простенький интерпретатор QBASIC. Некоторые из самых старых версий сохранились в теме и ссылки на них будут добавлены в это сообщение,а также ссылки на другие темы,связанные с этой. Репозиторий с проектом находится тут, там же есть возможность в браузере посмотреть историю ревизий...
C++ Меню и список
Здравствуйте форумчане. Помоги пожалуйста в следующем вопросе: У меня есть 2связный список, написано меню. Но в моменте когда написано make a list и delete custom необходимо чтобы выводились: Введите элемент и номер. вот сам код: #ifndef __list_h #define __list_h #include <iostream>
C++ Здравствуйте! Не могу поместить class в один файл с программой. file.hpp http://www.cyberforum.ru/cpp-beginners/thread41186.html
#include "Cat.hpp" // здесь классы "2)" Cat::Cat(int initialAge) { itsAge = initialAge; } Cat::~Cat() {
C++ Массивы строк Привет всем! Задан массив строк. Как узнать который символ встечаетса найбольшое количество раз в етом массиве? подробнее

Показать сообщение отдельно
salvafion
10 / 10 / 1
Регистрация: 16.06.2009
Сообщений: 193
21.06.2009, 11:45     работа с файоами таблицами и со списками
нужно вместо этой строчки
strcpy(table_reis[j].viezd_data[i]->data_viezda,tmp);
написать код для того чтобы была не таблица а односвязный список.. причем каждому table_reis[j] должен соответсвовать список..
как это осуществить ?
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
int Put_Reis(FILE *f_reis, MAP *new_marsh,char*tek_data)
{
   int i, j,  reis_count,reis_max,chislo_int,god_int,mesyac_int;
   char chislo[3], god[3],mesyac[3], tmp[15];
   I_REIS table_reis[REIS_SZ];
 
   rewind(f_reis);
   fread(&reis_count,sizeof(int),1,f_reis);
   fread(&reis_max,sizeof(int),1,f_reis);
   if(reis_count==reis_max) return 1;//Если файл переполнен
   fread(table_reis,sizeof(table_reis),1,f_reis);//Загрузка в память таблицы из базы данных
 
   //Поиск места для вставки и добавление нового элемента
   j=0;
   while(j<reis_count && strcmp(new_marsh->name_marsh[0],table_reis[j].name_marsh[0])>0) j++;
   while(j<reis_count && strcmp(new_marsh->name_marsh[1],table_reis[j].name_marsh[1])>0) j++;
   if(reis_count!=0 || strcmp(new_marsh->name_marsh[0],table_reis[reis_count-1].name_marsh[0])>0)
   {
      for(i=reis_count;i>j;i--)table_reis[i]=table_reis[i-1];
   }
   reis_count++;
 
//Запись информации в файл
   table_reis[j].num=new_marsh->n_marsh;
   table_reis[j].price=new_marsh->price;
   table_reis[j].period=new_marsh->period;
//   table_reis[j].pos=EOF;
 
   strcpy(table_reis[j].vr_viezda,new_marsh->vr_viezda);
   strcpy(table_reis[j].name_marsh[0],new_marsh->name_marsh[0]);
   strcpy(table_reis[j].name_marsh[1],new_marsh->name_marsh[1]);
   table_reis[j].k_mest=new_marsh->k_mest;
   table_reis[j].time=new_marsh->time;
   table_reis[j].period=new_marsh->period;
   strcpy(table_reis[j].dat_update,tek_data);
//generirovanie dat
 strncpy(god,&tek_data[6],2); god[2]='\0';
 strncpy(mesyac,&tek_data[3],2); mesyac[2]='\0';
 strncpy(chislo,tek_data,2); chislo[2]='\0';
 god_int=atoi(god);//perevodim is char v int
 mesyac_int=atoi(mesyac);
 chislo_int=atoi(chislo);
 i=0;
 
 while(i!=REIS_SZ)
   {
 
    if(chislo_int>=31) {mesyac_int++;chislo_int=1;}
    if(mesyac_int>=13){god_int++;mesyac_int=1;}
    if(new_marsh->period==0)
      {
       itoa(chislo_int,chislo,10);//perevodim is int v char
       itoa(mesyac_int,mesyac,10);
       itoa(god_int,god,10);
       if(chislo_int<10) {strcpy(tmp,"0"); strcat(tmp,chislo);}
       else strcpy(tmp,chislo);
       strcat(tmp,".");
       if(mesyac_int<10) strcat(tmp,"0");
       strcat(tmp,mesyac);
       strcat(tmp,".");
       if(god_int<10) strcat(tmp,"0");
       strcat(tmp,god);
       strcat(tmp," ");
       strcat(tmp,new_marsh->vr_viezda);
       strcpy(table_reis[j].viezd_data[i]->data_viezda,tmp);
       i++;
       chislo_int++;
       continue;
      }
    if(new_marsh->period==1)
      {
       if(chislo_int%2==0) {chislo_int++; continue; }
       itoa(chislo_int,chislo,10);
       itoa(mesyac_int,mesyac,10);
       itoa(god_int,god,10);
       if(chislo_int<10) {strcpy(tmp,"0");strcat(tmp,chislo);}
       else strcpy(tmp,chislo);
       strcat(tmp,".");
       if(mesyac_int<10) strcat(tmp,"0");
       strcat(tmp,mesyac);
       strcat(tmp,".");
       if(god_int<10) strcat(tmp,"0");
       strcat(tmp,god);
       strcat(tmp," ");
       strcat(tmp,new_marsh->vr_viezda);
       strcpy(table_reis[j].viezd_data[i]->data_viezda,tmp);
       i++;
       chislo_int++;
       continue;
      }
    if(new_marsh->period==2)
      {
       if(chislo_int%2!=0) {chislo_int++;continue;}
       itoa(chislo_int,chislo,10);
       itoa(mesyac_int,mesyac,10);
       itoa(god_int,god,10);
       if(chislo_int<10) {strcpy(tmp,"0");strcat(tmp,chislo);}
       else strcpy(tmp,chislo);
       strcat(tmp,".");
       if(mesyac_int<10) strcat(tmp,"0");
       strcat(tmp,mesyac);
       strcat(tmp,".");
       if(god_int<10) strcat(tmp,"0");
       strcat(tmp,god);
       strcat(tmp," ");
       strcat(tmp,new_marsh->vr_viezda);
       strcpy(table_reis[j].viezd_data[i]->data_viezda,tmp);
       i++;
       chislo_int++;
       continue;
      }
   }
 
 
   rewind(f_reis);
   fwrite(&reis_count,sizeof(int),1,f_reis);
   fwrite(&reis_max,sizeof(int),1,f_reis);
   fwrite(table_reis,sizeof(table_reis),1,f_reis);
   return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru