Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 02.06.2009
Сообщений: 17

Картотека бюро обмена квартир

02.06.2009, 23:04. Показов 3075. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. Помогите написать программу на паскале.

Картотека ь бюро обмена квартир организована в виде линейного списка.
Сведения о каждой квартире включают:
количество комнат;
этаж;
площадь:
адрес.
Написать программу, которая обеспечивает:
начальное формирование картотеки;
ввод заявки на обмен;
поиск в картотеке подходящего варианта: при равенстве количества комнат и этажа и различии площадей в пределах 10% соответствующая карточка выводится и удаляется из списка, в противном случае поступившая заявка включ, ется в список;
вывод всего списка.
Программа должна обеспечивать диалог с помощью меню и контроль ошибок при
вводе.

У меня есть какая то программа, но почему то не загружается. Просто мелкнет и все.

Pascal
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
program Project1;
 
uses crt;
 
type PKvartira=^TKvartira;
     TKvartira=record
      Prev,next:PKvartira;
      Kolvo_Komnat,Etaj,Ploshad:integer;
      Adres:string[50];
     end;
var
        FirstItem,CurItem,LastItem:PKvartira;
{Добавляем элемент}
 procedure AddItem;
 begin
   new(curitem);
   with CurItem^ do begin
     Readln(Kolvo_Komnat,Etaj,Ploshad,Adres);
    Prev:=LastItem;
    next:=nil;
    LastItem^.next:=CurItem;
    LastItem:=CurItem;
   end;
 end;
 
{Выводим все на экран}
 procedure WriteItems; var i:PKvartira;
 begin
  i:=FirstItem;      writeln;
  writeln('Kolvo_Komnat,Etaj,Ploshad,Adres');
  while i<>nil do begin
   with i^ do  write(Kolvo_Komnat:10,Etaj:5,Ploshad:9,Adres);
   writeln;
   i:=i^.next;
  end;
 end;
begin
 new(firstitem);
  FirstItem^.Prev:=nil;
  FirstItem^.next:=nil;
  LastItem:=FirstItem;
   Writeln('Kolvo_Komnat,Etaj,Ploshad,Adres');
{Здесь каждый вызов AddItem просит ввода. Ввод элементов можно делать через пробел, после последнего нажать Энтер для красоты}
 
  AddItem;
  AddItem;
 
 
  WriteItems;
  readln;
  { TODO -oUser -cConsole Main : Insert code here }
end.

2. И второй вопрос. Задали написать курсовую на тему Динамические переменные.

Можно ли задание выше вставить в курсовую. Я имею ввиду соответствует ли эта программа к курсовой.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.06.2009, 23:04
Ответы с готовыми решениями:

Картотека в бюро обмена квартир организована как линейный список
Картотека в бюро обмена квартир организована как линейный список. Сведения о каждой квартире содержат: -количество комнат; -этаж; ...

Картотека в бюро обмена
Функции, структуры и бинарные файлы Выполнить задания, приведенные в Учебнике на с. 151 (раздел «Функции и файлы») и на с. 165 (раздел...

Описать картотеку в бюро обмена квартир, которая организована как линейный список
Картотека в бюро обмена квартир организована как линейный список. Сведения о каждой квартире содержат: • количество комнат; • этаж;...

8
 Аватар для diliana
93 / 26 / 1
Регистрация: 19.05.2009
Сообщений: 138
03.06.2009, 02:38
Цитата Сообщение от KobeBryant24 Посмотреть сообщение
{ TODO -oUser -cConsole Main : Insert code here }
1) вы же писали на Delphi, так там и компилируйте, лично у меня получилось,
вот попробуйте

Delphi
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
program Project1;
{$APPTYPE CONSOLE}//метка консольного приложения
uses
  SysUtils;
 
type PKvartira=^TKvartira;
   TKvartira=record
    Prev,next:PKvartira;
    Kolvo_Komnat,Etaj,Ploshad:integer;
    Adres:string[50];
    end;
 
var
FirstItem,CurItem,LastItem:PKvartira;
 
 
{Добавляем элемент}
procedure AddItem;
begin
new(curitem);
with CurItem^ do begin
Readln(Kolvo_Komnat,Etaj,Ploshad,Adres);
Prev:=LastItem;
next:=nil;
LastItem^.next:=CurItem;
LastItem:=CurItem;
end;
end;
 
{Выводим все на экран}
procedure WriteItems; var i:PKvartira;
begin
i:=FirstItem; writeln;
writeln('Kolvo_Komnat,Etaj,Ploshad,Adres');
while i<>nil do begin
with i^ do write(Kolvo_Komnat:10,Etaj:5,Ploshad:9,Adres);
writeln;
i:=i^.next;
end;
end;
begin
new(firstitem);
FirstItem^.Prev:=nil;
FirstItem^.next:=nil;
LastItem:=FirstItem;
Writeln('Kolvo_Komnat,Etaj,Ploshad,Adres');
{Здесь каждый вызов AddItem просит ввода. Ввод элементов можно делать через пробел, после последнего нажать Энтер для красоты}
 
