#include <iostream>
#include <string>
using namespace std;
string longestZero(string);
int main(){
string sequence;
do{
cout<< "Enter binary sequence (q/Q to quit)";
getline(cin,sequence);
if(sequence == "q" || sequence == "Q") break; //user wants to quit
cout<< "\tLongest sequence: "<< longestZero(sequence)<< endl;
} while (sequence != "q" && sequence != "Q");
return 0;
}
string longestZero(string seq){
string longest= "";
int rep= 0, i= 0, highest;
while(i<seq.size()){
if(seq.at(i) == '0'){ //count zeros
if(++rep>highest) highest= rep;
}
if(seq.at(i) == '1') rep= 0; //reset counter
++i;
}
longest.insert(0, highest, '0');
return longest;
}
Comments