![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
demure |
![]()
Сообщение
#1
|
Гость ![]() |
Пожалуйста! Помогите срочно! Хотя бы наводку какую-нибудь... Вообще без понятия, что тут делать
![]() Программа должна содержать меню и ввод-вывод в окна на экране. Необходимо предусмотреть контроль ошибок пользователя при вводе данных. При разработке программы применить технологию нисходящего проектирования. Логически законченные объекты оформить в виде подпрограммы, все необходимые данные которым передаются через список параметров. Использование глобальных переменных следует избегать. Итак, задание ![]() Предприятие имеет местную телефонную станцию на 20 номеров. Телефонный справочник данного предприятия для каждого номера телефона содержит номер помещения и список служащих, сидящих в данном помещении. Составить программу, которая: - корректирует базу - по номеру помещения выдает номер телефона - по фамилии выдает номер телефона и номер помещения. номер телефона двузначный. |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Цитата ввод-вывод в окна на экране Программа под windows должна быть ? С окнами ? Или что ты имел в виду ? А вообще-то очень пахнет обычной задачей на записи, на форуме решалось достаточно много их ... используй поиск, в какой конкретно части программы возникает проблемма ? -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
demure |
![]()
Сообщение
#3
|
Гость ![]() |
сам не понял про какие окна там говорят. программа на BP 7.0, как в школе
![]() |
klem4 |
![]()
Сообщение
#4
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Хорошо. Про окна забыли
![]() Ты начни делать ... дальше само пойдет, вот увидишь, организуй для начала заполнение базы, запись я бы описал так :
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
demure, ты поиском по форуму пользовался? Скажи мне, чем кардинально твоя программа отличается от "магазина", "ж/д вокзала", "аэропорта", "спортивной команды"? Тем, что ЗА тебя решат ее так, что тебе только сдать останется?
Если не будет ТВОИХ набросков и конкретных вопросов по заданию (вопрос "ничего не получается" не пойдет), тема закрывается... |
demure |
![]()
Сообщение
#6
|
Гость ![]() |
Вот, наконец-то занялся программой.
Сделал заполнение базы. Код такой: Код uses Crt; type TelefStation = Record phone: LongInt; nomer: byte; FIO: string; end; var Book: array[1..20] of TelefStation; Nums,I: byte; code: integer; c: char; quit: boolean; {dobavlenie novoi zapisi} procedure New_Item; var Kom:byte; F:String; Tl:LongInt; begin Clrscr; Inc(Nums); if Nums>20 then begin write('maksimalnoe kolichestvo zapisei!'); exit; end; begin writeln('Zapis N:',Nums); writeln; writeln('Vvedite Nomer telef:'); readln(Tl); writeln('Vvedite Nomer pomesheniya:'); readln(Kom); writeln('Vvedite FIO'); readln(F); writeln; with Book[Nums] do begin FIO:=F; nomer:=Kom; phone:=Tl; end; Write('Novaya zapis uspeshno dobavlena!'); end;end; далее по заданию - корректировка базы. т.е., как объяснила (мало что понимающая, к сожалению) преподша, нужно, чтобы программа могла редактировать любую запись (удалять, изменять и пр.) с удалением, я думаю не сложно... а вот с изменением. не совсем понимаю, как делать... нужно еще искать наверное, или, может поможете? ![]() |
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Цитата а вот с изменением. не совсем понимаю, как делать... Как раз, с изменением дело тоже обстоит просто. Тебе нужно выбрать (а может, это указано у тебя в задании где-нибудь), ты хочешь работать напрямую с файлом, или сначала все данные читать в массив, обрабатывать их, и перезаписывать файл? Я бы советовал второй вариант. Тогда алгоритм изменения записи такой: Читаешь содержимое файла в массив, по нужному тебе полю ищешь запись, которую надо поменять, и, собственно, меняешь: WhatToFind := '...'; { Кого будем искать, эту строку можно и вводить с клавиатуры} |
Guest |
![]()
Сообщение
#8
|
Гость ![]() |
Цитата да дело в том, что программа не должна использовать файлы. мы вообще работу с файлами еще не изучали ![]() в принципе можно и с ними сделать, ведь удобнее, ясное дело, училка все равно не допрет в чем дело, но мне это труднее... |
demure |
![]()
Сообщение
#9
|
Гость ![]() |
Задание дано в таком же виде, как я написал - больше ничего..
базу всю, видимо, нужно вводить вручную каждый раз)) да, контроль ошибок... куда ткнуть проверку на то, двузначный ли номер я тоже не совсем понимаю |
volvo |
![]()
Сообщение
#10
|
Гость ![]() |
Цитата куда ткнуть проверку на то, двузначный ли номер я тоже не совсем понимаю Сразу после ввода номера и проверяй его на двухзначность: With Book[i] Do Begin |
Guest |
![]()
Сообщение
#11
|
Гость ![]() |
так, это понятно.
ну так что там с корректировкой? ![]() |
volvo |
![]()
Сообщение
#12
|
Гость ![]() |
![]() |
![]() ![]() |
![]() |
Текстовая версия | 9.08.2025 19:35 |