1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
| Negor |
26.10.2006 23:52
Сообщение
#1
|
|
Гость |
Народ, дело такое:есть массив записей Sessija типа TSessija. И у него есть пускай пять полей. Так вот вопрос такой: как сделать так чтобы можно было этот массив записей записать в файл одной программой, а считывать данные и работать с ними в другой? И ещё, я выбрал для переменной файла тип File of TSessija, это правильно или не очень? Вобщем надеюсь на вашу поддержку.... буду благодарен за теорию подкреплённую участками кода
|
| мисс_граффити |
27.10.2006 0:00
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
не совсем поняла, в чем проблема с
Цитата как сделать так чтобы можно было этот массив записей записать в файл одной программой, а считывать данные и работать с ними в другой? . Оно само так получается... Записываешь и закрываешь файл, а потом из новой открываешь. Или тебе нужно, чтобы это программы работали одновременно?Цитата И ещё, я выбрал для переменной файла тип File of TSessija, это правильно или не очень? Вполне логичный выбор. Я бы тоже так поступила. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Negor |
27.10.2006 0:23
Сообщение
#3
|
|
Гость |
Т. е. если я правильно понял, то после того как файл будет создан, и данные внесены, то при запросе можно будет написать чтонитьь типа Readln(log_f,Sessija.index) или как?
|
| volvo |
27.10.2006 0:30
Сообщение
#4
|
|
Гость |
Цитата при запросе можно будет написать чтонитьь типа Readln(log_f,Sessija.index) или как? Не совсем... Придется переместиться на нужную позицию в файле, и только потом читать:Seek(f, index); |
| мисс_граффити |
27.10.2006 0:31
Сообщение
#5
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
опоздала
Сообщение отредактировано: мисс_граффити - 27.10.2006 0:33 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Гость |
27.10.2006 22:24
Сообщение
#6
|
|
Гость |
Итак на данный момент есть след. код
Код program zad_1; uses crt; type TSessija=record index:byte; familija:string; ekzamen:array[1..5] of byte; zachet:array [1..5] of char; end; var sessija:array[1..25] of TSessija; Log_f:file of TSessija; i,j:byte; begin clrscr; assign(log_f,'sessija.dat'); rewrite(log_f); for i:=1 to 25 do with sessija[i] do begin write('----zapis #',i,'-----'); write('Vvedite index gruppi-');readln(index); write('Vvedite familiju studenta-');readln(familija); for j:=1 to 5 do begin write('Vvedite otsenku po ',j,'-omu za4etu ');readln(ekzamen[j]); write('Vvedite rezultat ',j,'-go za4eta [Z/N] ');readln(zachet[j]); end; end; for i:=1 to 25 do writeln(log_f,sessija[i]); end. Сдесь пока только запись значений в файл. Но имено при записи в файл выдаётся ошибка, что файл-инвалид |
| volvo |
27.10.2006 22:28
Сообщение
#7
|
|
Гость |
Цитата Но имено при записи в файл выдаётся ошибка, что файл-инвалид Я ж написал, что ...Ln не использовать... Попробуй write(log_f,sessija[i]); |
| Гость |
27.10.2006 22:46
Сообщение
#8
|
|
Гость |
Цитата(volvo @ 27.10.2006 22:28) Я ж написал, что ...Ln не использовать... Попробуй write(log_f,sessija[i]); сПАСИбО, помогло! Volvo, ТЫ святой!!! |
| Гость |
29.10.2006 7:17
Сообщение
#9
|
|
Гость |
Написание программы подходит к своему логическому завершению...))) Осталось только организовать вывод информации на принтер. В справке я нашёл модуль Printer, и подключил его. Но после запуска вылетела ошибка что переменная Lst не открыта для вывода, хотя в справке написано что никакой инициализации для переменной не требуется.... Need help
|
| klem4 |
29.10.2006 9:31
Сообщение
#10
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Что-то очень странно, покажи свой код ...
ps Lst инициализируется в испольняемой части модуля, ничего больше делать с ней не надо ... Unit Printer; uses Printer; -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
| мисс_граффити |
29.10.2006 9:41
Сообщение
#11
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
а принтер вообще есть? физически...
и куда он подключен? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
| Гость |
30.10.2006 1:01
Сообщение
#12
|
|
Гость |
а принтер вообще есть? физически... и куда он подключен? Пробовал на старом принтере СМ(какоето число) ещё советский принтер переделанный, но не получилось. Подкл. к LPT1... Тока шо в одной книге (неважно какой но учебник по Паскалю серьёзный это я вам точно говорю) вобщем там было сказано чтото типа Цитата Для распечатки некоего текста в Паскале, нужно присвоить строку в переменную, и эту переменную записать в "prn". Пример: Код var a:string; ... a:="Text"; writeln(a,'prn');<--Типа распечатать Вобщем кажется бред, а может я что-то не так понял или запомнил, но может кто-нить что-нить подскажет. C принтером шото не клеится никак.... |
![]() ![]() |
|
Текстовая версия | 8.12.2025 22:13 |