М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Katyakim220605
Katyakim220605
26.10.2020 17:03 •  Информатика

по каналу связи передаются сообщения, содержащие заглавные буквы кириллицы для передачи используется не правильный двоичный код. Для букв А,Б,В и Г используется кодовое слово 101, 110, 100, 111 соответственно. Укажите минимальную сумму длин кодовых слов для букв Д и Е , при котором код будет удовлетворять условию Фано

👇
Открыть все ответы
Ответ:
ed31121
ed31121
26.10.2020

F = ¬b · ¬a ∨ ¬b · c

Объяснение:

Выражение записано в какой-то смеси обозначений. Знаки операции логического умножения (∧) заменены знаками обычного умножения (·) , а для логического сложения (∨) знаки оставлены. Заменим и их на знак обычного сложения (+) и выражение сразу станет привычнее.

F = ¬(¬a · b + a · (b + ¬c))

Раскроем внутренние свобки

F = ¬(¬a · b + a · b + a · ¬c)

Вынесем за скобку b

F = ¬(b · (¬a + a) + a · ¬c)

Учтем, что ¬a + a = 1

F = ¬(b · 1 + a · ¬c)

Учтем также, что b · 1 = b

F = ¬(b + a · ¬c)

Снимем общую инверсию по правилу де-Моргана

F = ¬b · ¬(a · ¬c)

И еще раз снимем инверсию с выражения в скобках

F = ¬b · (¬a + c)

Осталось раскрыть скобки

F = ¬b · ¬a + ¬b · c

Моэно записать и в исходных обозначениях

F = ¬b · ¬a ∨ ¬b · c

4,4(91 оценок)
Ответ:
Ladnaya56
Ladnaya56
26.10.2020

#include <iostream>

#include <string>

#include <algorithm>

#include <Windows.h>

using namespace std;

bool check_alphabet(char symbol) {

string alphabet = "";

for (size_t j = 0; j < alphabet.size(); j++)

{

 if (alphabet[j] == symbol) {

  return true;

 }

}

return false;

}

pair<int,string> erase_counter_char_in_str_not_latin(string str) {

int i = 0;

int count = 0;

while (i <= str.size() - 1) {

 if (not (check_alphabet(toupper(str[i] {

  str.erase(str.begin() + i);

  count++;

  i--; // раз удалили, то нужно вернуться назад на один: i~45m -> i5~m (i уже идёт на следующий)

 }

 i++;

}

return make_pair(count, str);

}

int main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

setlocale(LC_ALL, "Russian");

string str;

cout << "Введите строку: " << endl;

cin >> str;

pair<int,string> pair_count_str = erase_counter_char_in_str_not_latin(str);

cout << endl << "Удалено: " << pair_count_str.first << endl;

cout << "Конечная строка: " << pair_count_str.second;

}

4,8(23 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