Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
12.02.2015
Размер:
1.01 Mб
Скачать

Создание распределенной системы решения задач

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 11. Вычисление арифметического выражения, заданного пользователем в инфиксной форме записи. Исходное представление арифметического выражения должно быть преобразовано в постфиксную форму записи с последующим вычислением с использованием стека.

Допустимые варианты ариметических операций приведены в таблице 6.

Таблица 6

 

Допустимые комбинации арифметических операций

Вариант

Операции

1

+, -

2

+, *

3

+, -, унарный минус

4

+, *, унарный минус

5

+, -, *, /

6

+, -, *, /, унарный минус

7

+, -, скобки ()

8

+, *, скобки ()

9

+, -, унарный минус, скобки ()

10

+, *, унарный минус, скобки ()

11

+, -, *, /, скобки ()

12

+, -, *, /, унарный минус, скобки ()

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Методические указания к выполнению курсовой работы

61

 

Системное программное обеспечение

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 12. Выполнение действий, предусмотренных программой на входном языке, допускающем только операторы присваивания переменным констант.

Допустимые варианты констант приведены в таблице 7.

Таблица 7

 

Допустимые варианты констант

Вариант

Варианты констант

1

двоичные

2

вещественные

3

целые

4

символы

5

символьные строки

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

62

М.Ф.Степанов

Создание распределенной системы решения задач

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 13. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным констант и условные операторы.

Допустимые варианты констант приведены в таблице 7. Допустимые варианты условных операторов приведены в таблице 8. Допустимые варианты условных выражений в условных операторах

приведены в таблице 9.

Допустимые варианты логических операторов в условных выражениях условных операторов приведены в таблице 10.

Таблица 8

 

Допустимые варианты условных операторов

Вариант

Варианты условных операторов

1if <условное выражение> <исполняемые операторы> end

2if <условное выражение> <исполняемые операторы> end

Таблица 9

 

Допустимые варианты условных выражений

Вариант

Варианты условных выражений в условных операторах

1

<идентификатор><логический оператор><константа>

2

< константа ><логический оператор>< идентификатор >

3

<идентификатор><логический оператор>< идентификатор >

Таблица 10

 

Допустимые варианты логических операторов

Вариант

Варианты логических операторов

1

<, >

2

<, >, ==

3

==, !=

4

<=, >=

5

<, >, ==, !=

6

!=, <=, >=

7

<, >, ==, !=, <=, >=

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Методические указания к выполнению курсовой работы

63

 

Системное программное обеспечение

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 14. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным констант и операторы цикла.

Допустимые варианты констант приведены в таблице 7. Допустимые варианты операторов цикла приведены в таблице 11. Допустимые варианты условных выражений в операторах цикла

приведены в таблице 9.

Допустимые варианты логических операторов в условных выражениях операторов цикла приведены в таблице 10.

Таблица 11

 

Допустимые варианты операторов цикла

Вариант

Варианты операторов цикла

1

while <условное выражение>

 

<исполняемые операторы>

 

end

2

do

 

<исполняемые операторы>

 

while <условное выражение>

3

for <заголовок цикла>

 

<исполняемые операторы>

 

end

 

Здесь:

 

<заголовок цикла>::=

 

<переменная цикла>=<константа>:< константа >[:< константа >]

4

while <условное выражение>

 

{

 

<исполняемые операторы>

 

}

5

do

 

{

 

<исполняемые операторы>

 

}

 

while <условное выражение>

6

for <заголовок цикла>

 

{

 

<исполняемые операторы>

 

}

 

Здесь:

 

<заголовок цикла>::=

 

<переменная цикла>=<константа>:< константа >[:< константа >]

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

64

М.Ф.Степанов

Создание распределенной системы решения задач

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

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

Допустимые варианты функций приведены в таблице 12.

Таблица 12

 

Допустимые варианты функций

Вариант

Варианты функций

1

sin, cos

2

tan, atan

3

cot, acot

4

tanh, atanh

5

coth, acoth

6

exp, log, log10

7

rand, ceil, fix, floor, round

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Методические указания к выполнению курсовой работы

65

 

Системное программное обеспечение

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 16. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным результатов выполнения заданной матричной функции. В качестве аргументов должны быть указаны размерности матрицы (идентификаторы) и собственно матрица (идентификатор).

Допустимые варианты функций приведены в таблице 13.

Таблица 13

 

Допустимые варианты матричных функций

Вариант

Варианты функций

1

sin, cos

2

tan, atan

3

cot, acot

4

tanh, atanh

5

coth, acoth

6

expm, logm, log10m

7

rand, ceil, fix, floor, round

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

66

М.Ф.Степанов

Создание распределенной системы решения задач

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 17. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным значения многочлена с переменной x . Значение переменной x должно быть определено в предшествующем операторе присваивания.

Многочлен с переменной x записывается, соблюдая следующие правила:

9 Многочлен состоит из слагаемых со знаками + или – между ними; количество слагаемых от 1 до 10;

9 Каждое слагаемое представляет собой или произведение натурального коэффициента на степень x (например, 5 * x^2), или только степень x (например, x^3), или только коэффициент (например, 7);

9Степень записывается в виде: буква x (строчная латинская), знак ^, показатель степени (натуральное число);

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Методические указания к выполнению курсовой работы

67

 

Системное программное обеспечение

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 18. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным массивов чисел, задаваемых по правилам входного языка системы МАТЛАБ, а также с вызовом функции merge(x, n, y, m) , аргументами

которой являются идентификаторы сливаемых массивов и их размерности. Значения переменным, указанным в качестве аргументов должны быть определены в предшествующих операторах присваивания.

Метод слияния массивов определить самостоятельно. Длины исходных массивов могут не совпадать.

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

68

М.Ф.Степанов

Создание распределенной системы решения задач

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 19. Выполнение действий, предусмотренных программой на входном языке, допускающем операторы присваивания переменным массивов чисел, задаваемых по правилам входного языка системы МАТЛАБ, а также с вызовом функции sort(x, n, y, m) , аргументами

которой являются идентификатор сортируемого массива и его размерность. Значения переменным, указанным в качестве аргументов должны быть определены в предшествующих операторах присваивания.

Метод сортировки массивов определяется по таблице 14.

Таблица 14

 

Допустимые варианты методов сортировки

Вариант

Варианты сортировки

1

Пузырьковая сортировка

2

Сортировка выбором

3

Сортировка слиянием

4

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

5

Быстрая сортировка

6

Пирамидальная сортировка

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Методические указания к выполнению курсовой работы

69

 

Системное программное обеспечение

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Задача 20. Поиск минимального пути в лабиринте. Карта лабиринта задаётся прямоугольной таблицей из 0 и 1. Единицы означают стена, нули

– свободные клетки. Из свободной клетки можно пройти в любую соседнюю свободную клетку. Соседними считаются клетки, имеющие общую сторону.

Клетки лабиринта имеют координаты. Первая координата увеличивается по направлению сверху вниз, вторая – слева направо. В клетке с координатами x , y находится Робот. По карте нужно найти

кратчайший путь, выводящий Робота из лабиринта. Если есть несколько равноценных путей, то найти любой из них. Выходами из лабиринта считаются все свободные клетки во внешних стенах.

Исходные данные задать в виде операторов присваивания в следующем порядке:

9Количество строк в таблице;

9Количество столбцов в таблице;

9Таблица, задающая карту лабиринта в виде целочисленной матрицы по правилам записи матрицы во входном языке системы МАТЛАБ;

9Массив из двух чисел, задающих координаты Робота (номер строки, номер столбца).

Идентификаторы исходных данных указать в качестве параметров функции поиска пути, например, pathFromLab(n, m, M , rob) .

Результатом работы должна быть матрица пути, содержащая координаты точек пути с двумя столбцами (в первом столбце номер строки, во втором – номер столбца по карте лабиринта), каждая i -я строка которой задает координаты i -й точки пути Робота к выходу из лабиринта.

При отсутствии пути выхода матрица пути должна содержать только одну строку, элементы которой равны -1.

_____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

70

М.Ф.Степанов

Соседние файлы в папке Системное программирование