Temat zadania:
W tym zadaniu rozważamy binarny zapis liczb całkowitych dodatnich. Blokiem w zapisie binarnym liczby nazywamy każdy niepusty, maksymalny (nie można go rozszerzyć ani z lewej, ani z prawej strony) 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). Liczba binarna 1111111111111111 składa się z jednego bloku złożonego z jedynek.
2.1. 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.
Przykład:
Dla liczby 67 wynikiem jest 3, ponieważ 67 w zapisie binarnym to 1000011 (dwa bloki jedynek i jeden blok zer).
Dla liczby 245 wynikiem jest 5, ponieważ 245 w zapisie binarnym to 11110101 (trzy bloki jedynek i dwa bloki zer).
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.
- Pseudokod:
Treść dostępna tylko dla użytkowników z aktywnym Premium
Treść dostępna tylko dla użytkowników z aktywnym Premium
Opracowania zadań z ponad 3000 podręczników – przygotowane przez nauczycieli
Ponad 100 kursów wideo do sprawdzianów, E8 i matury
Odrabiak Pro – interaktywna nauka z każdym szkolnym podręcznikiem
Gotowe notatki, tablice edukacyjne i sprawdziany
Wioletta Wysopal
Nauczycielka informatyki
Tutaj pojawi się lista Twoich książek
Zaloguj się i zacznij tworzyć ją już teraz.

