|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.05.2018, 19:33 | #1 |
Пользователь
Регистрация: 30.11.2016
Сообщений: 23
|
Блок-схема
Друзья, доброго вам вечера. Необходима помощь в создании блок-схемы для данного кода. Буду вечно благодарен. ЗА ДЕНЬГИ!
#include <iostream> // подключаем стандартные библиотеки + библиотеку мат. функций. #include <cmath> #include <locale> #include <cstdlib> using namespace std; template<class T> class vector3d // класс трехмерного вектора { public: vector3d(); ~vector3d(); void SetVector(const char * const caption); // функция позволяет ввести координаты вектора void display(const char * const caption); // функция выводящая вектор на экран void summ(vector3d *vec1, vector3d *vec2); // получает вектор суммы void razn(vector3d *vec1, vector3d *vec2); // получает вектор разности void dlina(vector3d *vec1); // вычисляет длину вектора void scalar(vector3d *vec1, vector3d *vec2); // скалярно умножает вектора private: T x, y, z; // сами координаты }; template<class T> vector3d<T>::vector3d() // конструктор класса { x = T(0); y = T(0); z = T(0); } template<class T> vector3d<T>::~vector3d() // пустой деструктор { } template<class T> void vector3d<T>::SetVector(const char * const caption) { cout << caption << endl; cout << "X = "; cin >> x; // вводим координаты вектора cout << "Y = "; cin >> y; cout << "Z = "; cin >> z; } template<class T> void vector3d<T>::summ(vector3d *vec1, vector3d *vec2) { x = vec1->x + vec2->x; // складываем координаты векторов y = vec1->y + vec2->y; z = vec1->z + vec2->z; } template<class T> void vector3d<T>::razn(vector3d *vec1, vector3d *vec2) { x = vec1->x - vec2->x; // вычитаем координаты векторов y = vec1->y - vec2->y; z = vec1->z - vec2->z; } template<class T> void vector3d<T>:lina(vector3d *vec1) { cout << "Dlina vektora:" << endl; // ниже мы вычисляем по фрмуле длину вектора float u = sqrt((vec1->x * vec1->x) + (vec1->y * vec1->y) + (vec1->z * vec1->z)); cout << u << endl; } template<class T> void vector3d<T>::scalar(vector3d *vec1, vector3d *vec2) { float dot = (vec1->x * vec2->x) + (vec1->y * vec2->y) + (vec1->z * vec2->z); // строчка выше умножает скалярно два вектора cout << "Rezultat skaliarnogo peremnozenia dvuh vektorov:" << endl << dot << endl; } template<class T> void vector3d<T>:isplay(const char * const caption) { cout << caption << endl << "Vektor s koordinatami:" << endl << "X = " << x << endl << "Y = " << y << endl << "Z = " << z << endl; } int main(int argc, char *argv[]) { locale::global(locale("")); // обьявляем экземпляры класса, у нас 2 вектора для работы и один для результатов vector3d<float> *vector1 = new vector3d<float>; vector3d<float> *vector2 = new vector3d<float>; vector3d<float> *result_vector = new vector3d<float>; int p; // переменная для выбора в меню далее само меню while (true) { cout << "------------------------MENU-------------------------" << endl << "\t1 - Slozenie dvuh vektorov" << endl << "\t2 - Raznostb dvuh vektorov" << endl << "\t3 - Vuchitatb dliny vektora" << endl << "\t4 - Skaliarnoe prozvedenie dvuh vektorov" << endl << "\t0 - Vuhod iz programmu" << endl << "-----------------------------------------------------" << endl; cin >> p; system("cls"); // очистим экран switch (p) // смотрим что выбрали в меню и вызываем соответствующие функции { case 1: vector1->SetVector("Vvedite koordinatu vektora 1:"); vector2->SetVector("Vvedite koordinatu vektora 2:"); result_vector->summ(vector1, vector2); result_vector->display("-----------Resultat----------"); break; case 2: vector1->SetVector("Vvedite koordinatu vektora 1:"); vector2->SetVector("Vvedite koordinatu vektora 2:"); result_vector->razn(vector1, vector2); result_vector->display("-----------Resultat----------"); break; case 3: vector1->SetVector("Vvedite koordinatu vektora:"); result_vector->dlina(vector1); break; case 4: vector1->SetVector("Vvedite koordinatu vektora 1:"); vector2->SetVector("Vvedite koordinatu vektora 2:"); result_vector->scalar(vector1, vector2); break; case 0: exit(0); break; } } system("PAUSE"); return EXIT_SUCCESS; } Последний раз редактировалось pocheto; 21.05.2018 в 19:38. |
21.05.2018, 20:07 | #2 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
pocheto, обращайтесь e-mail: informatik101@mail.ru vk.com/alexcoder1
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
программирование блок схема. пожалуйста, нарисуйте блок схему. очень срочно нужно! | Bogdan96 | Помощь студентам | 4 | 22.09.2015 09:33 |
блок-схема! | luser-user | Помощь студентам | 2 | 07.01.2013 20:27 |
блок схема | levis200 | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 23.07.2011 08:40 |
Схема алгоримта (блок схема) на задачу по Паскалю | LINCHAK | Помощь студентам | 0 | 22.10.2010 16:56 |
Блок схема алгоритма программы и схема взаимодействия модулей. | Lazio | Фриланс | 3 | 02.12.2009 23:10 |