Операции с матрицами

Автор работы: Пользователь скрыл имя, 11 Июня 2015 в 16:44, курсовая работа

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

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

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

Введение ……...…………………………………………….……... 3
Постановка задачи, описание программы………………….…… 4
Объектно-ориентированный анализ и проектирование..….…… 6
Программная реализация на С++………………………………....7
4.1 Краткая характеристика программной среды………………..7
4.2 Структура программы…………………………………………8
4.3 Инструкция пользователю…………………………………….8
Заключение………………………………………………………...11
Список используемой литературы ……………………………...12
Приложение 1 (листинг программы) ……………………….…..13

Файлы: 1 файл

курс работа.doc

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

 

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАЦИИ

 

 

ЮЖНО-РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ

 ТЕХНИЧЕСКИЙ  УНИВЕРСИТЕТ

(НОВОЧЕРКАССКИЙ ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ)

 

 

            ФАКУЛЬТЕТ                Информационных технологий и управления

КАФЕДРА                      Автоматизированные системы управления

СПЕЦИАЛЬНОСТЬ    Прикладная информатика в экономике

 

 

 

 

КУРСОВАЯ РАБОТА

 

ПО КУРСУ:   “Объектно-ориентированное  программирование”

                                    ____________________________________________

 

 

НА ТЕМУ:     «Операции с матрицами»________________________

 

                               ___________________________________________________

 

                               ___________________________________________________

 

 

 

 

Выполнил студент ____ курса, группы____  _______________________

                                                                                    ФИО

 

 

 

Принял                      _________________________________________________

                                       Должность                   ФИО

 

Оценка ______________

 

 

«____»______________        г. _____________________

                                                                                                 Подпись

 

 

 

 

Новочеркасск 2010 г.

 


СОДЕРЖАНИЕ

  1. Введение ……...…………………………………………….……... 3
  2. Постановка задачи, описание программы………………….…… 4      
  3. Объектно-ориентированный анализ и проектирование..….…… 6
  4. Программная реализация на С++………………………………....7

4.1 Краткая характеристика программной  среды………………..7

4.2 Структура программы…………………………………………8

4.3 Инструкция пользователю…………………………………….8

  1. Заключение………………………………………………………...11
  2. Список используемой литературы ……………………………...12     
  3. Приложение 1 (листинг программы)  ……………………….…..13 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. ВВЕДЕНИЕ

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

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

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

Одним из видов таких факторов «компьютерного внедрения» - могут явиться всевозможные компьютерные автоматизации. Многие программисты занимаются автоматизацией научного процесса. Тема моего курсового проекта «Операции с матрицами». Написанная программа должна помочь студенту либо кому-то другому при решении проблем, связанных с расчетами данных, представленных в виде матриц (двумерных массивов). Данный курсовой проект является отчетной работой по курсу Объектно-ориентированное программирование и написан на языке программирования С++ (компилятор Turbo C/Borlan C).

2.ПОСТАНОВКА ЗАДАЧИ

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

Программа должна быть написана на языке программирования класса Borland или Turbo С. Игра должна иметь интуитивно понятный интерфейс и простую логику работы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. ОПИСАНИЕ  ПРОГРАММЫ

Алгоритм программы

 

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

      Рисунок 1.


                                             Начало


                                              «Введите тип


                                            чисел матрицы»

 

                                              

                                            «выбрать

                                              Действие»

 

 

                                          выбор действия

 

                                                                            сложить

                                                                            матрицы

 

 

                                                                             вычесть

                                                                            матрицы

 

                                                                         перемножить 

                                                                            матрицы

 

                                                                            проверить 

                                                                          матрицы на 

                                                                            равенство

 

                                                                           умножить

                                                                             матрицу

                                                                            на число

 

                                                                           матрицу в

                                                                             степень

 

                                                                      транспонировать

                                                                            матрицу

 

 

                                                                                                        конец

 

  1. ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАлИЗ И ПРОЕКТИРОВАНИЕ

 

Работа программы основана на определении класса Tomat. Его описание приведено ниже, в диаграмме.

 


                                               Tomat


                               +Tchto a [10][10];

                                      +int str,stlb;

                            


                             +vv(ввод матриц для исследования)

                            +write_to(вывод результата на экран,

                            предложение записать результат в файл)

                             + write_to_file(запись результата в файл)

                             + trans(транспонирование матрицы)

                             + Mult(умножение матрицы на число)

                             +step(возведение элементов матрицы

                                                                       в степень)

                             +rav(проверка матриц на равенство)


 


 

 

                                                    OTVET.txt

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. ПРОГРАММНАЯ  РЕАлИЗАЦИЯ  НА С++

 

4.1 Краткая характеристика программной  среды

C++ был разработан сотрудником  научно-исследовательского центра AT&T Bell Laboratories (Нью-Джерси, США) Бьярном Страуструном » 1979 году. Первоначальное название "С с классами" было изменено на C++ в 1983 году. Начиная с 1980 года C++ претерпел две существенные модернизации: в 1985 к 1990 годах. Последняя, третья модернизация связана с процессом стандартизации C++. Несколько лет назад началась работа по созданию единого международного стандарта по C++. Для этой цели был сформирован объединенный комитет по стандартизации ANSI (American National Standards Institute, Американский национальный институт стандартов) и ISO 'International Standards Organization, Международная организация по стандартам) для языка C++. Первый рабочий проект указанного стандарта был представлен 25 января 1994 года. Комитет ANSI/ISO по C++ (членом которого являлся автор этой книги Герберт Шилдт) фактически сохранил все основные черты языка, заложенные туда еще Страуструном и добавил несколько новых ;шструментов. В своей основе этот первый проект лишь отражал положение, в котором в то время находился язык C++.

C++ — это попытка решения разработчиками  языка С задач объектно-ориентированного программирования (Object Oricnied Programming. OOP). Построенный на твердом фундаменте С, C++ помимо OOP поддерживает множество других полезных инструментов, не жертвуя при этом ни мощью, ни элегантностью, ни гибкостью С. C++ уже стал универсальным языком для программистов всего мира, языком, на котором будет написано следующее поколение высокоэффективного программного обеспечения. Это единственный серьезный язык, который просто обязан знать любой уважающий себя профессиональный программист.

Программа написана под систему Turbo C. Turbo C – это древняя программа, позволяющая реализовывать консольные проекты.

 

4.2. Структура программы

В программе описан шаблонный класс Tomat, который в зависимости от запроса пользователя может принимать как целые, так и вещественные значения. Параметры класса – матрица STRхSTLB элементов и счетчики. Методы класса – функции vv, write_to, write_to_file,  trans,  Mult.step, rav. Существует переопределение операторов «+», «–«, «*». В основной функции реализован бесконечный цикл, который в зависимости от вводимой команды совершает действия и выход из программы.

 

4.3.Инструкция пользователю

Открываем программу, сразу видим вопрос – в каком виде будет представлена ваша матрица(целый, вещественный). См. рисунок 2.

Выбираем нужный ключ.

Рисунок 2.

Затем предлагается выбрать действие. См. рисунок 3.

Рисунок 3.

Выбираем нужное действие, например, «сложить матрицы». Предлагается ввести матрицы(построчно). См рисунок 4.

Рисунок 4.

Затем на экран выводится ваша матрица и предлагается ввести следующую.

Рисунок  5.

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

Рисунок 6.

Рисунок 7.

Если вы выбрали запись в файл, то результат можете увидеть в файле OTVET.txt.

Рисунок 8.

Далее вам снова будем предложено выбрать действие. См. рисунок 1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5. ЗАКЛЮЧЕНИЕ

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

СПИСОК ЛИТЕРАТУРЫ

1. Кетков Ю.Л., Кетков А.Ю. Практика  программирования: Бейсик, Си, Паскаль. Самоучитель. – СПб.:БХВ-Петербург, 2002. – 480 с.

2. Шид Г., Самоучитель C++. – СПб.:БХВ-Петербург, 2007. – 688 с.

3. Подбельский В.В. Язык Си++. –  М.: Финансы и статистика, 2000. – 560 с.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение  А (листинг программы)

#include <conio.h>

#include <iostream.h>

#include <stdio.h>

#include <stdlib.h>

#include <FCNTL.H>

#include <string.h>

#include <math.h>

 

template <class Tchto> class Tomat{

   public:

   Tchto a [10][10];

   int str,stlb;

   Tomat() {int i,j;

    for(i=0; i<10; i++)

Информация о работе Операции с матрицами