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
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