Контрольная работа по "Безопасность жизнедеятельности"

Автор работы: Пользователь скрыл имя, 04 Декабря 2014 в 15:15, контрольная работа

Описание работы

При помощи последовательного вызова функций CAR и CDR получит символ * из списка (1 (2 (3 4) *) 5).
Выполняя данное задания, нужно учитывать, что легко запутаться. Поэтому задание мною выполнялось постепенно и последовательно. Просматривая, какие символы из списка еще нужно удалить чтоб достичь нужного результата.

Содержание работы

1. Задание 1………………………………………………………………….
5
2. Задание 2………………………………………………………………….
5
3. Задание 3………………………………………………………………….
8
4. Задание 4………………………………………………………………….
8
5. Задание 5…………………………………

Файлы: 1 файл

БЖД Контрольная11.docx

— 115.16 Кб (Скачать файл)

 

6

7

8

9

10

Министерство образования и науки РФ

ФГБОУВПО СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра: Информационных и технических систем

 

 

 

 

Контрольная работа

по дисциплине Безопасность жизнедеятельности

(ИТС. 127025.073 ПЗ)

 

 

 

 

Руководитель:

 

________Л.А. Жуков

(подпись)

____________________

(оценка, дата)

 

Разработал:

Студент группы 77-3

________ О.Н.Малкова

(подпись)

         ____________г.

(дата)

 

 

 

 

г. Лесосибирск 2014

 

Задание на контрольную работу

 

Вариант 5

 

 

Реферат


Контрольная работа представлена в виде пояснительной записки. Пояснительная записка излагается на 10 страницах машинописного текста. В ней представлены 2 рисунка.

Цель выполнения контрольной работы состоит в развитие практических навыков по работе с языком программирования Lisp.

 

 

Содержание

 

 

1. Задание 1………………………………………………………………….

5

2. Задание 2………………………………………………………………….

5

3. Задание 3………………………………………………………………….

8

4. Задание 4………………………………………………………………….

8

5. Задание 5…………………………………………………………………

8


 

 

Задание № 1.

 

S - выражения записать в форме обычных математических выражений без интерпретаторов Lisp и вычисления результата.

 

(*5(+ atan 4) (exp (/3 2))))

Решение:

(arctg4 + exp3/2) * 5.

 

(/ (+ (expt (sin (* 2  pi))  2) 5) (+ 1 (*2.05(abs(/7 8))))

Решение:

.

 

(* (+ (- 1 (/1 (* 1 2 3))) (/ 1 (* 1 2 3 4 5))) (/ (log 10) (sqrt 10)))

Решение:

.

 

Задание № 2

 

Записать каждое данное математическое выражение на языку Lisp в виде S- выражений с помощью интерпретатора вычислить их значения.

 

при x= 17.421

       y=10.365

Решение:

 

expt (+ 10.365 (expt (-  17.421 1) (/ 1 3))) (/ 1 4)

 

Ответ: 1.8954147

 

 

 

Рисунок 1 Вычисления первого выражения

 

 

(*(ABS(- 17.421 10.365))(+ (expt (sin 0.8) 2) tan 0.8))

Error: The variable TAN is unbound.

В данном выражении мною была допущена синтаксическая ошибка.

 

(*(ABS(- 17.421 10.365))(+ (expt (sin 0.8) 2) (tan 0.8)))

 

После исправления данной ошибки был получен результат 10.896145.

 

 

Где  x = 16.55

y= -2.75

z = 0.15

Решение:

 

(sqrt (*10 (+ (expt 16.55 (/ 1 3))(expt 16.55 (- -2.75 2)))))

  

 

В данном выражении допущена ошибка  Undefined operator *10 in form (*10 (+ (EXPT 16.55 (/ 1 3)) (EXPT 16.55 (- -2.75 2)))). То есть не хватает запятой после умножения и 10.

 

(sqrt (* 10 (+ (expt 16.55 (/ 1 3))(expt 16.55 (- -2.75 2)))))

После исправлении ошибки получаем результат: 5.0481606

 

 

Где  x = 16.55

y= -2.75

z = 0.15

Решение:

 

(+ (* (asin 0.15)(asin 0.15)) (+ 16.55 -2.75))

Ответ: 13.82267

 

 

Где  x= 0.22

y= -6.72

u= 10.05

v = 0.35

Решение:

 

(*(+ 2 (expt -6.72 2)) (/(+ 0.22 (/ -6.72 2)) (+ (expt -6.72 2) (/ 1 (+ (expt -6.72 2) 1)))))

Ответ: -3.2774935

 

 

 

Где  u= 10.05

v = 0.35

Решение:

 

(sqrt (+ (* (expt (sin  (atan 10.05)) 2) (abs (cos 0.35)))))

Ответ: 0.96444977

 

Задание № 3

 

При помощи последовательного вызова функций CAR и CDR получит символ * из списка  (1 (2 (3 4) *) 5).

Выполняя данное задания, нужно учитывать, что легко запутаться. Поэтому задание мною выполнялось постепенно и последовательно. Просматривая, какие символы из списка еще нужно удалить чтоб достичь нужного результата.

Решение:

 

(car (cdr (cdr (car (cdr'(1 (2 (3 4) * 4 5)))))))

 

Задание № 4

 

Из списка (А B) С ( D Е)) получить список (С . D).

Для решения данной задания присвоим значение исходного списка некоторой переменной х, и будем работать с переменной а не со списком.

CL-USER 1 > (setq x'((A B) C (D E)))

((A B) C (D E))

CL-USER 2 > (cons (car (cdr x)) (car (cdr x)))

((B) . C)

 

CL-USER 3 > (cons (car (cdr x)) (car (car x)))

(C . C)

 

CL-USER 4 > (cons (car (cdr x)) (cdr (car x)))

(C B)(cons (car (cdr x)) (car (cdr x)))

(C . A)

 

CL-USER 6 > (cons (car (cdr x)) (car (car x)))

(C B)

 

Задание №5.

 

Для решения этого задания сначала построим структуру будущего списка

 

 



 

 

 

 

 

 

Рисунок 2 Структура списка

 

Решение:

 

CL-USER 19 : 2 > cons 3 (cons 4 nil)

(3 4)

 

CL-USER 23 : 4 > cons(cons 3 (cons 4 nil)) (cons 5 nil)

((3 4) 5)

 

CL-USER 24 : 4 > cons 2 (cons(cons 3 (cons 4 nil)) (cons 5 nil))

(2 (3 4) 5)

 

CL-USER 25 : 4 > cons (cons(cons 3 (cons 4 nil)) (cons 5 nil)) nil

(((3 4) 5))

 

CL-USER 26 : 4 > cons 2 (cons (cons(cons 3 (cons 4 nil)) (cons 5 nil)) nil)

(2 ((3 4) 5))

 

CL-USER 27 : 4 > cons (cons 2 (cons (cons(cons 3 (cons 4 nil)) (cons 5 nil)) nil)) nil

((2 ((3 4) 5)))

 

CL-USER 28 : 4 > cons 1(cons (cons 2 (cons (cons(cons 3 (cons 4 nil)) (cons 5 nil)) nil)) nil)

 

Библиографический список

 

 

  1. Безруких, Н.С. Функциональное программирование Основы программирования на языке Лисп [Текст] / В.Л. Безруких, Н.С., Доррер Г.А., Полуэктова Т.А. – Редакционно–издательский центр СибГТУ: Красноярск 2013 – 104 с.
  2. Lisp Works [Электронный ресурс] / Режим доступа: http://downloads.lispworks.com
  3. Внутреннее построение списков [Электронный ресурс] / Режим доступа:  http://www.mari-el.ru

Информация о работе Контрольная работа по "Безопасность жизнедеятельности"