Контрольные вопросы и задания

1. Опишите формальную грамматику, порождающую множество целых двоичных чисел.

2. Измените описание грамматики из примера в п.8.1.2. таким образом, чтобы она описывала конструкции типа «Имя_1, Имя_2...Имя_N делают_то-то».

3. Что определяет следующая нотация Бекуса-Наура:

<формула>::=<цифра>|(<формула><знак><формула>)

<знак>::= +| - | *

<цифра>::= 0|1|2|3|4|5|6|7|8|9

4. На каком-либо языке программирования напишите программу, функционирующую в соответствии с нотацией, приведенной в предыдущем задании.

5. С помощью синтаксических диаграмм опишите следующие конструкции языка PASCAL:

a) оператор цикла с предусловием WHILE...DO;

b) составной оператор;

c) оператор цикла с параметром FOR...DO;

d) оператор выбора CASE.

6. Можно ли считать формальным исполнителем алгоритма следующие устройства:

a) кодовый замок;

b) графический редактор;

c) телефон с памятью для записи номеров;

d) принтер?

7. Постройте блок-схемы следующих структурных алгоритмов:

а) вычисление n! (ввод n);

b) суммирование цифр целого числа при произвольной его разрядности (ввод - целое число);

c) перевод целого числа в двоичную систему счисления (ввод - целое число);

d) вычисление значения функции sin(x) с заданной точностью е путем суммирования ее разложения в ряд Тейлора (ввод - аргумент х, точность вычисления е).

8. Запишите с помощью псевдокода алгоритмы, приведенные в задании 7.

9. Напишите программы на каком-либо языке программирования для алгоритмов задания 7.

10. В чем смысл и значение структурной теоремы для практики разработки алгоритмов? Возможно ли существование неструктурных алгоритмов? Если «да» - приведите примеры.

Читайте также:

Алфавитное неравномерное двоичное кодирование сигналами равной длительности. Префиксные коды

Пример 7.7

Энтропия опыта равна той информации, которую получаем в результате его осуществления.

Пример 10.1

Пример 7.2

Вернуться в оглавление: Теоретические основы информатики


double arrow
Сейчас читают про: