15.01.2016, 19:18 | #1 (permalink) | |
Member
Регистрация: 11.11.2010
Сообщений: 85
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Репутация: 20
|
Двунаправленное кольцо С++
Цитата:
Код:
#include "stdafx.h" #include <iostream> using namespace std; struct Data{ Data *Next, *Prev; string Name; int Price, Count; int Day, Month, Year;}; class List{ protected: Data *Head, *Tail; int Size; public: List() { Head = NULL; Tail = NULL; Size = 0; }; List(Data InputData) { Data *curdata = new Data; curdata->Year = InputData.Year; curdata->Month = InputData.Month; curdata->Day = InputData.Day; curdata->Price = InputData.Price; curdata->Count = InputData.Count; curdata->Name = InputData.Name; curdata->Prev = NULL; Head = Tail = curdata; Size = 1; }; List(List &data) { Head = NULL; *this = data; }; ~List() { while (Head) { Tail = Head->Next; delete Head; Head = Tail; }; }; void Show(int No) { Data *curdata = new Data; curdata = Head; if (No>Size) exit; else { for (inti = 0; i<No - 1; i++) { if (curdata->Next != NULL) curdata = curdata->Next; }; cout<< "Наименованиетовара:" <<curdata->Name.c_str() <<endl; cout<< "Количество:" <<curdata->Count << "\t Цена:" <<curdata->Price <<endl; cout<< "Дата поставки:" <<curdata->Day<< "." <<curdata->Month << "." <<curdata->Year <<endl;}; }; void Delete(int No) { if (No>Size) exit; Size--; Data *curdata = new Data; curdata = Head; for (inti = 0; i<No - 2; i++) curdata = curdata->Next; if (curdata->Next->Next == NULL) curdata->Next = NULL; else curdata->Next = curdata->Next->Next; }; void Add(Data InputData) { Data *curdata = new Data; curdata->Year = InputData.Year; curdata->Month = InputData.Month; curdata->Day = InputData.Day; curdata->Price = InputData.Price; curdata->Count = InputData.Count; curdata->Name = InputData.Name; curdata->Next = NULL; Size++; if (Head != NULL) { curdata->Prev = Tail; Tail->Next = curdata; Tail = curdata; } else { curdata->Prev = NULL; Head = Tail = curdata; };};}; int _tmain(intargc, _TCHAR* argv[]) { setlocale(LC_ALL, "Russian"); Data good; good.Name = "Перфоратор";good.Count = 120;good.Price = 3500000;good.Day = 11; good.Month = 02;good.Year = 2014; List Goods(good); good.Name = "Шуруповрт"; good.Count = 50;good.Price = 1225000; good.Day = 12; good.Month = 02; good.Year = 2014; Goods.Add(good); good.Name = "Дрель";good.Count = 150; good.Price = 125000;good.Day = 13; good.Month = 02; good.Year = 2014; Goods.Add(good); Goods.Show(1); Goods.Show(2); Goods.Show(3); Goods.Delete(2); Goods.Show(1); Goods.Show(2); system("pause"); return 0; } |
|
15.01.2016, 19:18 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Иногда очень эффективно прочтение схожих топиков Золотое кольцо России изнутри Ферритовое кольцо |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|