#include<iostream>
#include<vector>
#include<queue>
#include<string>
using namespace std;
int main(void){
string s;
while(1){
	cin>>s;
	if(s=="#")break;
	//now -1 l 1 r
	int r=-1,l=-1,ans=0,now=0;
for(int i=0;i<s.size();i++){
	if(s[i]=='1'||s[i]=='4'||s[i]=='7'){
		if(now==0){
			if(l==0){
				r=0;
			//	cout<<ans<<' '<<now<<' '<<l<<' '<<r<<endl;
				continue;
			}
		l=0;
		if(r!=-1&&r!=0){
			now=-1;
		}

		}else{
			if(now==1){
				now=-1;
				l=0;
			}else if(l>0){
				now=-1;
				l=0;
				ans++;
			}else{
				now=1;
				r=0;
			}
		}

		}else if(s[i]=='2'||s[i]=='8'){
	if(now!=0){
		if(now==-1){
			if(l==2){
				l=1;
				ans++;
			}else{
				now=1;
				r=1;
			}
		}else{
			if(now==1){
				if(r==0){
					r=1;
					ans++;
				}else{
					now=-1;
					l=1;
				}
			}
		}

	}else{
		if(l==0){
			r=1;
			now=1;
		}else if(r==2){
			l=1;
			now=-1;
		}else{
			r=1;
			l=1;
		}
	}

		}else{
			if(now==0){
				if(r==2){
					l=2;
//cout<<ans<<' '<<now<<' '<<l<<' '<<r<<endl;
					continue;
				}
				r=2;
				if(l!=-1&&l!=2){
					now=1;
				}
			}else{
				if(now==-1){
					now=1;
					r=2;
				}else{
					if(r!=2){
						ans++;
						r=2;
					}else{
						l=2;
						now=-1;
					}
				}

			}

}
//cout<<ans<<' '<<now<<' '<<l<<' '<<r<<endl;
}
cout<<ans<<endl;

}

	return 0;
}