Advertisement
fabis_sparks

Untitled

May 25th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.54 KB | None | 0 0
  1. // Kursovaya.cpp: определяет точку входа для консольного приложения.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <conio.h>
  7. #include <cstdlib> // Для использования функций rand() и srand()
  8. #include <ctime>   // для использования time()
  9. #include <vector>
  10. using namespace std;
  11.  
  12. int main()
  13. {
  14.     int i, j, summ = 0, summ2 = 0, g = 0;
  15.     int str, stl;
  16.     //int mat[10][10];
  17.  
  18.     int **arrayone = new int*[10]; // две строки в массиве
  19.     for (i = 0; i < 10; i++)
  20.         arrayone[i] = new int[10]; // и пять столбцов
  21.    
  22.     srand(time(NULL));
  23.     setlocale(LC_ALL, "Russian");
  24.     cout << "Введите количество строк и столбцов: ";
  25.     cin >> str >> stl; //ввод строк и столбцов
  26.     cout << endl << endl << "\tВаша матрица:\n\n";
  27.     for (i = 0; i<str; i++)
  28.     {
  29.         for (j = 0; j<stl; j++)
  30.         {
  31.             arrayone[i][j] = rand() % 2; //генерация случайных чисел от 0 и 1
  32.             cout << "  " << arrayone[i][j];
  33.         }
  34.         cout << endl << endl;
  35.     }
  36.  
  37.     int maxc = 0; // максимальная сумма единиц в строке
  38.  
  39.  
  40.     int *deleted_elements = new int[str]; // динамический массив для удаленных строк. Число не превышает кол-во строк.
  41.     int *sum_el = new int[str];
  42.     int *whereisone = new int[str];
  43.     for (i = 0;i < str;i++) {
  44.         for (j = 0;j < stl;j++) {
  45.             if (arrayone[i][j] == 1) {
  46.                 maxc++;
  47.                 whereisone[g] = j;
  48.                 g++;
  49.             }
  50.         }
  51.         sum_el[i] = maxc;
  52.         maxc = 0;
  53.     }
  54.     for (i = 0;i < str;i++) {
  55.         cout << "Сумма едениц " << i + 1 << " строки:" << sum_el[i] << endl;
  56.     }
  57.     maxc = 0;
  58.     int max_i = 0; // сумма единиц в макс строке
  59.     for (i = 0;i < str;i++) {
  60.         if (sum_el[i] > maxc) {
  61.             maxc = sum_el[i]; max_i = i;
  62.         }
  63.     }
  64.     cout << "Максимальное число единиц равно " << maxc << " в строке №" << max_i + 1 << "\n\n\n";
  65.  
  66.     cout << "Единицы находятся в ";
  67.     for (i = 0;i < (sizeof(whereisone));i++) {
  68.         cout << whereisone[i] << " ";
  69.     }
  70.  
  71.     cout << " позициях строки." << endl;
  72.     for (i = 0; i<str; i++)
  73.     {
  74.     for (j = 0; j<stl; j++)
  75.     {
  76.         if (arrayone[max_i][j] == 1) arrayone[i][j] = 2;
  77.  
  78.     }
  79.     cout << endl << endl;
  80.     }
  81.     for (i = 0; i<str; i++)
  82.     {
  83.         for (j = 0; j<stl; j++)
  84.         {
  85.            
  86.             cout << "  " << arrayone[i][j];
  87.         }
  88.         cout << endl << endl;
  89.     }
  90.  
  91.     _getch();
  92.     delete[] arrayone;
  93.     return 0;
  94.  
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement