ЛР3. Арифметические, логические и побитовые операции, операции отношения

Задания

  1. Дано однобайтовое значение X. Создать программу, определяющую сколько потребуется последовательных операций инкремента и декримента для перехода через границу типа переменной X. Рассмотреть варианты типов signed char и unsigned char для переменной X. Быть готовым предсказать результат работы программы после ввода значения X.
  2. Дана последовательность из N целочисленных значений (возможные значения N: 5,7,9,11 ...). Применив не более одного условного оператора (или условной тернарной операции), программа должна определить, верно-ли, что каждые три элемента последовательность возрастает, а затем - убывает (синусообразная последовательность). Циклы в программе разрешается использовать только для организации перебора элементов последовательности. Например:
      *   *
     * * * *
    *   *   *
    
  3. Дана строка (массив) из 8 символов. Считая, что на месте десятичных цифр находятся единицы, а на месте остальных символов - нули, получить десятичное представление строки, рассматривая ее как последовательность двоичных цифр. Запрещается использовать при решении задачи условные операторы или условную тернарную операцию. Циклы в программе разрешается использовать только для организации перебора элементов строки (массива). Например: исходная строка(массив) - F19w0-65, ответ - 107
  4. Даны два байтовых беззнаковых значения X и Y. Преобразовать X в Y, используя только побитовые операции для изменения значения X. За одно действие разрешается изменять не более одного бита значения X. Изменять в X только те биты, которые должны быть изменены.