Скачиваний:
13
Добавлен:
01.05.2014
Размер:
2.76 Кб
Скачать
//File mainlist.cpp
//Naznachenie: Formirovanie linejnogo odnonapravlennogo spiska veshestvennyh znachenij
//Author: Pavel Morozov
//Redakcija: 1.0 10.02.07

#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<stdio.h>

#include"celement.h"
#include"clist.h"

#include"celement.cpp"
#include"clist.cpp"




int main()
     {
       clrscr();

       //Vyvod zagolovka
       cout<<endl
	   <<endl
	   <<"Author: Pavel Morozov         Group 4351."
	   <<endl
	   <<endl
	   <<"Formirovanie linejnogo odnonapravlennogo spiska veshestvennyh znachenij."
	   <<endl
	   <<"Na ego osnove sformirovat 2 linejnyh odnonapravlennyh spiska:"<<endl
	   <<"-pervyj, soderzashij polozitelnye znachenija iz ishodnogo spiska,"<<endl
	   <<"-vtoroj, soderzashij nepolozitelnye znachenija."<<endl
	   <<"Kazdyj iz etih spiskov dolzen soderzat elementy v poriadke, obratnom poriadku sledovanija znachenij v ishodnom spiske."
	   <<endl<<endl;

       //Objavlenie i inicializacija peremennyh


	CList List;		//Spisok elementov

    CList LR1;             //Dopolnitelnyj spisok 1
    
    CList LR2;             //Dopolnitelnyj spisok 2

	float Fptr;          //Ukazatel na element

	CElement *Elemptr;     //Ukazatel na element spiska

	char vvod;     //Polzovatelskij element

	float x0;   //Atribut
	

       //Vvod elementov spiska
       int i=0;
	do
       { textcolor(15);
	cout<<endl<<endl;
	cprintf("Dlia vvoda znachenija nazmite y.");
	cout<<endl;
	cprintf("Dlia otkaza ot vvoda nazmite n.");
	cout<<endl<<endl;
    
	cin>>vvod;

	if(vvod)
	{if(vvod=='n') break;
	  //Kakoj element obrabatyvaetsia
	 
	   i=i+1;
	  cout<<endl<<endl;
	  cprintf("         VVod elementa   ");
	  cout<<i<<endl;

	  
	     //VVod znachenija
	     cout<<endl;
        
		     cout<<endl;
	     cprintf("x= ");
	     cin>>Fptr;
	
	     cout<<endl;

	


	      //Vydelenie pamiati dlia elementa
	     // Fptr= new CData;

	      //Ustanovka elementa
	     // Fptr->SetX(x0);

	      //Vydelenie pamiati i ustanovka ukazatelia na element
	      Elemptr=new CElement(Fptr);




	      //Vstavka elementa v spisok
	       List.Insert(Elemptr);


	      //Obnulenie ukazatelej
	   //   Fptr=0;
Elemptr=0;
	
	}else {cout<<endl<<"Spisok ne budet sozdan"<<endl; }
      }

       while((vvod=='y')||(vvod=='Y'));
       clrscr();
       //Vyvod spiska elementov
       cout<<endl<<"Ishodnyj spisok "<<i<<" elementov";
       List.OutList(i);
       List.Divide(LR1,LR2);//Razdelenie ishodnogo spiska na 2 spiska
       

       cprintf("Zavershenie raboty.");
       cout<<endl<<endl;
       cout<<endl<<"Nazmite probel...";
       getch();
       return 0;
}
Соседние файлы в папке Лабораторная работа 11