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

Создание формы по коду - C++

Восстановить пароль Регистрация
 
Kolebastro
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 15
14.05.2014, 10:56     Создание формы по коду #1
Здравствуйте. Нужна помощь в создании формы из ниже перечисленного кода, чтобы она показала итог программы:

1. кол-во столбцов, не содержащих ни одного нулевого элемента ( оформить в виде функции );
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
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
120
121
122
123
124
125
126
127
128
129
#include "stdafx.h"
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
 
// Размерность матрицы
#define N 5
 
// Заполнение матрицы случайными числами в интервале от -10 до 9
void matr_random(int m[][N]) {
    int i, j;
    srand(time(0));
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++)
            m[i][j] = rand() % 20 - 10; // остаток деления случайного числа на 20 
(чтобы получить сл. числа от 0 до 19)
}
 
// Ввод матрицы с экрана
void matr_input(int m[][N]) {
    int i, j;
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++) {
            printf("m[%d][%d]=", i, j);
            scanf("%d", &m[i][j]);
        }
}
 
// Вычисление характеристического значения строки матрицы
// numRow - номер строки.
int matr_chrs(int m[][N], int numRow) {
    int i;
    int chrs = 0;
    for (i = 0; i < N; i++) {
        // Если элемент строки меньше 0 и четный (делится на 2 без остатка - (x % 2 == 0)) 
        // то суммируем с х.з. (характеристическим значением :)
        if ((m[numRow][i] < 0) && (m[numRow][i] % 2 == 0))
            chrs += m[numRow][i];
    }
    return chrs;
}
 
// Поиск столбца с нулевым элементом
int matr_find_zero(int m[][N]) {
    int i, j;
    for (i = 0; i < N; i++) {
        for (j = 0; j < N; j++)
            // обратить внимание в отличие от остальных функций здесь j - номер строки, 
i - номер столбца
            if (! m[j][i])
                return i;
    }
    return -1;
}
 
// Поменять местами строки с номерами row1 и row2
void matr_swap_rows(int m[][N], int row1, int row2) {
    int i;
    int tmp;
 
    for (i = 0; i < N; i++) {
        // Меняются местами i-е элементы строк row1 и row2
        tmp = m[row1][i];
        m[row1][i] = m[row2][i];
        m[row2][i] = tmp;
    }
}
 
// Сортировка строк матрицы в порядке убывания характеристик строк. (классический пузырек)
void matr_sort_chrs(int m[][N]) {
    int i;
    int sorted;
    // В цикле меняются местами пары строк которые не удовлетворяют условию 
сортировки до тех пор,
    // пока таких не останется (матрица не будет отсортирована)
    do {
        sorted = 1; // Изначально предполагаем что матрица отсортирована.
        for (i = 0; i < N - 1; i++) {
            // Если характеристика строки i < характеристики строки i + 1
            // то это нарушения условия отсортированности матрицы по убыванию.
            if (matr_chrs(m, i) < matr_chrs(m, i + 1)) {
                // Меняем местами строки нарушающие условие сортировки 
                matr_swap_rows(m, i, i + 1);
                // и снова проверяем всю матрицу
                sorted = 0;
                break;
            }
        }
    } while (! sorted);// Пока матрица не отсортирована - сортировать :))
}
 
 
// Вывод матрици на экран. Если параметр print_chrs != 0 то для каждой строки 
выводится характеристика
void matr_print(int m[][N], int print_chrs = 0) {
    int i, j;
    for (i = 0; i < N; i++) {
        for (j = 0; j < N; j++)
            printf("% 3d ", m[i][j]);
        if (print_chrs)
            printf(" | %d", matr_chrs(m, i));
        printf("\n");
    }
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int m[N][N];
    int colNum;
 
//    matr_random(m);
    matr_input(m);
    printf("input matrix:\n");
    matr_print(m);
 
    colNum = matr_find_zero(m);
    if (colNum >= 0)
        printf("First column with zero is: %d",  colNum + 1);
    else
        printf("Column with zero not found");
 
    matr_sort_chrs(m);
    printf("\noutput matrix:\n");
    matr_print(m, 1);
    // ждем пока не нажмут <ENTER>
    getchar();
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2014, 10:56     Создание формы по коду
Посмотрите здесь:

C++ коментарий к коду..
C++ Создание формы (окна)
Комментарии к коду C++
Пояснение к коду C++
C++ Создание формы после нажатия кнопки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,335
Завершенные тесты: 1
14.05.2014, 11:03     Создание формы по коду #2
Цитата Сообщение от Kolebastro Посмотреть сообщение
Нужна помощь в создании формы
Среду разработки свою назовите.
Kolebastro
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 15
14.05.2014, 11:11  [ТС]     Создание формы по коду #3
SatanaXIII, я предполагаю C++Builder, код не мой.
SatanaXIII
14.05.2014, 11:22
  #4

Не по теме:

Цитата Сообщение от Kolebastro Посмотреть сообщение
stdafx.h
Неправильно - не билдер. Студия.
Это я код сразу не посмотрел. Ну и черт с ним.

Kolebastro
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 15
14.05.2014, 11:27  [ТС]     Создание формы по коду #5
SatanaXIII, понял, получается из этого кода ни чего не слепишь?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11844 / 6823 / 771
Регистрация: 27.09.2012
Сообщений: 16,915
Записей в блоге: 2
Завершенные тесты: 1
14.05.2014, 11:31     Создание формы по коду #6
Цитата Сообщение от Kolebastro Посмотреть сообщение
понял, получается из этого кода ни чего не слепишь?
выбирайте средства, которыми будете GUI делать и делайте
Kolebastro
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 15
14.05.2014, 11:31  [ТС]     Создание формы по коду #7
Croessmah, спасибо
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,335
Завершенные тесты: 1
14.05.2014, 11:37     Создание формы по коду #8
Цитата Сообщение от Kolebastro Посмотреть сообщение
получается из этого кода ни чего не слепишь?
Надо ручками переделывать. Самый быстрый способ это все ваши функции сделать членами класса формы, а тело main переписать куда-нибудь в кнопку на получившейся форме.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2014, 11:38     Создание формы по коду
Еще ссылки по теме:

Создание формы с двумерным массивом через StringGrid C++
Создание+просмотр бинарных файлов. Люди добрые, напишите кто-нибудь комментарии к коду :с C++
C++ Создание массива объектов формы Label

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

Или воспользуйтесь поиском по форуму:
Kolebastro
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 15
14.05.2014, 11:38  [ТС]     Создание формы по коду #9
Уже решил. Спасибо Всем.

Закрыто.
Yandex
Объявления
14.05.2014, 11:38     Создание формы по коду
Ответ Создать тему
Опции темы

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