Автор работы: Пользователь скрыл имя, 19 Декабря 2011 в 19:27, курсовая работа
Начальное формирование данных обо всех продаваемых квартирах в виде списка. Описание классов, находящихся в составе программы. Описание алгоритмов для каждой задачи относящиейся к данному варианту (словесное и в виде блок схемы).
Формулировка задания……………………………………………………………………………………………..…3
ИТ в риэлторском бизнесе…………………………………………………………………………….………..…...4
Описание классов…………………………………………………………………………………………………..….…8
Программная реализация классов …………………………………………………………………………….12
Описание алгоритмов……………………………………………………………………………...……………..….19
Программная реализация задач………..……………………………………………………………………….21
Демонстрационная программа………………………………………………………………………………....24
Список литературы………………………………………………………………………………………………………
void Print(void);
int GetRooms(void);
int GetFloor(void);
float GetArea(void);
char* GetAdress(void);
private:
// Количество комнат
int rooms;
// Этаж
int floor;
// Площадь квартиры
float area;
// Адрес
char* address;
// Указатель на следующий элемент
flat* Next;
};
Файл: FlatList.h – класс списка квартир
#pragma once
#include "flat.h"
class FlatList
{
public:
FlatList(void); /
~FlatList(void);
private:
flat* Start; // Указатель на начало списка
flat* current; // Текущий элемент
int number; // Количество элементов в списке
public:
FlatList(int n1);
FlatList* operator++(int a); // Добавление нового элемента в начало списка
void Print(void); // Печать списка
flat* Find(int r1, int f1, float a1); // Поиск квартиры по заданным параметрам
void Print(flat* a1);
};
Файл
– request.h – класс
описания элементов
списка заявок
#pragma once
class request
{
public:
request(void);
~request(void);
request(int rooms_tmp, int floor_tmp, float area_tmp);
void SetNext(request* Next_tmp);
request* GetNext(void);
void SetRooms(int a1);
void SetFloor(int f1);
void SetArea(float a1);
request* Next;
void Print(void);
private:
int rooms;
int floor;
float area;
};
Файл
– RequestList.h – Класс
списка заявок
#pragma once
#include "request.h"
class RequestList
{
public:
RequestList(void);
~RequestList(void);
RequestList* AddNew(int rooms_tmp, int floor_tmp, float area_tmp);
void Print(void);
private:
int number;
request* current;
request* Start;
};
Файл – flat.cpp – Полное описание
#include "flat.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
flat::flat(void){ //Конструктор по умолчанию
rooms=0;
floor=0;
area=0;
address=NULL;
Next=NULL;
}
flat::~flat(void) //Деструктор по умолчанию
{
}
flat::flat(int r1, int f1, float a1, char* ad) // Конструктор с параметрами
{
rooms=r1;
floor=f1;
area=a1;
address=new char[strlen(ad)];
strcpy(address,ad);
}
flat::flat(flat& A1) //Конструктор копирования
{
rooms=A1.rooms;
floor=A1.floor;
area=A1.area;
address=new char[strlen(A1.address)];
strcpy(address,A1.
}
void flat::SetNext(flat* Next1) //Назначение адреса следующего элемента
{
Next=Next1;
}
flat* flat::GetNext(void) //Извлечение адреса следующего элемента
{
return Next;
}
void flat::Input(void) //Ввод с клавиатуры
{
char buf[128];
printf("\n______________
printf("\nEnter the number of rooms: ");
scanf("%d",&rooms);
printf("\nEnter the number of floor: ");
scanf("%d",&floor);
printf("\nEnter the area of this appartment: ");
scanf("%f",&area);
printf("\nEnter the street, where appartment situated: " );
scanf("%s",buf);
printf("\n______________
address=new char[strlen(buf)];
strcpy(address,buf);
}
void flat::Print(void) //Печать данных элемента
{
printf("\n______________
printf("\nRooms: %d\nFloor: %d\nArea: %.2f\nAddres: %s", rooms, floor, area, address );
printf("\n______________
}
int flat::GetRooms(void) // Извлечение переменной rooms
{
return rooms;
}
int flat::GetFloor(void) // Извлечение переменной floor
{
return floor;
}
float flat::GetArea(void) // Извлечение переменной area
{
return area;
}
char* flat::GetAdress(void) // Извлечение переменной address
{
return address;
}
Файл
FlatList.cpp – полное
описнаие класса списка
квартир
#include "FlatList.h"
#include "flat.h"
#include "request.h"
#include "RequestList.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
FlatList::FlatList(void)
{
current=NULL;
Start=NULL;
number=0;
}
FlatList::~FlatList(void)
{
}
FlatList::FlatList(int n1)
{
flat* current;
flat* temp;
number=n1;
for(int i=0;i<number;i++)
{
temp=new flat;
temp->Input(
if(i==
else
}
}
// Добавление нового элемента в начало списка
FlatList* FlatList::operator++(int a)
{
flat* temp; //Новый элемент типа PersonElem
temp=new flat; //Выделение памяти
temp->Input(); //Ввод данных
temp->SetNext(Start); //
Start=temp; //
number++; //Счётчик количества элементов
return this;
}
// Печать списка
void FlatList::Print(void)
{
flat*
current;
for(current=Start;
{
}
}
// Поиск квартиры по заданным параметрам
flat* FlatList::Find(int r1, int f1, float a1)
{
flat* temp;
int r,f;
float a;
temp=Start;
//Ниже реализован цикл, проверяющий каждый элемент списка, и возвращающий //указатель на нужный элемент.
//Если элемент с заданными параметрами не найден, то возвращается значение - NULL
for(temp=Start;temp!=
{
r=temp->
f=temp->
a=temp->
if(a1<1.1*a&&a1>0.
{
}
}
return
NULL;
}
//____________________________
void FlatList::Print(flat* a1)
{
flat* current;
current=a1;
current->Print();
}
Файл – request.cpp – Полное описание элемента списка элементов
#include "request.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
request::request(void)
{
Next=NULL;
rooms=0;
floor=0;
area=0;
}
request::~request(void)
{
}
request::request(int rooms_tmp, int floor_tmp, float area_tmp)
{
rooms=rooms_tmp;
floor=floor_tmp;
area=area_tmp;
}
void request::SetNext(request* Next_tmp)
{
Информация о работе Программа, которая управляет картотекой агентства недвижимости