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

сортировка матрицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ дефрагментатор на С++ http://www.cyberforum.ru/cpp-beginners/thread34314.html
Помогите! есть ли у кого-нибуть ссылочка дефрагментатора на С++ с исходниками????буду очень благодарна!! заранее спасибо;)
C++ Графика С++, столкновение шаров дана задача: на экране движутся два шара разного размера и разной скоростью. Начальны размер выбирается пользователем (из 3-х вариантов), скорость задется случайно. Шары сталкиваются и отражаются от стенок под "правильным углом" с изменением скорости движения шаров. Помогите пожалуйста, а то изменение скорости и отражение друг от друга даже представить себе не могу. http://www.cyberforum.ru/cpp-beginners/thread34293.html
C++ про функции и 2х мерный массив
привет) вот тут кое что немагу понять:rtfm: пример int mass ; for (int i =0; i<2; i++) for (int j = 0; j< 0; j++) cin >> mass ;
Строки и файлы C++
Здравствуйте, уважаемые форумчане. Прошу помочь с написанием 2 программ на С. 1.Написать программу, которая преобразует введенное с клавиатуры двухразрядное шестнадцатеричное число в десятичное P.S. Нужно использовать именно алгоритм перевода 2.В тексте перед каждым предложением, в котором встречается заданное слово, поставить восклицательный знак "!" Предложения разделяются точкой. Текст...
C++ Шальной байт в бинарном файле http://www.cyberforum.ru/cpp-beginners/thread34270.html
Здравствуйте, форумчане. Столкнулся с такой проблемой при использовании оператора write(memblock, sizeof(memblock)) для записи в бинарный файл: если в memblock присутствует байт 0x0A, то программа автоматически дополняет каждый такой байт байтом 0x0D. Такой пример: short num = 10; // в шестнадцетиричном виде 0x000A file.write((char*)&num, sizeof(num)); по логике такой код должен записать в...
C++ Найти среднее значение элементов массива Добрый вечер, прошу помочь мне с тремя задачами,крайне необходима помощь... задача№1:задан одномерный массив,который содержит 27 элементов целых чисел. 1.найти среднее значение элементов массива 2.найти кол-во элементов которое больше среднего значения 3.расположить элементыы массива в порядке убывания 4.найти максимальное и минимальное значения эелементов Задача№2 есть двумерный... подробнее

Показать сообщение отдельно
BEL9ILLI
4 / 4 / 0
Регистрация: 15.05.2009
Сообщений: 57

сортировка матрицы - C++

15.05.2009, 15:36. Просмотров 661. Ответов 2
Метки (Все метки)

Доброго времени суток. Задание: поменять в каждой строке максимальный и минимальный элементы на 0. Я думаю ошибка в функции void SortMatrix(int **X, const int K, const int 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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int **CreateMatrix(const int K,const int L);
void FreeMatrix(int **X, const int L);
void SortMatrix(int **X, const int K, const int L);
void PrintMatrix(int **X, const int K, const int L);
 
void main()
{  
    int K,L;
    int i,j;
    FILE *InputFile,*OutputFile;
    char PathIn[25],PathOut[25];
    printf("Hello, dear user!"); //Здравствуйте, уважаемый пользователь!
    printf("\nThe program in each column, swap the largest and smallest modulo elements."); //Эта программа в каждом столбце меняет местами наибольший и наименьший по модулю элементы.
    printf("\nEnter a path for input file: "); //введите путь для входного файла
    scanf("%s",PathIn); 
    if ((InputFile=fopen(PathIn, "r")) == NULL )
    {
        perror(PathIn);
        exit;
    }
    fscanf (InputFile,"%d ",&K);
    fscanf (InputFile,"%d ",&L);
    int ** X=CreateMatrix(L,L); 
    for (i=0;i<K;i++)
    {
         for (j=0;j<L;j++)
            fscanf (InputFile,"%d ",&X[i][j]);
    }
    printf("Enter a path for output result file: "); //введите путь для выходного файла
    scanf("%s",PathOut);  
    OutputFile=fopen(PathOut,"w+"); 
    fprintf(OutputFile,"Initial matrix:\n");//исходная матрица
    printf("Initial matrix: \n"); //исходная матрица
    PrintMatrix(X,K,L);
    for (i=0;i<K;i++)
    {
        for (j=0;j<L;j++)
        {
            fprintf(OutputFile,"%4d",X[i][j]);
        }
        fprintf(OutputFile,"\n");
    }
    SortMatrix(X,K,L);
    fprintf(OutputFile,"\nResult matrix\n"); //результирующая матрица
    for (i=0;i<K;i++)
    {
        for (j=0;j<L;j++)
        {
            fprintf(OutputFile,"%4d",X[i][j]);
        }
        fprintf(OutputFile,"\n");
    }
    printf("As a result, have a matrix:\n"); //в итоге, получили матрицу
    PrintMatrix(X,K,L);
    fclose(OutputFile);
    fclose(InputFile);  
    FreeMatrix(X,L);
    getch();
}
 
void SortMatrix(int **X, const int K, const int L)
{
    int i,j,k,l;
    int A,B;
    int min,max;
    for (i=0;i<K;i++)
    {
        min=1;
        max=1;
        for(j=1;j<L;j++)
        {
            if (X[i][j]<X[i][min]) min=j;
            if (X[i][j]>X[i][max]) max=j;
        }
        k=X[i][min]; 
        l=X[i][max];
    }
        for (i=0;i<L;i++)
            if ((X[i][j]=k) || (X[i][j]=l)) X[i][j]=0;
}
 
void PrintMatrix(int **X, const int K, const int L)
{
    int i,j;
    for (i=0;i<K;i++)
    {
        for (j=0;j<L;j++)
        {
            printf("%5i",X[i][j]);
        }
        printf("\n");
    }
}
 
void FreeMatrix(int **X, const int K)
{
    int i;
    for(i=0; i<K; i++)
    {
        delete[] X[i];
    }
    delete[] X;
}
 
int **CreateMatrix(const int K,const int L)
{
    int i;
    int ** X = new int*[K];
    for(i=0; i<K; i++)
    {
         X[i] = new int[L];
    }
    return X;
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru