Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 40028

.doc
Скачиваний:
3
Добавлен:
30.04.2022
Размер:
171.52 Кб
Скачать

ГОУВПО «Воронежский государственный технический университет»

Кафедра «Конструирование и производство радиоаппаратуры»

АЛГОРИТМЫ И ПРОГРАММЫ АВТОМАТИЗАЦИИ

ИНЖЕНЕРНЫХ РАСЧЕТОВ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению курсового проекта по дисциплине

«Информатика» для студентов специальности 210201 «Проектирование и технология РЭС»

очной и заочной форм обучения

Воронеж 2008

Составители: канд.техн.наук И.А. Новикова,

ассистент В.Н. Хорошилов

УДК 621.3.049

Алгоритмы и программы автоматизации инженерных расчетов. Методические указания к выполнению курсового проекта по дисциплине «Информатика» для студентов специальности 210201 «Проектирование и технология РЭС» очной и заочной форм обучения/ ГОУВПО «Воронежский государственный технический университет»;

сост. И.А. Новикова, В.Н. Хорошилов, 2008. 23с.

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

Предназначены для студентов специальности 210201 «Проектирование и технология РЭС» по курсу «Информатика».

Методические указания подготовлены в электронном виде в текстовом редакторе MS Word и содержатся в файле

Библиогр.: 3 назв.

Рецензент д-р техн.наук, профессор О.Ю. Макаров

Ответственный за выпуск д-р техн.наук, проф.

А.В. Муратов

Издается по решению редакционно-издательского совета Воронежского государственного технического университета.

© ГОУВПО «Воронежский государственный

технический университет», 2008

1 Общие указания по выполнению курсового проекта

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

1.2 В результате выполнения курсового проекта студенты должны уметь применять полученные знания для:

формализации и разработки алгоритмов решения задач по обработке структурированных данных;

выбора языка программирования;

организации диалогового взаимодействия с ЭВМ в програм­ме.

1.3 В процессе выполнения курсового проекта студентам необходимо овладеть навыками:

составления экономичных алгоритмов решения инженерных задач:

оценки эффективности разработанных алгоритмов и программ;

отладки программ в операционной среде ОС RSX ;

разработки программной документации.

2 Содержание задания и этапы выполнения курсового проекта

Задание на курсовой проект должно содержать разработку ал­горитма обработки сложноорганизованных данных (числовых либо текстовых), включая процедуры ввода-вывода, поиска и обновле­ния данных, а также реализации традиционных для инженерных рас­четов численных методов. Разработанный алгоритм должен быть записан на языке высокого уровня, отлажен на ЭВМ с получени­ем результатов расчета. Процесс выполнения курсового задания должен включать следующие этапы.

2.1 Формализация задачи

На основании изученных способов организации данных и представления информации в памяти ЭВМ, осуществляется выбор струк­туры и типов массивов данных. Формулируется математическая постановка задачи, то есть математические соотношения и формулы, необходимые для алгоритмизации расчета.

2.2 Разработка алгоритма решения задачи

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

2.3 Написание программы

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

2.4 Отладка и тестирование программы

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

2.5 Запуск программы и анализ результатов

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

3 Организация выполнения курсового проекта

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

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

График выполнения курсового проекта составляется с учетом параллельного преподавания учебной дисциплины; правильно выбранный график выполнения курсового проекта способствует закреплению ранее получениях знаний и успешному выполнению всех эта­пов работы.

4 Задание на курсовой проект

Задание на курсовой проект составляет преподаватель-руководитель курсового проекта. Текст задания подписы­вается руководителем, копия задания остается на кафедре.

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

5 Требования к оформлению пояснительной записки и графической части курсового проекта

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

Пояснительная записка должна содержать следующие разделы: введение; основные разделы, посвященные описанию решения постав­ленной задачи; заключение; список используемых литературных ис­точников и приложения.

Во введении необходимо отразить особенности предмета исследования, а именно, описать характер задания курсовой работы, обо­сновав целесообразность применения ЭВМ для её решения.

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

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

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

отображению и описанию структурной схемы алгоритма, которое должно быть выполнено в виде подробных комментариев к отдель­ным блокам схемы;

обоснованию необходимости организации диалогового взаимодействия с ЭВМ для решения задачи курсового проекта и разработке сценария диалога;

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

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

описание применения программы, в котором указывается назначение программы, её основные характеристики (количество операторов в программе и время счета), а также приводятся условия, необходимые для работа программы (тип ЭВМ, операционная система, требуемый набор периферийных устройств, перечень библиотечных подпрограмм и встроенных функций, используемых программой, с указанием назначения и формы вызова, объем требуемой памяти);

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

описание программы, включающее информацию о наличии под­программ и их взаимодействии с главной, или вызывающей програм­мой;

программа и методика испытаний программы, в которой должны найти отражение основные этапы прохождения задачи на ЭБМ, ход от­ладки составленной программы с приведением перечня выявленных ошибок, а также описание контрольного примера (входных данных, позволяющих проверить правильность работы программы, то есть осуществить её тестирование).

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

Список литературы (список использованных источников) должен содержать те литературные источники, которые были использованы при выполнений курсовой работы. Обязательны ссылки в тексте на каждое название, включенное в список.

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

В пояснительной записке к курсовой работе следующей последовательности должны содержаться:

титульный лист;

задание на курсовую работу;

лист «Замечания руководителя»;

оглавление (содержание);

введение;

основной текст;

заключение;

список литературы;

приложение.

Текст пояснительной записки объемом не более 20-25 страниц, должен быть написан разборчиво, все страницы пронумерованы. Все рисунки должны быть аккуратно выполнены (допускается выполнение в карандаше).

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

6 Защита курсового проекта

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

7 Примерный перечень заданий на курсовой проект

7.1 Задана действительная квадратная матрица порядка М. Получить целочисленную квадратную матрицу того же порядка, в кото­рой элемент равен 1, если соответствующий ему элемент исходной матрицы больше ее элемента, находящегося в той же строке на главной диагонали; и равен 0 в противном случае.

7.2 Задана действительная квадратная матрица А порядка n. Построить и вывести на печать матрицу:

7.3 На квадратном листе клетчатой бумаги размером 8x8 кле­ток нарисовано несколько прямоугольников, которые не соприкаса­ются и не накладываются друг на друга. Задана целочисленная квадратная матрица порядка 8, в которой элемент р вен 0, если клетка принадлежит прямоугольнику и отличен от 0 в противном случае. Задана последовательность из 5 случайных чисел p1, p2, p3, p4, p5. Если p1<p2>p3<p4>p5, то заменить четвертую стро­ку матрицы нулям. Определить количество прямоугольников в но­вой матрице.

7.4 Задана квадратная матрица А порядка М. Сформировать последовательность из М2 чисел, полученную из строк матрицы А. Заменить полученной последовательности 0 на I и I на 0, после чего найти в последовательности В самый длинный отрезок Вр, Вр+т…, Вр+к, для которого Вр<Bp+1>Bp+2<…>Bp+к.

7.5 Задано число n и последовательность А чисел a1, a2,…,an. Получить квадратную матрицу порядка n:

7.6 Задан одномерный массив В иэ 121 элемента, в котором хранится текст из 121 буквы. Зашифровать исходный текст следую­щим образом:

в зависимости от величины случайного числа Р (Р больше 0.З) , все символы ‘А’ в тексте заменить звездочками;

записать текст в квадратную матрицу порядка II, а затем прочитать по спирали, начиная с центра, то есть с элемента строки и 6-го столбца матрица. Предусмотреть возможность расшифровки текста.

7.7 Задана действительная квадратная матрица порядка 2n, получить новую матрицу, переставив блоки размера n*n следующим образом:

А) Б) В)

Г)

7.8 Заданны две действительные матрицы размера m*n. По сотым долям элементов матриц сформировать две целочисленные матрицы. Построить послендовательность bi ,…, bm, где bi=1, если все элементы i-x строк обеих матриц отличны от 0 и 1, и bi=0 в противном случае.

7.9 Задана действительная квадратная матрица А порядка n и вектор из М элементов В. Найти минимальный и максимальный элементы вектора В, заменить элементы главной диагонали мат­рицы А на BMIN, побочной диагонали - на BMAX, а на пересечений главной и побочной диагоналей поместить 0.

7.10 Заданы квадратные матрицы А1, А2, … , Ак. Порядок матрицы Ai равен 3i, при i>1 имеет место

Аi =

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

7.11 Задано число С и квадратная матрица порядка n. Элементы матрицы, лежащие под главной диагональю, случайными числами. Построить одномерный массив аi, … , аn, где аi - это сумма элементов i - й строки матрицы, расположенных за первым отрицательным элементом этой строки. Если все элементы в строке положительные, ai=C.

7.12 Заданы две действительные матрицы размера n*m. Составить две целочисленные матрицы по первым значащим цифрам элементов исходных матриц. Найти последовательность из нулей и единиц такую, что её элемент равен 1, когда все элементы соот­ветствующей строки первой матрицы больше элементов той же стро­ки второй матрицы, и равен 0 в противном случае.

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

7.14 Задана квадратная матрица порядка 2n. Найти минимальный и максимальный элементы в каждом блоке матрицы размера n*n и заменить их на -7 и 7, соответственно. Вывести на печать блок, в котором эти два числа стоят ближе друг к другу, чем в других блоках матрицы.

7.15 Задана действительная матрица размера n*m. Найти номер последней по порядку строки, содержащей К чисел, боль­ших р, где р - случайное число, а в первой такой строке все нулевые элементы заменить на единицы.

7.16 Задана квадратная матрица А порядка n. Построить последовательность b1, b2, … , bn по правилу:

а) Если в i - й строке матрицы А элемент, принадлежащий главной диагонали меньше р, р - случайное число, то , иначе bi=0;

б) Если первый и последний элементы I - й строки матрицы А больше р, то , иначе bi=7i;

в) Если сумма элементов i - й строки матрицы А четное число;

г) Если произведение элементов I – й строки равно одному из случайных чисел р1, р2, … ,рn.

д) Если максимальный или минимальный элемент i - й строки матрицы А принадлежит интервалу (р1, р2), где р1, р2 - случайные числа;

е) Если максимальный элемент i - й строки матрицы А принадлежит главной диагонали;

ж) Если в i - й строке матрицы А элемент, главной диагонали, меньше рi;

7.17. Заданы две действительные матрицы размера m*n. Сформировать целочисленные матрицы по сотым долям соответствующих элементов исходных матриц. Найти вектор b1, b2, … , bm, составленный из скалярных произведений строк целочисленных матриц.

7.18 Задана квадратная матрица порядка n. Найти максимальный элемент в заштрихованной области и минимальный - в незаштрихованной области;

а) б) в)

г) д) е)

7.19 Задана квадратная матрица порядка n. Найти произведение элементов матрицы А, расположенных в заштрихован­ной области и сумму элементов незаштрихованной области. Вариан­ты а), б), в), г), д), е) соответствуют рисункам задания 7.18.

7.20 Задана действительная матрица размера n*m. Построить матрицу той же размерности, если каждый элемент новой матрицы равен наибольшему элементу в заштрихованной области:

7.21 Задана действительная матрица размера n*m. Построить матрицу той же размерности, если каждый элемент новой матрицы равен наименьшему_элементу в заштрихованной области.

7.22 Задана действительная матрица размера n*m. Построить матрицу той же размерности, если каждый элемент новой матрицы равен сумме элементов в незаштрихованной области. Вариан­ты a), б), в), г) соответствуют рисункам задания 7.20.

7.23 Задана действительная матрица размера n*m. Построить матрицу той же размерности, если каждый элемент новой матрицы равен произведению элементов в незаштрихованной области. Варианты а), б), в), г) соответствуют рисункам задания 7.21.

7.24 Задана действительная квадратная матрица В порядка 3n. Получить новую матрицу, переставляя ее блоки размера n*n следующим образом:

а) поменять местами блок с минимальной суммой элементов на главной диагонали в центральным.

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

в) попарно поменять местами все соседнее по горизонтали блоки.

г) попарно поменять местами все соседнее по вертикали блоки;

д) поменять местами блок, все элементы которого меньше р, где р - случайное число, с левым верхним блоком;

