Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2011, 23:13   #1
Настёнка1512
 
Регистрация: 02.01.2011
Сообщений: 3
По умолчанию что делает программа?

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string.h>
using namespace std;



template <typename t>
class List
{ struct element
{
t ch;
element * next;
};
element *head;
int count;

public:
List();
~List();
List( List &scr);
int Getcount() const;
void add(t ch);// const;
void del();
void print();
t serch(int n) const;
List<t> & List<t> :: operator + (const List<t> & list1);
List<t> & List<t> :: operator = (const List<t> & list1);
friend istream& operator >> <t>(istream&,List<t>&);
friend ostream& operator << <t>(ostream&,List<t>&);

};
template <typename t>
List<t> :: List()
{
head = NULL;
count=0;
}
template <typename t>
List<t>::List( List &scr)
{
head = NULL;
count=0;
for (int i=0;i<scr.count;i++)
add(scr.serch(i));
}

template <typename t>
List<t>::~List()
{
for (int i=0;i<count;i++)
del();
}



template <typename t>
int List<t> :: Getcount() const
{
return count;
}
template <typename t>
void List<t>:: add (t ch) //const
{
element *a = new element;
a->ch = ch;
a->next = head;
head=a;
count++;
}
template <typename t>
void List<t>:el()
{
element *a=head;
if (a)
{
head = head->next;
delete a;
count--;
}

}
template <typename t>
void List<t>:rint()
{
element *a=head;
while (a!=0)
{ cout <<a->ch<<" ";
a=a->next;
}

}
template <typename t>
t List<t>::serch(int n) const
{

element *a=head;
if (n<=count)
{
for (int m=1;m<count-n;m++)
a=a->next;

return a->ch;
}
else return NULL;
}


template <typename t>
List<t> &List<t> :: operator = (const List<t> & list1)
{
for (int i=0;i<count;i++)
del();
head = NULL;
count=0;
for (int i=0;i<list1.count;i++)
add(list1.serch(i));

return (*this);


}

template <typename t>
List<t> & List<t> :: operator + (const List<t> & list1)
{
List *summa= new List<t>();
// summa.head = NULL;
// summa.count=0;
for (int i=0;i<count;i++)
summa->add(serch(i));
for (int i=0;i<list1.count;i++)
summa->add(list1.serch(i));
return (*summa);
}
template <typename t>
istream & operator>>(istream& vvod,List<t> &list1)
{
t ch;
cin >> ch;
list1.add (ch);
return vvod;
}
template <typename t>
ostream & operator<<(ostream& vivod,List<t> & list1)
{
for (int i = 0;i<list1.count();i++)
vivod<<list1.serch(i)<<' ';
return vivod;
}



int _tmain(int argc, _TCHAR* argv[])
{
List <char> list1;
// cout<<list1.head;
// List list1= new List();
int n,m;
char ch;
n=m=ch=0;
cout <<"vvedite chislo elementov v 1 spiske ";
cin >> n;
for (m=1;m<=n;m++)
{
cout << "vvedite " << m << " element spiska ";
cin >> ch;
list1.add(ch);

}

//cout <<"\n" <<list1.Getcount();
list1.print();
cout<<"\n";
cout << "vvedite nomer elementa kotoriy nughno napechatat ";
cin >> n;
cout << "naydenniy element "<<list1.serch (n-1);
cout <<"\n";
list1.del();
list1.print();
cout<< "\n stalo elementov "<<list1.Getcount();


List<char> list2;
list2=list1;
cout<<"\n spisok2 ";
list2.print();
List<char> list3(list1);
cout<<"\n spisok3 ";
list3.print();
cout<<"\n summa ";
List<char> summa;
summa=list1+list2;
summa.print();


_getch();
return 0;
}

если возможно,закомментируйте строчки пожалуйста))
Настёнка1512 вне форума Ответить с цитированием
Старый 19.12.2011, 06:50   #2
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Что делает прогграмма?
Смеётся
void List<t>el()
И язык покакзывает.
void List<t>rint()
Код нужно правильно оформлять и вопросы задавать более конкретные.
Например: прога делает то-то и то-то, но в этом куске не работает вот-это.
Тогда и ответы будете получать адекватные.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что делает программа& Chena Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 04.05.2011 12:40
Обьясните, что делает это программа??? ~Леди~ Общие вопросы Delphi 2 05.04.2011 10:47
Что делает программа (забыл) С\С++ Айдар Помощь студентам 6 27.06.2010 12:39
Как работает программа и что делает dragun4ik Помощь студентам 0 23.05.2010 15:51
что делает эта программа и где ошибка? дангер Паскаль, Turbo Pascal, PascalABC.NET 27 28.01.2008 13:38