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

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

Войти
Регистрация
Восстановить пароль
 
hacer
2 / 0 / 1
Регистрация: 10.06.2012
Сообщений: 18
#1

если первый элемент максимальный ответ не правильно выводить что делать мне - C++

12.06.2012, 13:01. Просмотров 336. Ответов 2
Метки нет (Все метки)

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <iostream>
#include <cmath>
const int N = 3;
 
using namespace std;
 
void vvodMatr(int a[][N]) ;
void poiskMax (int a[][N], int&, int&) ;
void perestanovka(int a[][N], int, int) ;
void print(int a[][N]) ;
 
int main()
{
int a[N][N];
int imax, jmax;
  vvodMatr(a) ;
  poiskMax(a, imax, jmax) ;
  perestanovka(a, imax, jmax) ;
cout << endl;
  print(a) ;
 
return 0;
}
 
void vvodMatr(int a[N][N])
{
cout<<"matriza:\n";
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
cin >> a[i][j];
}
 
void poiskMax(int a[][N], int &imax, int &jmax)
{
int i,j,max=0;imax=0;jmax=0;
 max=a[0][0];
    imax=0;
    jmax=0;
    i=j;
    for (i=0;i<N;i++)
    for(j=0;j<N;j++)
    if ((max<a[i][j])&&(i==j))
    {
        max=a[i][j];
        imax=i;
        jmax=j;
    }
cout<<max<<endl;
}
 
void perestanovka(int a[N][N], int imax, int jmax)
{
for (int i = 0; i < N; i++)
{
 
 
}
for (int i = 0; i < N; i++)
{
a[jmax][i]=a[jmax+1][i];
}
 
 
}
 
void print(int a[N][N])
{
for (int i = 0; i < N-1; i++)
{
for (int j = 0; j < N-1; j++)
cout << a[i][j] << " ";
cout << endl;
}
}
Добавлено через 1 минуту
если первый элемент максимальный

Добавлено через 28 секунд
не правильно удаляет столбец и строку
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2012, 13:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос если первый элемент максимальный ответ не правильно выводить что делать мне (C++):

подскажите что делать при вводимых данных 10 25 и 5 20 программа работает не правильно должна выводить 135 подскажите что делать - C++
Вывод В выходной файл выведите одно число - сколько ударов сделали часы за этот отрезок времени.

Найти максимальный элемент и заменить им первый элемент строки в двумерном массиве - C++
В матрице X(4,5) в каждой строке найти максимальный элемент и заменить им первый элемент строки. Предварительно первый элемент строки...

Что мне делать или что надо знать перед тем как начать изучение яз.программирования С/С++? - C++
Я пока вообще не умею программировать.Сначала хотел с бейсика или паскаля.Но многие советуют начинать сразу с С/С++.

Почему выдает такой ответ что делать - C++
Program-исходный код: #include &lt;iostream&gt; //Подключение стандартной библиотеки #include &lt;string&gt; //Подключение стандартной библиотеки...

Первый максимальный элемент массива - C++
Ку всем. Вообщем стоит задача найти ПОСЛЕДНИЙ МАКСИМАЛЬНЫЙ элемент массива, найти просто максимальный элемент массива я вроде бы смог: ...

Переместить первый и максимальный элемент строки - C++
Дана матрица E(n,m), где n,m≤40. Разработайте программу, находящую номера всех максимальных элементов в каждой строке. Переместить...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
badman
8 / 8 / 1
Регистрация: 19.04.2012
Сообщений: 49
12.06.2012, 13:08 #2
Цитата Сообщение от hacer Посмотреть сообщение
#include <iostream>
#include <cmath>
const int N = 3;

using namespace std;

void vvodMatr(int a[][N]) ;
void poiskMax (int a[][N], int&, int&) ;
void perestanovka(int a[][N], int, int) ;
void print(int a[][N]) ;

int main()
{
int a[N][N];
int imax, jmax;
vvodMatr(a) ;
poiskMax(a, imax, jmax) ;
perestanovka(a, imax, jmax) ;
cout << endl;
print(a) ;

return 0;
}

void vvodMatr(int a[N][N])
{
cout<<"matriza:\n";
for (int i = 0; i < N; i++)
for (int j = 0; j < N; j++)
cin >> a[i][j];
}

void poiskMax(int a[][N], int &imax, int &jmax)
{
int i,j,max=0;imax=0;jmax=0;
max=a[0][0];
imax=0;
jmax=0;
i=j;
for (i=0;i<N;i++)
for(j=0;j<N;j++)
if ((max<a[i][j])&&(i==j))
{
max=a[i][j];
imax=i;
jmax=j;
}
cout<<max<<endl;
}

void perestanovka(int a[N][N], int imax, int jmax)
{
for (int i = 0; i < N; i++)
{


}
for (int i = 0; i < N; i++)
{
a[jmax][i]=a[jmax+1][i];
}


}

void print(int a[N][N])
{
for (int i = 0; i < N-1; i++)
{
for (int j = 0; j < N-1; j++)
cout << a[i][j] << " ";
cout << endl;
}
}

Добавлено через 1 минуту
если первый элемент максимальный

Добавлено через 28 секунд
не правильно удаляет столбец и строку
где то здесь ошибка
hacer
2 / 0 / 1
Регистрация: 10.06.2012
Сообщений: 18
12.06.2012, 13:10  [ТС] #3
ну ты умный самый оказался что ли ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2012, 13:10
Привет! Вот еще темы с ответами:

Найти его первый максимальный элемент - C++
Дан массив действительных чисел. Среди них есть равные. Найти его первый максимальный элемент и заменить его 0.

максимальный первый элемент в строке матрицы - C++
Дан двумерный массив, размерностью MxN. Найти сумму и количество тех строк, первый элемент которых максимален; int max=mas; for (int...

Поменять местами максимальный элемент массива и первый - C++
Смог поменять максимальный элемент массива на первый, но первый на максимальный не меняется. В чем ошибка? #include &lt;iostream.h&gt; ...

Поменять местами первый элемент левого поддерева и максимальный элемент правого поддерева - C++
Здравствуйте! Помогите, пожалуйста, с заданием по деревьям. Условие: поменять места первый элемент левого поддерева и максимальный...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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