M2

23_2a

389
Blokiem w zapisie binarnym liczby nazywamy każdy niepusty, maksymalny ciąg kolejnych takich samych cyfr w tym zapisie.
Przykład: Liczba binarna 111110000110111 składa się z pięciu bloków – trzech bloków złożonych z jedynek (11111, 11 i 111) i dwóch bloków złożonych z zer (0000 i 0).

Zapisz w pseudokodzie lub w wybranym języku programowania algorytm, który dla danej dodatniej całkowitej liczby n obliczy liczbę bloków w jej zapisie binarnym.

Uwaga: W zapisie algorytmu możesz korzystać tylko z instrukcji sterujących, operatorów arytmetycznych: dodawania, odejmowania, mnożenia, dzielenia, dzielenia całkowitego i reszty z dzielenia; operatorów logicznych, porównań, instrukcji przypisania lub samodzielnie
napisanych funkcji i procedur wykorzystujących powyższe operacje.
Zabronione jest używanie funkcji wbudowanych oraz operatorów innych niż wymienione, dostępnych w językach programowania, w tym zwłaszcza funkcji zamiany między systemami pozycyjnymi i konwersji między typami danych.

W odpowiedzi podaj ilość bloków dla n=245
tr.jpg zad1.jpg zad2.jpg zad3.jpg zad4.jpg bin.txt gracze.txt gry.txt oceny.txt owoce.txt pi.txt