#include <stdio.h>

int func(int a,int b)
{
	return (a+b)*(b-a+1)/2;
}


int main(void)
{
	int a,i,j,ret;
	while(1){
		ret = 0;
		scanf("%d",&a);
		if(a == 0)
			break;
		for(i = 1;i <= 500;i++){
			for(j = 1;j <= 500;j++){
				if(i < j && func(i,j) == a)
					ret++;
			}
		}
		printf("%d\n",ret);
	}
	return 0;
}