W 
		
				
				
			
		Whatka
Найти колличество элементов стека с одинаковыми "соседями"
Вот моё решение ошибок не выдаёт,но ответ не верный(всегда 0):
	
	
	
	
		
				
			Вот моё решение ошибок не выдаёт,но ответ не верный(всегда 0):
		C++:
	
	#include <iostream>
using namespace std;
class Stack
{
struct stack
{
int elem;
stack *p;
};
stack *head;
public:
Stack(){head=NULL;}						//Конструктор
~Stack()								//Деструктор
{
stack *New;
New=head;
while(head)
{
New=head;
head=head->p;
delete New;
}
}
void push(int a)						//Добавить в начало стека передаваемое число
{
stack *New;
New=new stack;
New->p=head;
New->elem=a;
head=New;	
}
int pop()								//Извлечь из начала стека (с удалением)
{
int back;
stack *New;
New=head;
head=head->p;
back=head->elem;
delete New;
return back;
}
bool is_empty()							//Проверка пуст ли стек
{
bool a=false;
if (head==NULL)
a=true;
return a;	
}
void print ()							//Печать содержимого стека
{
stack *New;
New=head;
while(New)
{
cout<<New->elem<<endl;
New=New->p;
}
}
};
void main()
{
setlocale(LC_ALL,"RUS");
Stack w;
int n,a,in,s(0);
metka:
cout<<"Количество элементов стека:";
cin>>n;
if(n<=2)
{
system ("cls");
cout<<"Не корректное значение!\n";
goto metka;
}
cout<<"Введите интервал заполнения:";
cin>>in;
cout<<"Стек после заполнения случайными числами:\n";
for(int i(0);i<n;i++)
{
a=rand()%in;
w.push(a);
}
w.print();
int e1,e2,e3;
e1=w.pop();
e2=w.pop();
while(w.is_empty()!=NULL)
{
e3=w.pop();
if(e1==e3)
s++;
e1=e2;
e2=e3;
}
cout<<"Количество чисел стека с одинаковыми соседями:"<<s<<endl;
}