Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,845 questions

51,766 answers

573 users

How to find the length of the longest consecutive zeroes in the binary representation of a number in Pascal

1 Answer

0 votes
program LongestZeroes;

function LongestConsecutiveZeroes(n: integer): integer;
var
  maxCount, currentCount: integer;
begin
  maxCount := 0;
  currentCount := 0;

  while n > 0 do
  begin
    if (n and 1) = 0 then // Check if the least significant bit is 0
    begin
      currentCount := currentCount + 1;
      // Update maxCount if currentCount is greater
      if currentCount > maxCount then
        maxCount := currentCount;
    end
    else
      currentCount := 0; // Reset count when a 1 is encountered

    n := n shr 1; // Right shift the number
  end;

  LongestConsecutiveZeroes := maxCount;
end;

var
  num: integer;
begin
  num := 11298; // 0010 1100 0010 0010
  
  writeln('Longest consecutive zeroes: ', LongestConsecutiveZeroes(num));
end.



(*
run:

Longest consecutive zeroes: 4

*)

 



answered Sep 14, 2025 by avibootz
...