База Данных "Детская библиотека", поиск книги по изданию 1995 года |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
База Данных "Детская библиотека", поиск книги по изданию 1995 года |
flashg |
Сообщение
#1
|
Гость |
Помогите усовешенствовать и разобратся - Задание в паскале.
Мне было задана куча заданий - и вот решил тут одно заданице набить. Посмотрел пример и набил - и получается. Но хочу усовершенствовать работу программы. Вот задание: РАЗРАБОТАТЬ БАЗУ ДАННЫХ "ДЕТСКАЯ БИБЛИОТЕКА" (ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО, АВТОРА КНИГИ, НАЗВАНИЕ КНИГИ, ГОРОД И ИЗДАТЕЛЬСТВО, ГОД ВЫПУСКА). ВЫВЕСТИ НА ЭКРАН ДАННЫЕ О КНИГАХ, ВЫПУЩЕННЫХ В 1995 ГОДУ. ====================================== ------------------------------------------- программа работает но вот что мне не нравится - фантазировать имена фаимли отчества итд для N количества персон - это немного нудно и я подумал а почему бы не сделать так создать уже файл P1.pas вбить туда эти данные (вот тока сразу возникает вопрос каким оброзом) запустив уже удавшеюся программуу и минутку думая на соченяв имена прогнав её выполнев все действия я уже получил этот файл мне тока остаётся переписать программу чтобы уже содержимое файла считать) Прикрепленные файлы 12new.PAS ( 1.57 килобайт ) Кол-во скачиваний: 279 |
klem4 |
Сообщение
#2
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Не очень я понял что ты хочешь, помойму тебе нужно просто забить все данные константами, чтобы в ходе выполнения ничего не вводить, я прав ? :
const Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
flashg |
Сообщение
#3
|
Гость |
да я прав но чтобы во время уже выполнения (RUN) программа показала что она отсеяла васю, идругих года 94 а высветила Петю 1995года
т.е. чтобы показала что она фильтрует Т.е. чтобы в процессе ран было указано что имеются персоны отобразила сперва их данные 1 2 3 4 а потом указала что толко 2 и 3 к примеру 1995 года. |
Guest |
Сообщение
#4
|
Гость |
Извени но я не пойму что с кусками этими делать куда подставить - заменить полностью на свой вариант ?
я тут внеск кое какие изменения иначе всё бы нормально бы да вот тока эта гадина считывает тока (полностью) 1ую строку стобы там нибыло набито а остальные не трогает |
Guest |
Сообщение
#5
|
Гость |
чёто не получилось сделать вложение
12n-2.pas Код Program pr_12; uses crt; type person=record sname,name,otc,avtr,nb,pub,year:string[14]; end; var rbook:array[1..20] of person; f1,f2:text; i,n:integer; st1:string; BEGIN clrscr; Assign(f1,'p1.pas'); reset(f1); ReadLn(f1,rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); Writeln (rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); Assign(f2,'p2.pas'); rewrite(f2); st1:='1995'; Writeln('Ф И О Автар книги Название книги Издательство Год выпуска'); Writeln(f2,'Ф И О Автар книги Название книги Издательство Год выпуска'); for i:=1 to n do begin With rbook[i] do if year=st1 then begin Writeln(sname:10,name:10,otc:10,avtr:10,nb:10,pub:10,year:10); Writeln(f2,sname:10,name:10,otc:10,avtr:10,nb:10,pub:10,year:10); end; end;close(f1); Close(f2);readln; END. --------------------- файл к считыванию p1.pas ------------ snameАзимов nameАйзек otc1 avtr2 nb3 pub1994 year1994 snameДик nameФилип otcК avtr2 nb3 pub1995 year1995 snameШекли nameРоберт otcК avtr2 nb3 pub1995 year1995 Сколько можно говорить? Тегами пользоваться будешь, или "не царское это дело?" И, кстати, зарегистрируйся, и сможешь свои посты редактировать, а то десятки постов, а информации - кот наплакал... Сообщение отредактировано: volvo - |
Malice |
Сообщение
#6
|
Профи Группа: Пользователи Сообщений: 705 Пол: Мужской Репутация: 20 |
Цитата(Guest @ 4.08.05 12:28) чёто не получилось сделать вложение Не знай, что ты имел ввиду, но вот это: Код ReadLn(f1,rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); Writeln (rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); надо бы в цикле делать, на всякий случай.. |
volvo |
Сообщение
#7
|
Гость |
Чтобы не было проблем со считыванием строчных данных, располагай их вот так (Названия полей заносить не нужно, только саму информацию !!!):
Цитата Азимов Айзек 1 2 3 1994 1994 Дик Филип К 2 3 1995 1995 Шекли Роберт К 2 3 1995 1995 |
flashg |
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Репутация: 0 |
Цитата(Malice @ 4.08.05 16:44) Не знай, что ты имел ввиду, но вот это: Код ReadLn(f1,rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); Writeln (rbook[i].sname,rbook[i].name,rbook[i].otc,rbook[i].avtr, rbook[i].nb,rbook[i].pub,rbook[i].year); надо бы в цикле делать, на всякий случай.. Цитата(volvo @ 4.08.05 16:44) Чтобы не было проблем со считыванием строчных данных, располагай их вот так (Названия полей заносить не нужно, только саму информацию !!!): Ваши предложенные варианты не работают. Во гляньте. Прикрепленные файлы 12new2.zip ( 857 байт ) Кол-во скачиваний: 206 |
volvo |
Сообщение
#9
|
Гость |
Правда? А если чуть-чуть подумать, прежде чем делать что-то?
Тебе же сказали: "в цикле" !!! Где ты у себя цикл видел? Я почему-то его не нашел... Это первое... Второе: for i:=1 to n do beginКруто... А где ты присвоил какое-нибудь значение в N? Я опять что-то пропустил? А про оформление программы ты никогда ничего не слышал? Постороннему в твоей программе... как бы это сказать... Не совсем просто разобраться. А ведь правильное оформление программы ОЧЕНЬ помогает в поиске ошибок... Кстати, вот рабочий вариант: Прикрепленные файлы 12new2.rar ( 846 байт ) Кол-во скачиваний: 211 |
flashg |
Сообщение
#10
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Репутация: 0 |
Спасибо :molitva:
а что значит команда EOF |
klem4 |
Сообщение
#11
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
Функция, возвращает true , если достигнут конец файла.
EndOfFile Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Текстовая версия | 23.12.2024 21:09 |