Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

B.setElem(i,Val); // можно так




B[i]=Val; // а можно и так

}

cout<<"Массив А"<<endl<<A<<endl<<endl;

cout<<"Массив B"<<endl<<B<<endl<<endl;

C=A+B;

cout<<"Массив C=A+B"<<endl<<*C<<endl<<endl;

delete C;

CArr D(N,"D");

D=A-B;

cout<<"Массив D=A-B"<<endl<<D <<endl<<endl;

cout<<"Массив A-B" <<endl<<(A-B)<<endl<<endl;

}

Варианты заданий

В приведенных ниже вариантах заданий под векторами подразумеваются одномерные массивы, а под матрицами – двумерные.

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

Выбор варианта задания согласуйте с преподавателем.

Таблица 1

Варианты заданий

Вариант Задание
  Реализовать операции сложения и вычитания двух прямоугольных матриц одинакового размера
  Реализовать операцию транспонирования прямоугольной матрицы. Например, если для этой операции выбрать знак ~, то программа должна позволять вычислять выражения вроде A=~B. Понятно, что если матрица А имеет размер 3х4, то матрица В должна иметь размер 4х3
  Реализовать операцию умножения двух прямоугольных матриц. Две матрицы можно перемножить, если число столбцов первой матрицы равно числу строк второй. Например, если первая матрица имеет размер 3х4, а вторая 4х2, то получим результирующую матрицу 3х2
  Реализовать операцию умножения матрицы на заданную величину, а также сложения матрицы с заданной величиной
  Реализовать операцию умножения матрицы на вектор. Например, если имеется матрица размером 3х4 и вектор размером 4, то в результате должен получиться вектор размером 3. Матрица и вектор должны быть реализованы как разные классы
  Реализовать операции сложения и умножения векторов, для чего необходимо разработать два разных класса: один с данными вещественного типа, а другой – целого
  Реализовать операцию прямого (внешнего) произведения двух прямоугольных матриц одинакового размера С=А*В. Элементы матрицы С являются произведением соответствующих элементов матриц А и В: С[i][j]=A [i][j]*B[i][j]
  Реализовать операцию нормирования вектора путем приведения его значений к диапазону от -1 до +1
  Реализовать операцию умножения матрицы на вектор. Например, если имеется матрица размером 3х4 и вектор размером 4, то в результате должен получиться вектор размером 3
  Реализовать операции вычитания и деления векторов и проиллюстрировать возможность вычисления выражений вроде a=(b-c)/d, где a, b, c и d – векторы
  Реализовать операции сложения и вычитания двух треугольных матриц одинакового размера

 


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

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

Martin Golding

Цель работы – работа! (4+4 час.). Работа состоит из двух частей, каждая из которых должна быть сдана отдельно!

Постановка задачи

Шаг 1. Сгенерируйте приложение SDI.

Из меню File в Visual C++ выберите New Project, в дереве Project Types выберите MFC, а в Templates – MFC Application. Не устанавливайте переключатель “Create directory for solution”. Присвойте проекту имя (в данном примере выбрано имя Gen) и щелкните ОК (рис. 1). В списке Resource language не забудьте выбрать элемент со значением Русский.

 

 
 

Рис.1. Выбор мастера для создания каркаса приложения

 

Среда MVS 2010 выведет следующее окно (рис. 2), в правой части которого перечислены заданные по умолчанию свойства проекта. Значения всех свойств проекта установите такими, как они выбраны на рис. 2.

 
 

Рис. 2. Тип приложения

 

На вкладках Compound Document Support, Document Template Properties и Database Support оставьте все без изменений, а на вкладке User Interface Features выберите радиокнопку Use a classic menu и Use a classic docking toolbar (рис. 3).

 

 
 

Рис. 3. Свойства пользовательского интерфейса

 

На вкладке Advanced Features рекомендую снять все переключатели, а на вкладке Generated Classes в качестве базового класса вида выберите обязательно CFormView.

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

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...