Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Yana95
 Аватар для Yana95
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 5
#1

Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы - C++

23.12.2013, 03:40. Просмотров 398. Ответов 3
Метки нет (Все метки)

Дана матрица А(nxn). Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы так, чтобы он оказался в левом верхнем углу. Выводит ошибку на всех командах ввода-вывода. В чём проблема?



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <stdio.h>
#include <math.h>
#include <conio.h>
using namespace std;
 
int main (int argc, char** argv)
{
 
    const int n=2;
    float y;
    float a[n][n];
    int imax=0, jmax=0;
    
    int i,j;
for (int i=0; i<n;i++) 
    for(int j=0;j<n;j++) 
              cin>>a[i][j];
    for (int i=0; i<n;i++) 
    for(int j=0;j<n;j++) 
          if (a[i][j]>a[imax][jmax]) {imax=i; jmax=j; 
          };
 for (i=0; i<n; i++) { y=a[i][0] ;
 a[i][0]=a[i][jmax];
 a[i][jmax]=y; }
 for (i=0; i<n; i++) {
  cout<<'\n';
    for (j=0; j<n; j++)
    cout<<a[i][j]<<'\t' ;
 }
 }
 
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2013, 03:40     Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы
Посмотрите здесь:

Переставить строки и столбцы матрицы чтобы максимальный по модулю элемент был расположен на пересечении К - той строки и К - того столбца. C++
Написать программу, которая запрашивает размерность двумерного массива, заполняет его случайными числами от 5 до 15 и находит максимальный элемент в м C++
C++ Двумерные массивы. Найти новый одномерный массив, максимальный элемент, заменить третий элемент
C++ Двумерные массивы. Написать функцию, которая меняет значения диагональных элементов
C++ Составить программу, которая уменьшает первое введенное число в два раза, если оно больше второго введенного числа по абсолютной величине. Числа вводя
C++ Написать программу, которая вычисляет максимальный элемент массива.
C++ Составить программу которая находит максимальный элемент
Составить программу, которая в массиве A[10] находит второе по величине числорое C++
C++ Напишите программу, которая находит минимальный и максимальный элементы двумерного массива
Заменить на единицу минимальный по абсолютной величине элемент массива C++
Написать функцию, которая находит минимальный элемент одномерного массива C++
Найти максимальный по абсолютной величине элемент и поменять его местами с последним элементом матрицы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
school_bot
14 / 12 / 3
Регистрация: 23.12.2013
Сообщений: 84
23.12.2013, 03:44     Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы #2
подключи библиотеку <iostream>
#include <iostream>
Yana95
 Аватар для Yana95
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 5
23.12.2013, 03:52  [ТС]     Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы #3
Исправила. Но теперь программа не выводит ошибки а просто не загружается.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream>
using namespace std;
 
int main (int argc, char** argv)
{
 
    const int n=2;
    float y;
    float a[n][n];
    int imax=0, jmax=0;
    
    int i,j;
for (int i=0; i<n;i++) 
    for(int j=0;j<n;j++) 
              cin>>a[i][j];
    for (int i=0; i<n;i++) 
    for(int j=0;j<n;j++) 
          if (a[i][j]>a[imax][jmax]) {imax=i; jmax=j; 
          };
 for (i=0; i<n; i++) { y=a[i][0] ;
 a[i][0]=a[i][jmax];
 a[i][jmax]=y; }
 for (i=0; i<n; i++) {
  cout<<'\n';
    for (j=0; j<n; j++)
    cout<<a[i][j]<<'\t' ;
 } ;
     return 0;
 }
school_bot
14 / 12 / 3
Регистрация: 23.12.2013
Сообщений: 84
23.12.2013, 04:04     Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы #4
Цитата Сообщение от Yana95 Посмотреть сообщение
int i,j;
for (int i=0; i<n;i++)
* * for(int j=0;j<n;j++)
* * * * * * * cin>>a[i][j];
* * for (int i=0; i<n;i++)
* * for(int j=0;j<n;j++)
* * * * * if (a[i][j]>a[imax][jmax]) {imax=i; jmax=j;
* * * * * };
вы объявляете переменные int i,j, а затем используете их в цикле, заново объявляя. так делать нехорошо - запутаться можно.
и следует почитать стайлгайд по оформлению циклов и т.д. это облегчит всем понимание кода.
Это что касается эстетики.
что значит программа не загружается?
напишите перед return; getch();
Yandex
Объявления
23.12.2013, 04:04     Массивы двумерные. Написать программу, которая находит максимальный по абсолютной величине элемент и переставляет строки и столбцы
Ответ Создать тему
Опции темы

Текущее время: 21:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru