С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
monster469
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 17
#1

Найти наибольший элемент на главной и побочной диагоналях - C++

17.05.2014, 21:07. Просмотров 341. Ответов 5
Метки нет (Все метки)

сам не шарю вообще предмет не профильный
нужно написать программу на с++ помогите пожалуйста
вот задание
Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей. Матрица размещается в памяти динамически с помощью операции new, значение n вводится по запросу с клавиатуры. В конце работы программы освободить выделенную память. Вывести исходную и результирующую матрицы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2014, 21:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти наибольший элемент на главной и побочной диагоналях (C++):

Найти наибольший элемент среди стоящих на главной и побочной диагоналях матрицы - C++
Дана действительная квадратная матрица порядка N (N – нечетное), все элементы которой различны. Найти наибольший элемент среди стоящих на...

Найти наибольший элемент матрицы среди стоящих на главной и побочной диагоналях - C++
Дана действительная квадратная матрица n (n-нечетное),все элементы которой различны....найти наибольший элемент среди стоящих на главной и...

Массивы. Найти наибольший и наименьший элементы, среди расположенных на главной и побочной диагоналях - C++
Заполнить матрицу А размера 10*10 случайными числами от -5 до 23. Найти наибольший и наименьший элементы, среди расположенных на главной и...

Найти максимальный элемент среди элементов на главной и побочной диагоналях - C++
Дан массив А. Найти максимальный элемент среди элементов на главной и побочной диагоналях. Зарание благодарен.

Найти максимальный элемент среди стоящих на главной и побочной диагоналях - C++
Задана действительная матрица порядка n *m Найти максимальный элемент среди стоящих на главной и побочной диагонали и поменять его...

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

5
kompromiss
0 / 0 / 3
Регистрация: 17.05.2014
Сообщений: 19
17.05.2014, 22:52 #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
#include "stdafx.h"
#include "iostream"
#include <time.h>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_ALL, "Russian");  // подключаем русский язык
    srand(time(NULL));   // подключаем рандом
    int n, i, j, m, k;
    int *a_storage; // инициализация указателей
    int **a;
 
    printf("Введиете размер матрицы\n");
    while(1) // бесконечный цикл, пока не будет введено верное n
    {
    scanf("%d", &n);
    if(n%2==0) printf("Введите нечётный размер, чтобы получить пересечерие диагоналей\n");
    else break;
    }
    a_storage = (int*)malloc(n*n);   // выделение памяти 
    a = (int**)malloc(n*sizeof(int*)); // выделение памяти
    for (i = 0; i < n; ++i)  
        a[i] = a_storage + i*n; 
    for(i=0;i<n;i++)        // создаём матрицу из рандомных чисел
    {
        for(j=0;j<n;j++)
            a[i][j]=rand()%10;  // рандом поформуле =rand()n+%m тогда число формируются от n до n+m
    }
    for(i=0;i<n;i++)    // вывод на экран первой матрицы
    {
        for(j=0;j<n;j++)
            printf("%3d", a[i][j]);
        printf("\n");
    }
    int max=0;
    for(i=0, j=0; i<n; i++, j++)      // ищем максимальное число с главной диагонали и его координаты
        if(a[i][j]>max){ max=a[i][j]; m=i; k=j;}
    for(i=0, j=n-1; i<n; i++, j--)     // продолжаем искать  максимальное число на побочной диагонали и его координаты
        if(a[i][j]>max){ max=a[i][j]; m=i; k=j;}
    printf("Максимальное число %d\n", max);
    int t=a[m][k];     // меняем местами максимум с серединой
    a[m][k]=a[n/2][n/2];
    a[n/2][n/2]=t;
 
    for(m=0;m<n;m++)    // выводим изменённую матрицу
    {
        for(k=0;k<n;k++)
        printf("%3d", a[m][k]);
        printf("\n");
    }
    return 0;
}
Примерно такой код, в 2010 студии работает
0
monster469
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 17
18.05.2014, 10:41  [ТС] #3
спасибо огромное вам
0
monster469
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 17
20.05.2014, 10:14  [ТС] #4
а можешь пожалуйста скинуть скрин-что программа выводит?
0
kompromiss
0 / 0 / 3
Регистрация: 17.05.2014
Сообщений: 19
20.05.2014, 15:26 #5
Добавил вывод координат, на скрине всё видно
0
Миниатюры
Найти наибольший элемент на главной и побочной диагоналях  
monster469
0 / 0 / 0
Регистрация: 17.05.2014
Сообщений: 17
20.05.2014, 19:15  [ТС] #6
вообще от души)))спасибо
0
20.05.2014, 19:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2014, 19:15
Привет! Вот еще темы с ответами:

Найти наибольший элемент среди элементов главной и побочной диагонали - C++
Ребят помогите очень нужно пожалуйста !!! задачи по С++ 1 Найти наибольший элемент среди элементов главной и побочной диагонали и...

Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диаг - C++
Дана действительная квадратная матрица порядка n, все элементы которой различны. Найти наибольший элемент среди стоящих на главной и...

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

Найти общую сумму положительных чётных чисел на главной и побочной диагоналях - C++
Добрый день! Помогите написать программу для нахождения общей суммы положительных чётных чисел на главной и побочной диагоналях. ...


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

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

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