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

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

Войти
Регистрация
Восстановить пароль
 
Nikropolb
 Аватар для Nikropolb
48 / 48 / 10
Регистрация: 25.06.2012
Сообщений: 257
Записей в блоге: 1
#1

Матрицы - C++

20.11.2012, 20:27. Просмотров 218. Ответов 2
Метки нет (Все метки)

Всем привет.
Хадача такова.
В квадратной матрици порядка n поменять местами k-тыйс столбец и l-строку.
Вот мой код,но при запуске программы компилятор постоянно ругается и выкидывает из программы.В чём может быть проблема.

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
75
76
77
/* Поменять столбец к со строкой l*/
#include<stdio.h>
#include<conio.h>
#include<locale>
 
#define N 20
 
int main()
{
    setlocale(LC_ALL,"RUS");
 
    int matrix[N][N];
    int k,l;
    int a,b;
    int temp; 
    int xrs;
    int n = 0;
    int check = 0;
 
    do //Вводим порядок матрици
    {
        printf("Введите порядок матрици(не больше 20)-> ");
        scanf("%d",n);
 
        if (!(n < 2 || n > 20)) check = 1;
 
    }while(check != 1);
 
 
    for (a = 0; a < n ;a++) //Вводим матрицу.
    {
        printf("%d str",a+1);
        for (b = 0; b < n ;b++)
        {
            scanf("%d",matrix[a][b]);
        }
    }
 
    printf("K->");
    scanf("%d",k);
    printf("L->");
    scanf("%d",l);
 
    xrs = matrix[l-1][k-1]; //Пересечение строки и столбца
 
    for(a = 0; a < n ;a++) //Вывод норм. матрици
    {
        for (b = 0; b < n ;b++) printf("%d",matrix[a][b]);
        printf("\n");
    }
 
    for (a = 0; a < n ;a++) //Редактирование
    {
        if(a == l-1)
        {
            matrix[l-1][a] = xrs;
        }
        else
        {
            temp = matrix[a][k-1];
            matrix[a][k-1] = matrix[l-1][a];
            matrix[l-1][a] = temp;
        }
        
    }
    
    for(a = 0; a < n ;a++) //Вывод
    {
        for (b = 0; b < n ;b++) printf("%d",matrix[a][b]);
        printf("\n");
    }
 
    getch();
    getch();
    return 0;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2012, 20:27     Матрицы
Посмотрите здесь:

Матрицы[макс. элементы, получение новой матрицы] C++
C++ Будем называть соседями элемента с индексами ij некоторой матрицы такие элементы этой матрицы, соответсвующие индексы которых отличаются от i и j не..
Построение новой матрицы по части заданой матрицы C++
Если в строках матрицы есть хотя бы один положительный элемент ,то поменять знаки всей матрицы на противоположные C++
Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, распол C++
Добиться того, чтобы один из элементов матрицы, обладающий наибольшим по модулю значением, располагался в левом верхнем углу матрицы C++
Транспонировать квадратную матрицу, используя только оператор for. Новой матрицы не создавать. Вывести исходную и транспониро-ванную матрицы C++
C++ Матрицы. Необходимо найти значение среднего арифметического строк матрицы, исключая нулевые, в случае, если строка имеет отрицательный элемент(ы)
C++ Если сумма индексов каких-либо двух элементов матрицы, расположенных ниже главной диагонали, равна минимальному элементу матрицы, то..
C++ В матрицы A (m, n) каждый элемент aij заменить минимальным среди элементов подматрицы A '(i, j), которая расположена в верхнем левом углу матрицы A
C++ Шаблонный класс матрицы. Проверка матрицы на пустоту
Для заданной матрицы найти такие k, что k-ая строка матрицы совпадает с k-ым столбцом C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4661 / 2487 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
20.11.2012, 20:53     Матрицы #2
Цитата Сообщение от Nikropolb Посмотреть сообщение
В чём может быть проблема.
в двух строках:
Цитата Сообщение от Nikropolb Посмотреть сообщение
C
1
scanf("%d",n);
заменить на:
C
1
scanf("%d",&n);
Цитата Сообщение от Nikropolb Посмотреть сообщение
scanf("%d",matrix[a][b]);
заменить на:
C
1
            scanf("%d",&matrix[a][b]);
Nikropolb
 Аватар для Nikropolb
48 / 48 / 10
Регистрация: 25.06.2012
Сообщений: 257
Записей в блоге: 1
20.11.2012, 21:22  [ТС]     Матрицы #3
Спасибо.
Yandex
Объявления
20.11.2012, 21:22     Матрицы
Ответ Создать тему
Опции темы

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