е) поменять местами блок, содержащий наибольшее число элемен­тов, больших р, р - случайное число, с правым нижним блоком исходной матрицы.\7.25 Задана квадратная матрица А порядка 2n. Получить но­вую матрицу, поменяв местами блок, содержащий минимальный элемент. 7.26 Заданы три последовательности чисел: r1, r2, … , rn, х1, х2, … ,хn, y1. Выяснить, есть ли на плоскости точка, принадлежащая всем кругам С1, С2, … , Сn, где Ci имеет центр в точке с координатами (xi, yi) и радиус ri, i=1,n.

7.27. Задана матрица размере 2*n, задающая n точек на плоскости, (b1k? B2k) - координата К - й точки. Проверять, есть ли среди заданных точек точка, находящаяся на одинаковом расстоя­нии от I- й и n - й точек. Вывести на печать её номер и величину расстояния.

7.28 Задана последовательность 2n чисел, получить целочисленное последовательность, заменяя элементы исходной последовательности на их десятые доли. Каждая пара членов последовательности задает координаты точки (xi, yi). Найти среди заданных такие, которые образуют вершины квадратов.

7.29 Задана символьная матрица размера n*n. Найти ко­личество символов '* ' в каждой строке – к1, к2, … , кn.

7.30 Задана действительная квадратная матрица порядка n. Найти наибольший элемент на главной и побочной диагоналях и по­менять его местами с элементом, стоящим на пересечении диагоналей. Если n - четное число, то под пересечением диагоналей понимается четыре соседних элемента.

7.31 Задана действительная матрица размера n*(n+1), действительные числа а1, … ,аn+1, в1, … , вn+1, натуральные числа р, q (р≤ n, q≤ n+1). Получить матрицу размера (n+1)*(n+2) вставкой после строки с номером р данной матрицы новой строки с элементами а1, а2, … , аn+1 и последующей вставкой после столбца с номером q нового столбца с элементами в1, … , аn+1.

7.32 Задана квадратная матрица порядка n и последова­тельность чисел а1, а2, … , аm. Заменить нулями в матрице те элементы с четной суммой индексов, для которых имеются равные среи а1, а2, … , аm.

7.33 Задана матрица размера n*m. Построить две матрицы А и В по правилам:

перестановкой столбцов первого с последним, второго с предпоследним и т.д.

перестановкой строк первой с последней, второй с пред­последней и т.д.

7.34 Задана действительная квадратная матрица порядка n. Найти сумму элементов в заштрихованной области и наибольший элемент в незаштрихованной области:

А) Б) В) Г)

7.35 Задана матрица размера n*m, целые числа k, l (1≤k≤n, 1≤l≤n). Преобразовать матрицу так, чтобы строка с исходным номером k непосредственно следовала за строкой с исходным номером l, сохранив прядок следования остальных строк (k≠l).

7.36 Задано целое нечетное число n. Получить целочислен­ную квадратную матрицу порядка n, элементами которой является числа I, 2, ... , n^2, расположенные в ней по спирали.

7.37 Задана действительная квадратная матрица порядка n. Получить последовательность из n^2 элементов, полученную при чтении данной матрицы по спирали.

7.38 Задана последовательность n^2 элементов. Получить квадратную матрицу порядка n, элементами которой являются эле­менты исходной последовательности.

7.39 Задана последовательная матрица размера n*m. Найти произведение элементов матрицы в заштрихованной и в незаштрихованной области:

А) Б) В)

Г)

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

7.40 Задана квадратная матрица n порядка и целое число. Найти и вывести на печать Ак.

7.41 Задана квадратная матрица порядка n и целое число к. Получить матрицу Е+А+А^2+…+А^к+А^к-1, где Е - еденичная матрица порядка n.

7.42 Задана квадратная матрица порядка m, целое число n и действительные числа р0, р1, … , рn. Получить матрицу рnА^n+рn-1А^n-1+…+p0E, где E – еденичная матрица порядка m.

7.43 Задана матрица А размера m* n. Получить транспонированную матрицу А^т и построить матрицу В:

B=AA^т

7.44 Задан одномерный символьный массив не более чем из n элементов. Определить, содержит ли он символы, отличные от букв и пробела. Найти наибольшее количество цифр, идущих в нем подряд.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]