AddItem;
AddItem;
 
 
WriteItems;
readln;
{ TODO -oUser -cConsole Main : Insert code here }
end.
2) я не вижу в вашем коде как вы заполняете информационное поле элемента, который вы собираетесь добавить в список. где ввод?
И вообще где собственно диалоговое меню? Сделайте его.

3) напоследок, самое главное - неправильно организовано описание динамической структуры

надо так, если вам нужен односвязный

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
type 
 
   TKvartira=record
        Kolvo_Komnat,Etaj,Ploshad:integer;
        Adres:string[50];
        end;
   list = ^TList;//.ссылочный тип
    TList=record
        data: TKvartira;
        next: list;
        end;
 
var
   First,Cur:list;//..указатели
0
 Аватар для lexus_ilia
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
03.06.2009, 05:19
Цитата Сообщение от diliana Посмотреть сообщение
вы же писали на Delphi
Разве данный молодой человек сам писал ? А по-моему он спрашивал:
Цитата Сообщение от KobeBryant24 Посмотреть сообщение
Можно ли задание выше вставить в курсовую. Я имею ввиду соответствует ли эта программа к курсовой.
А это говорит о том, что он слабо понимает что происходит в программе.
0
0 / 0 / 0
Регистрация: 02.06.2009
Сообщений: 17
03.06.2009, 10:10  [ТС]
Нет программу я писал не сам. В Delphi пишет, что нет CRT. Как быть? Через TP 7.1 загружается и сразу сбрасывается. Там вроде можно разгледеть надпись Runtime error.
0
 Аватар для diliana
93 / 26 / 1
Регистрация: 19.05.2009
Сообщений: 138
03.06.2009, 12:27
Цитата Сообщение от KobeBryant24 Посмотреть сообщение
Нет программу я писал не сам.
Начните писать сами с самого начала, а я и lexus_ilia, поможем вам.
вот описание списка у вас уже есть

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
type 
 
   TKvartira=record
        Kolvo_Komnat,Etaj,Ploshad:integer;
        Adres:string[50];
        end;
   list = ^TList;//.ссылочный тип
    TList=record
        data: TKvartira;
        next: list;
        end;
 
var
   First,Cur:list;//..указатели


Цитата Сообщение от KobeBryant24 Посмотреть сообщение
В Delphi пишет, что нет CRT
в Delphi нет такого модуля, вместо него пишите SysUtils; и не забудьте добавить
{$APPTYPE CONSOLE} - это метка консольного приложения в этой среде
0
0 / 0 / 0
Регистрация: 02.06.2009
Сообщений: 17
03.06.2009, 13:20  [ТС]
Цитата Сообщение от diliana Посмотреть сообщение
в Delphi нет такого модуля, вместо него пишите SysUtils; и не забудьте добавить
А Graph есть?
0
 Аватар для diliana
93 / 26 / 1
Регистрация: 19.05.2009
Сообщений: 138
03.06.2009, 13:24
Цитата Сообщение от KobeBryant24 Посмотреть сообщение
А Graph есть?
нет
0
0 / 0 / 0
Регистрация: 02.06.2009
Сообщений: 17
03.06.2009, 13:28  [ТС]
Цитата Сообщение от diliana Посмотреть сообщение
Начните писать сами с самого начала, а я и lexus_ilia, поможем вам.
вот описание списка у вас уже есть
Не поймите неправильно. Хочу написать сам, но просто времени уже мало. Подскажите что нужно почитать, чтобы побыстрее доходило как это делать.
0
 Аватар для diliana
93 / 26 / 1
Регистрация: 19.05.2009
Сообщений: 138
03.06.2009, 13:33
Цитата Сообщение от KobeBryant24 Посмотреть сообщение
Подскажите что нужно почитать, чтобы побыстрее доходило как это делать.
Структуры данных. Динамическая реализация линейных списков
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.06.2009, 13:33
Помогаю со студенческими работами здесь

Программа для обмена квартир
Доброго времени суток. Задание: Написать программу учета заявок на покупку квартир и поиска варианта. Каждая заявка должна содержать...

Написать макрос для двойного обмена квартир
Макрос должен находить заданные запрос в таблице и выводить совпадения.,но у меня не получилось.Еще надо написать макрос для двойного...

Бюро Находок
Проверил,результаты радуют, а как будет на самом деле,как думаете?

Бюро По Трудоустройству
Доброе Время Суток. Люди Добрые Те Кто В Этом Разбирается Помогите Пожалуйста Выполнить Это Задание. Прямая Ссылка На Скриншот С...

Модель техлогического бюро
Здравствуйте, в GPSS особо не разобрался, но что-то написал. Заранее спасибо за помощь В офисе техлогического бюро расположена спец...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru