Сделай Сам Свою Работу на 5

Библиографический список к задачам 2.1-2.12

 

1. Порев В.Н. Компьютерная графика. - СПб.: Питер, 2002.

2. Петров М.Н., Молочков В.П. Компьютерная графика. Учебник. - СПб.: Питер, 2003.

3. Иванов В. П., Батраков А. С. Трёхмерная компьютерная графика / Под ред. Г.М. Полищука. -М.: Радио и связь, 1995.

4. Лапшин Е. Графика для IBM PC. -М.: СОЛОН, 1995.

5. Херн, Дональд, Бейкер, М. Паулин Компьютерная графика и стандарт OpenGL: Пер. с англ. - М.: Издательский дом "Вильямс", 2005.

6. Г. Шилдт Си для профессиональных программистов. – М.: 1989.

7. Амерал Л. Машинная графика на языке Си: в 4-х т. – М.: СолСистем, 1992.

Программная реализация алгоритмов и методов, используемых, в системах управления роботами

3.1. Решение прямой задачи кинематики (ПЗК) для манипуляционного робота с вертикально-ангулярной кинематикой типа PUMA.

3.2. Решение прямой задачи кинематики (ПЗК) для манипуляционного робота с горизонтально-ангулярной кинематикой типа SCARA.

3.3. Решение прямой задачи кинематики (ПЗК) для трехзвенного робота УРТК с цилиндрической системой координат.

3.4. Решение прямой задачи кинематики (ПЗК) для трехзвенного робота УРТК с прямоугольной системой координат.

3.5. Решение обратной задачи кинематики (ОЗК) для манипуляционного робота с вертикально-ангулярной кинематикой типа PUMA.

3.6. Решение обратной задачи кинематики (ОЗК) для манипуляционного робота с горизонтально-ангулярной кинематикой типа SCARA.

3.7. Решение обратной задачи кинематики (ОЗК) для трехзвенного робота УРТК с цилиндрической системой координат.

3.8. Решение обратной задачи кинематики (ОЗК) для трехзвенного робота УРТК с прямоугольной системой координат.

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

Описание данных кинематических схем роботов и предложенных алгоритмов приведено во множестве книг, посвященных робототехнике, например, в учебном пособии для ВТУЗов под ред. И.М. Макарова «Робототехника и гибкие автоматизированные производства», М.: Высшая школа, 1986.

 

Библиографический список к задачам 3.1-3.9



1. Вержбицкий В.М. Основы численных методов: Учебник для вузов/В.М. Вержбицкий. - М.: Высш. шк., 2002.

2. Фу К., Гонсалес Р., Ли К. Робототехника: Пер. с англ. - М.: Мир, 1989.

3. Шахинпур М. Курс робототехники.-М.: Мир, 1990.

4. Кинематика: прямая и обратная задачи (начальные сведения).- http://robocraft.ru/blog/mechanics/756.html

Прикладные задачи.

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

4.2. Разработка программы, позволяющей найти на указанном жестком диске (например, C:) файл (файлы):

— по заданному имени (или шаблону, содержащему символы ‘?’ и ‘*’);

— по дате создания (указывается начальная и конечная даты для поиска);

— по размеру файла (указывается минимальный и максимальный размер файла в байтах).

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

Программа должна определить суммарный объем, занимаемый всеми найденными файлами и вывести полученное значение на экран монитора.

4.3. Разработка программы управления базой данных, содержащей информацию о студентах группы. Для каждого из студентов должны храниться:

— фамилия, имя и отчество студента;

— дата его рождения;

— сведения о сданных студентом зачетах (максимальное количество зачетов — 10) и датах их сдачи;

— сведения об экзаменационных оценках студента (максимальное количество экзаменов — 5) и датах их сдачи.

Максимальное количество студентов в группе — 20.

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

 

Таблица 1.

Выполняемая функция № варианта
Ввод имени файла с базой данных + + + +
Ввод, корректировку и удаление информации о студенте + + + +
Поиск информации в базе данных по заданным фамилии, имени и отчеству студента + + + +
Поиск информации о студентах, которым на момент поиска исполнилось заданное количество лет +      
Поиск информации о студентах, имеющих академические задолженности   +    
Поиск информации о студентах, сдавших сессию     +  
Сортировку базы данных по фамилиям студентов (в алфавитном порядке)       +
Вывод на экран монитора всей информации из базы данных + + + +
Вывод на экран монитора найденной информации из базы данных + + + +
Вывод на печатающее устройство всей информации из базы данных +   +  
Вывод на печатающее устройство найденной информации из базы данных   +   +

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

В начале работы программа должна создать новую базу данных, либо прочитать информацию из ранее созданной базы. Для размещения информации в оперативной памяти компьютера следует использовать динамическое распределение и освобождение памяти, выполняемое с помощью функций malloc, farmalloc, free, farfree. Память должна выделяться для ровно такого количества студентов, какое хранится в базе данных. При добавлении информации о новом студенте должны выделяться дополнительная память, а при удалении информации — память должна освобождаться.

Дополнительные требования: при организации хранения информации (даты, сведения о зачетах, экзаменах и т. д.) использовать структуры, а для хранения информации о группе студентов - массивы указателей на структуры.

4.4. Разработка программы, позволяющей просмотреть на экране монитора содержимое указанного файла в текстовом и в шестнадцатиричном виде (Hex Dump).

Имя просматриваемого файла передается программе в качестве параметра при ее вызове. Пример вызова программы (если имя загрузочного модуля view.exe) для просмотра файла с именем “myfile.doc”:

VIEW MYFILE.DOC

 

Размер файла может быть любым (в том числе и превышающем 65535 байт).

4.5. Разработка программы для сортировки содержимого файла. Файл имеет записеориентированную структуру. Количество записей в файле может быть любым.

При запуске программы в диалоговом режиме пользователь указывает:

— спецификацию файла;

— длину записи (в байтах);

— номера первого и последнего байта реквизита, по которому будет производиться сортировка;

— вид сортировки (по возрастанию, либо по убыванию значения, хранящегося в реквизите).

В результате сортировки программа должна создать новый файл с именем FILE.SRT, информация в котором будет упорядочена. При выполнении операций чтения/записи программа должна контролировать отсутствие ошибок. Если при выполнении операции была обнаружена ошибка, то программа должна вывести на экран монитора сообщение и завершить работу.

В разрабатываемом алгоритме сортировки следует стремиться к минимизации времени выполнения программы (т. е. к минимизации числа операций чтения /записи файла).

4.6. Разработка программы компьютерной игры. В качестве задания здесь могут быть выбраны, программная реализация которых требует использования средств машинной графики, либо решения логических задач. Так, например, студент может разработать программу TETRIS или какую-либо аналогичную по степени сложности.

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

4.8. Разработка программы, решающей задачу под названием «Ханойские башни» и графически иллюстрирующей ход решения. Задача состоит в следующем. Имеется три стрежня. На 1-ом - n колец разного диаметра, образующих пирамиду. Необходимо переложить кольца с 1-ого стержня на 3-ий таким образом, чтобы в процессе работы не встречалось ситуации, когда большее кольцо находится на меньшем. За один ход можно перекладывать только одно кольцо. Для решения задачи рекомендуется ознакомиться с механизмом рекурсивных функций.

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

4.10. Разработка калькулятора. Программа должна обеспечивать ввод пользователем с клавиатуры строки символов, заканчивающейся символом «Возврат каретки» (0x0D в шестнадцатиричной форме), далее осуществлять синтаксический разбор полученной строки, выделяя из нее такие операции, как “sin”, “cos”, “tg”, “ln”, “sqrt” (квадратный корень), “^” (возведение в степень), “*”, “/”, “+”, “-”, “(”, “)” и операнды (числа участвующие в операциях). Далее, в соответствии с полученным выражением, программе необходимо реализовать математические действия и вывести на экран результат.

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

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

4.13. Реализовать библиотеку функций для работы с матрицами, размером до 128x128. Библиотека должна включать в себя функции сложения, умножения матриц, скалярного умножения, инвертирования, определения детерминанта, левостороннего и правостороннего деления. Также необходимо реализовать функцию, отображающую на экран содержимое матрицы.

4.14. Написать программу, рисующую на экране окружность (по точкам) и реализующую возможность перемещения этой окружности по экрану в результате нажатия клавиш "Вверх", "Вниз","Вправо", "Влево". При нажатии тех же клавиш одновременно с клавишей "Shift" - должно быть реализовано перемещение окружности в соответствующую крайнюю позицию экрана. Клавиша "Home" - возврат в центр экрана. Радиус и цвет окружности получаются в качестве параметров командной строки - как числа.

4.15.Реализация компьютерной игры типа «Арканоид». По экрану летает шарик, отражающийся от верхней, левой и правой границы экрана. В нижней части экрана находится прямоугольник, перемещаемый стрелочками «влево», «вправо» и также способный отражать шарик. Если шарик падает вне зоны прямоугольника – игра прекращается.

4.16.Реализация программы, рисующей (в цвете) циферблат механических часов. Показываемое время соответствует реальному. Перемещение часовой и минутной стрелки осуществляется плавно, секундной – по делениям. По нажатию на клавиши «+», «-» часы изменяют свой размер. При нажатии стрелок на клавиатуре часы перемещаются по экрану.

4.17. От датчика случайных чисел сформировать две матрицы. Первая размером m × n, вторая размером r × s, а затем вычислить:

- произведение 2-х матриц;

- определители обеих матриц;

- транспонировать матрицу с большим по значению определителем.

Программа должна содержать главную функцию и две неглавных функции. Формирование матриц, печать матриц с сопроводительным текстом, а также печать значения определителей выполнить в главной функции. В неглавных функциях должны быть выполнены операции перемножения матриц и их транспонирование. Для обмена данными между функциями использовать указатели.

4.18.Методомполовинного деления и итераций (последовательных приближений) вычислить корень нелинейного уравнения при следующих исходных данных:

- исходное уравнение,

- Здесь - допустимое число итераций, - допустимая погрешность, - начальное приближение.

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

4.19.Дана система дифференциальных уравнений

При начальных условиях

аналитическое решение имеет вид:

Время окончания интегрирования .

При указанных условиях систему решить также численным методом Эйлера. Получить таблицы решений аналитическим и численным методом, задав шаг интегрирования, Шаг печати таблиц следует задать равным Программа должна содержать главную функцию и две неглавные функции. В неглавных функциях следует выполнить интегрирование системы уравнений, а в главной функции – задание условий для решения и печать таблиц.

4.20.Сформироватьмассивы объемом 1000, 5000 и 10000элементов, а затем выполнить сортировку методом стандартного обмена. Для контроля за сортировкой организовать выдачу на печать по 10 элементов из начала, середины и конца исходного и отсортированного массивов (отдельно для каждого массива). Сортировку выполнить в неглавной функции. Остальные действия – в главной.

 



©2015- 2019 stydopedia.ru Все материалы защищены законодательством РФ.