Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];

Вниз

Mассивы   Найти похожие ветки 

 
Zhenka   (2003-08-08 09:37) [0]

Господа подскажите к5аким образом можно перейти от таблички
типа :
6
27946.417969 30403.597656
27951.863281 30400.990234
27953.966797 30401.794922
27954.777344 30403.845703
27953.695313 30405.753906
27950.914063 30406.228516
27948.820313 30405.753906
27946.417969 30403.597656

к такому виду?

6 27946.417969 30403.597656
6 27951.863281 30400.990234
6 27953.966797 30401.794922
6 27954.777344 30403.845703
6 27953.695313 30405.753906
6 27950.914063 30406.228516
6 27948.820313 30405.753906
6 27946.417969 30403.597656
СПАСИБО!!


 
Viktor Kushnir   (2003-08-08 09:44) [1]

Копированием


 
Zhenka   (2003-08-08 09:47) [2]

kаким, подскажите алгоритм, это всё находится в файле, и надо перейти от фиг1. к фиг2.


 
Vlad Oshin   (2003-08-08 09:51) [3]

readln(f1,s);
s:="6 "+s;
wrteln(f2,s);


 
sniknik   (2003-08-08 09:55) [4]

select 6 as Field1, Field2, Field3 from TableName

если значение 6 тоже в таблице то предварительно прочитать, а из результота первое поле удалить.


 
Zhenka   (2003-08-08 09:56) [5]

хорошо, а если это выглядит так
6
27946.417969 30403.597656
27951.863281 30400.990234
27953.966797 30401.794922
27954.777344 30403.845703
27953.695313 30405.753906
27950.914063 30406.228516
27948.820313 30405.753906
27946.417969 30403.597656
22
22946.417969 30403.597656
27251.863281 30400.990234
27953.966797 30401.794922
27954.777344 30403.845703
27953.695313 30405.753906
27250.914063 30406.228526
27948.820313 30205.753906
27946.417969 30403.597656
11
27946.417969 30403.597656
27951.863281 30400.944234
27953.963797 30401.794922
27954.777344 30403.845703
27953.695313 30405.753906
27950.913363 30406.224316
27948.820313 30405.753906
27946.417969 30403.597656
итд, тогда как поступить?


 
Zhenka   (2003-08-08 09:58) [6]

сникник, я вас что то смутно понимаю, поподробнее. плз


 
sniknik   (2003-08-08 10:00) [7]

а так это текст.

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


 
Zhenka   (2003-08-08 10:06) [8]

нет
6 |
27946.417969 | 30403.597656
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
27948.820313 | 30405.753906
27946.417969 | 30403.597656
два столбца и много строк например так

6 |
27946.417969 | 30403.597656
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
27948.820313 | 30405.753906
27946.417969 | 30403.597656
11 |
27946.417969 | 30403.597656
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
27948.820313 | 30405.753906
27946.417969 | 30403.597656


 
Vlad Oshin   (2003-08-08 10:07) [9]

qwwe:
readln(f1,s);
val(не помню, короче попытка преоюразовать в число s.)
если
ошибка - то это строка типа
27946.417969 ( или как ybnm без гото) qwwe:
readln(f1,s);
val(не помню, короче попытка преоюразовать в число s.)
если
ошибка - то это строка типа
27946.417969 30403.597656
а не типа
11
s1:=s; goto (или как ybnm без гото) qwwe;
тогда
s:=s1+" "+s;
wrteln(f2,s);



 
Zhenka   (2003-08-08 10:17) [10]

Vlad Oshin
чего? как ?


 
Vlad Oshin   (2003-08-08 10:19) [11]

падежи учим?


 
Zhenka   (2003-08-08 10:25) [12]

ладно.
смотри
существует таблица в файле, у нее 2 столбца, и множество строк
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
периодически получ. такая ситуация:
6 |
27946.417969 | 30403.597656
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
27948.820313 | 30405.753906
27946.417969 | 30403.597656
11 |
27946.417969 | 30403.597656
27951.863281 | 30400.990234
27953.966797 | 30401.794922
27954.777344 | 30403.845703
27953.695313 | 30405.753906
27950.914063 | 30406.228516
27948.820313 | 30405.753906
27946.417969 | 30403.597656
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
итд
так вот
начиная с
6 |
и до
11 |
привести к виду

6 27946.417969 30403.597656
6 27951.863281 30400.990234
6 27953.966797 30401.794922
6 27954.777344 30403.845703
6 27953.695313 30405.753906
6 27950.914063 30406.228516
6 27948.820313 30405.753906
6 27946.417969 30403.597656
итд


 
Vlad Oshin   (2003-08-08 10:36) [13]

qwwe:
readln(f1,s);

из S выкинуть |

val(не помню, короче попытка преоюразовать в число s.)
если ошибка
то это строка типа 27946.417969 30403.597656
а не типа 11
( f2,s) qwwe:
readln(f1,s);

из S выкинуть |

val(не помню, короче попытка преоюразовать в число s.)
если ошибка
то это строка типа 27946.417969 30403.597656
а не типа 11
s1:=s; goto qwwe;
иначе
s:=s1+" "+s;
wrteln(f2,s);

Не стоят у меня делфи сейчас, переселяюсь на новую тачку :)


 
Anatoly Podgoretsky   (2003-08-08 11:05) [14]

Огласите все варианты строк сразу, а не по частям отрубайте хвост у собаки. Или дать четкую постановку задачи


 
Zhenka   (2003-08-09 13:12) [15]

вот например табличка
так она формируется

1
25031.750000 32002.453125
25031.750000 31996.205078
25032.343750 31988.470703
25034.128906 31978.060547
25122.107422 31974.490234
25119.652344 31975.605469
25116.677734 31975.457031
25112.958984 31974.267578
25111.472656 31974.341797
25110.580078 31975.679688
25124.337891 31999.441406
25124.115234 32001.449219
25124.041016 32001.671875
2
25051.994141 31726.025391
25054.875000 31725.724609
25057.035156 31725.125000
25058.474609 31724.044922
25073.357422 31717.083984
25077.076172 31716.962891
25081.277344 31773.310547
25080.197266 31781.111328
25079.957031 31787.351563
25079.837891 31791.552734
3
25081.757813 31798.873047
25082.718750 31803.193359
25085.478516 31809.494141
25091.839844 31816.576172
25084.638672 31819.095703
25081.876953 31818.255859
25048.273438 31872.802734
25045.392578 31874.962891
25043.232422 31876.763672
25038.792969 31881.083984
25027.990234 31887.144531
25018.150391 31896.384766
25016.349609 31903.226563
25016.589844 31907.066406
25018.750000 31911.148438
25021.150391 31913.787109
25027.511719 31917.388672
25037.591797 31921.828125
25044.072266 31923.929688
25054.273438 31925.250000
25062.314453 31923.328125
5
25076.837891 31916.607422
25079.957031 31916.728516
25084.277344 31917.628906
25090.158203 31920.507813
25094.119141 31923.988281
25097.119141 31926.750000
25103.000000 31935.150391
25107.560547 31940.912109
25110.921875 31943.310547
25114.642578 31944.392578
25118.242188 31943.671875
25121.962891 31942.951172
25124.123047 31943.371094
25124.843750 31945.291016
25124.482422 31947.212891
25121.841797 31949.972656
25118.601563 31951.892578
25117.882813 31954.533203
25118.361328 31957.533203
25120.162109 31961.373047
25149.085938 31990.357422
25153.406250 31990.236328
25160.248047 31987.716797
итд.
её надо привести к виду:

1 25031.750000 32002.453125
1 25031.750000 31996.205078
1 25032.343750 31988.470703
1 25034.128906 31978.060547
1 25035.617188 31970.623047
1 25124.337891 31999.441406
1 25124.115234 32001.449219
1 25124.041016 32001.671875
2 25051.994141 31726.025391
2 25054.875000 31725.724609
2 25079.957031 31787.351563
2 25079.837891 31791.552734
2 25103.480469 31828.818359
2 25100.119141 31830.136719
2 25092.919922 31829.777344
2 25091.119141 31828.097656
2 25090.638672 31825.457031
3 25088.597656 31822.335938
3 25084.638672 31819.095703
3 25081.876953 31818.255859
3 25078.037109 31818.376953
3 25074.437500 31820.175781
3 25071.796875 31821.857422
3 25069.275391 31825.337891
3 25066.396484 31831.216797
3 25065.316406 31843.218750
и так далее

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


 
Anatoly Podgoretsky   (2003-08-09 15:22) [16]

Ну я вижу не то что бы целое число, а более характерный признак оно одно!
Но опять же ранее ты приводил другие форматы
11 |
27946.417969 | 30403.597656
Как бы там ни было они близкие. Также неясно насчет первой строки, как быть если там нет одного числа, тогда нечего и подставлять. А ведь просил приведи все форматы или точно опиши задачу.
Есл я точно тебя проинтерпиртировал, протелепатировал, то ты можешь основываться на этом факте одно число или два и любые разделители, делай парсинг строка за строкой и формируй новые строки, работы то всего минут на 10, пусть 30 если человек только сел за Паскаль.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.006 c
3-92033
zzzrrv
2003-08-04 15:41
2003.08.28
Индекс для DBF-файла


14-92208
IceDog
2003-08-10 14:35
2003.08.28
Поздравляю


14-92177
panov
2003-08-08 23:00
2003.08.28
О форумах.


14-92250
Zhenka
2003-08-08 09:37
2003.08.28
Mассивы


3-92076
mikhasenko.anton
2003-08-01 07:23
2003.08.28
ADO. Подскажите пжлста как можно запаковать DBF через ADO?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский