- •Вопрос 1
- •Вопрос 2
- •Вопрос 3
- •Вопрос 4
- •Вопрос 5
- •Вопрос 6
- •Вопрос 8
- •Вопрос 9
- •Формальные свойства алгоритмов
- •Вопрос 10
- •Виды алгоритмов
- •Вопрос 12
- •Вопрос 13
- •3.2 Графический способ записи алгоритмов
- •Вопрос 14
- •Вопрос 15
- •Вопрос 16
- •Вопрос 20
- •Вопрос 21
- •Вопрос 62
- •Вопрос 22
- •Вопрос 23
- •Вопрос 24
- •Вопрос 25
- •Вопрос 26
- •Вопрос 27
- •Вопрос 28
- •Вопрос 29
- •Вопрос 30
- •Вопрос 31
- •Вопрос 32
- •Вопрос 33
- •Вопрос 34
- •Вопрос 35
- •Вопрос 37
- •Вопрос 39
- •Вопрос 40
- •Visual Basic. Типы данных в языке.
- •Вопрос 41
- •Вопрос 42
- •Вопрос 43
- •Вопрос 44
- •Вопрос 45 Математические функции
- •Функции преобразования данных
- •Функции даты и времени
- •Вопрос 46
- •Вопрос 47 Строковые функции
- •Вопрос 48
- •Visual Basic. Основные операторы.
- •Вопрос 49
- •Вопрос 50
- •Вопрос 51
- •Вопрос 52
- •Вопрос 53
- •Вопрос 54
- •Вопрос 55
- •Вопрос 57
- •Вопрос 59
- •Вопрос 60
- •Вопрос 61
- •Вопрос 62
- •Вопрос 63
- •1) Функция uBound служит для определения верхней границы (индекса самого последнего элемента) массива по заданному измерению.
- •2) Функция lBound (Lower Bound) служит для определения нижней границы (индекса самого первого элемента) массива по заданному измерению.
- •3) IsArray Служит для проверки, является ли переменная массивом. Применение функции IsArray особенно полезно для переменных типа Variant, содержащих массивы.
- •4) Функция Array служит для обработки массивов.
- •Вопрос 64
- •Характерные ошибки программирования
Вопрос 6
Кодирование по методу Шеннона-Фано так же как и другими методами может применятся не только к последовательностям из К элементных сообщений, но и непосредственно к источникам не равновероятных элементарных сообщений. При этом уменьшается выигрыш в эффективности. В том случае, когда левая часть системы неравенств (2.11) обращается в равенство, имеем hmin=H(U) (2.12). Код, обладающий hmin называется оптимальным для того, чтобы сообщение источника можно было закодировать двоичным оптимальным кодом необходимо и достаточно, чтобы все вероятности источника сообщения представляли собой числа равные целой отрицательной степени числа 2, т.е. Pi= , где аi - целое. Действительно как видно из неравенства (2.8) в таком случае вероятности Ps при выбранном нами способе определении длины кодового слова ms определятся, как . При этом среднее число символов кода приходящихся на одно сообщение в соответствии с (2.9) равно . В свою очередь энтропия источника сообщений Нa равна . Таким образом получили, что hс = h с min=Нa откуда после деления обеих частей последнего равенства на К можно придти к выражению (2.12). Рассуждая аналогичным образом можно показать, что и в случае кодирования сообщений источника неравномерным кодом с произвольным основанием М оптимальный код может быть получен при условии равенства вероятности всех сообщений целым отрицательным степеням числа М, т.е. при , где аi - целое и при этом . Если распределение вероятностей кодированного источника не обладает указанным свойством, эффективный код не будет оптимальным и соответствующая ему h > h min. Величина Y = hmin/ h (2.12а), характеризующая степень близости неравномерного статистического кода к оптимальному называется эффективностью кода. Таким образом нижний предел в условии теоремы, может быть, достигнут лишь при определенном распределении вероятности источника сообщений. Однако приближение к нему может быть сколь угодно близким при увеличении длинны К последовательности кодируемых сообщений. При этом рост эффективности системы передачи информации сопровождается увеличением задержки сообщений. И так из рассмотренной теоремы вытекает, что для любого источника дискретных сообщений (т.е. характеризуется любым многомерным распределением вероятностей) скорость передачи информации по идеальному каналу может быть сделана сколь угодно близкой к пропускной способности канала при отсутствии потерь информации. При этом приближение тем больше, чем больше длина сообщения К, что указывает на возможность обмена задержки на скорость передачи информации.
Вопрос 8
Решение задач с помощью компьютера включает в себя следующие основные этапы, часть из которых осуществляется без участия компьютера.
1. Постановка задачи:
сбор информации о задаче;
фоpмулиpовка условия задачи;
определение конечных целей решения задачи;
определение формы выдачи результатов;
описание данных (их типов, диапазонов величин, структуры и т.п.).
2. Анализ и исследование задачи, модели:
анализ существующих аналогов;
анализ технических и программных средств;
pазpаботка математической модели;
разработка структур данных.
3. Разработка алгоритма:
выбор метода проектирования алгоритма;
выбор формы записи алгоритма (блок-схемы, псевдокод и др.);
выбор тестов и метода тестирования;
проектирование алгоритма.
4. Пpогpаммиpование:
выбор языка программирования;
уточнение способов организации данных;
запись алгоритма на выбранном языке пpогpаммиpования.
5. Тестирование и отладка:
синтаксическая отладка;
отладка семантики и логической стpуктуpы;
тестовые расчеты и анализ результатов тестирования;
совершенствование пpогpаммы.
6. Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2 - 5.
7. Сопровождение программы:
доработка программы для решения конкретных задач;
составление документации к решенной задаче, к математической модели, к алгоритму, к пpогpамме, к набору тестов, к использованию.