Advertisement
MrGhost75

LAB5_VAR3

Nov 22nd, 2019
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.66 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <iostream>
  3.  
  4.  
  5. using namespace std;
  6.  
  7.  
  8. int scalarProizv(int* array_1, int* array_2, int length) {
  9.     int scalar_proizv = 0;
  10.     for (int i = 0; i < length; i++) {
  11.         scalar_proizv += array_1[i]*array_2[i];
  12.     }
  13.     return scalar_proizv;
  14. }
  15. int maxScalarProizv(int a, int b, int c) {
  16.     int maximum = a;
  17.     if (a < b && b > c) maximum = b;
  18.     if (a < c && c > b) maximum = c;
  19.     return maximum;
  20. }
  21.  
  22. int _tmain(int argc, _TCHAR* argv[])
  23. {
  24.     setlocale(LC_CTYPE, "rus");
  25.  
  26.     unsigned const int n = 5;
  27.     int array1[n];
  28.     int array2[n];
  29.     int array3[n];
  30.  
  31.     // Задание координат векторов через консоль
  32.     cout << "Введите координаты первого вектора(целые числа): " << endl;
  33.     for (int i = 0; i < n; i++) {
  34.         cout << i + 1 << "-я координата: ";
  35.         cin >> array1[i];
  36.     }
  37.     cout << "Введите координаты второго вектора(целые числа): " << endl;
  38.     for (int i = 0; i < n; i++) {
  39.         cout << i + 1 << "-я координата: ";
  40.         cin >> array2[i];
  41.     }
  42.     cout << "Введите координаты третьего вектора(целые числа): " << endl;
  43.     for (int i = 0; i < n; i++) {
  44.         cout << i + 1 << "-я координата: ";
  45.         cin >> array3[i];
  46.     }
  47.  
  48.     // Вывод скалярного произведения всех пар векторов
  49.     cout << "Скалярное произведение 1-го и 2-го векторов = " << scalarProizv(array1, array2, n) << endl;
  50.     cout << "Скалярное произведение 1-го и 3-го векторов = " << scalarProizv(array1, array3, n) << endl;
  51.     cout << "Скалярное произведение 2-го и 3-го векторов = " << scalarProizv(array2, array3, n) << endl;
  52.    
  53.    
  54.     int scalar_1_2 = scalarProizv(array1, array2, n);
  55.     int scalar_1_3 = scalarProizv(array1, array3, n);
  56.     int scalar_2_3 = scalarProizv(array2, array3, n);
  57.     int max_scalar = maxScalarProizv(scalar_1_2, scalar_1_3, scalar_2_3);
  58.    
  59.  
  60.     // Вывод максимального скалярного произведения из 3-х различных пар векторов и вывод соответствующих пар векторов в консоль.
  61.     if (max_scalar == scalar_1_2) {
  62.         cout << "Найбольшее скалярное произведение векторов у пары векторов 1 и 2. Их скалярное произведение = " << scalar_1_2 << endl;
  63.         cout << "Вектор №1:" << endl;
  64.         for (int i = 0; i < n; i++) {
  65.             cout << array1[i] << " ";
  66.         }
  67.         cout << "\nВектор №2:" << endl;
  68.         for (int i = 0; i < n; i++) {
  69.             cout << array2[i] << " ";
  70.         }
  71.     }
  72.     if (max_scalar == scalar_1_3) {
  73.         cout << "Найбольшее скалярное произведение векторов у пары векторов 1 и 3. Их скалярное произведение = " << scalar_1_3 << endl;
  74.         cout << "Вектор №1:" << endl;
  75.         for (int i = 0; i < n; i++) {
  76.             cout << array1[i] << " ";
  77.         }
  78.         cout << "\nВектор №3:" << endl;
  79.         for (int i = 0; i < n; i++) {
  80.             cout << array3[i] << " ";
  81.         }
  82.     }
  83.     if (max_scalar == scalar_2_3) {
  84.         cout << "Найбольшее скалярное произведение векторов у пары векторов 2 и 3. Их скалярное произведение = " << scalar_2_3 << endl;
  85.         cout << "Вектор №2:" << endl;
  86.         for (int i = 0; i < n; i++) {
  87.             cout << array2[i] << " ";
  88.         }
  89.         cout << "\nВектор №3:" << endl;
  90.         for (int i = 0; i < n; i++) {
  91.             cout << array3[i] << " ";
  92.         }
  93.     }
  94.  
  95.  
  96.     cout << "\n\n";
  97.     system("pause");
  98.     return 0;
  99. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement