#include<iostream>
#include<vector>

using namespace std;

vector<int> sosu;

bool isSosu(int n)
{
	for(int i=2;i*i<=n;i++)
	{
		if(n%i==0)return false;
	}
	return true;
}

void makeSosuTable()
{
	for(int i=2;i<50000;i++)
	{
		if(isSosu(i))sosu.push_back(i);
	}
}

bool isSosu2(int n)
{
	for(int i=0;i<sosu.size();i++)
	{
		if(sosu[i]==n)return true;
	}
	return false;
}

int main(void)
{
	makeSosuTable();
	while(1)
	{
		int n;
		cin>>n;
		if(n==0)break;
		int ans=0;
		for(int i=0;i<sosu.size();i++)
		{
			if(sosu[i]>n/2)break;
			if(isSosu2(n-sosu[i]))ans++;
		}
		cout<<ans<<endl;
	}
}