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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.79
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
#1

Найти минимальный элемент на главной диагонали матрицы - C++

04.10.2010, 22:20. Просмотров 4439. Ответов 23
Метки нет (Все метки)

Найти минимальный элемент на главной диагонали матрицы
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2010, 22:20     Найти минимальный элемент на главной диагонали матрицы
Посмотрите здесь:
C++ Найти минимальный элемент, расположенный на главной диагонали матрицы
Найти минимальный элемент главной диагонали заданной квадратной матрицы C++
Найти минимальный элемент матрицы, расположенный ниже главной диагонали C++
C++ Найти минимальный элемент каждой строки матрицы и поместить их на главной диагонали
C++ Найти произведение элементов главной диагонали матрицы, минимальный элемент в 3-ей строке
Определить минимальный элемент каждой строки матрицы и найти произведение положительных элементов, расположенных на ее главной диагонали. C++
Заменить элементы главной и побочной диагоналей матрицы на минимальный элемент ниже главной диагонали C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 22:22     Найти минимальный элемент на главной диагонали матрицы #2
shyrik2014,

C++
1
2
3
4
5
6
7
int min=Arr[0][0];
for(int i=0, int j=0; i<n, j<m; ++i, ++j)
{
    if(Arr[i][j]<min)
       min=Arr[i][j];
}
std::cout<<min<<'\n';
При условии что матрица квадратная.
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
04.10.2010, 22:51  [ТС]     Найти минимальный элемент на главной диагонали матрицы #3
Цитата Сообщение от Lavroff Посмотреть сообщение
shyrik2014,

C++
1
2
3
4
5
6
7
int min=Arr[0][0];
for(int i=0, int j=0; i<n, j<m; ++i, ++j)
{
    if(Arr[i][j]<min)
       min=Arr[i][j];
}
std::cout<<min<<'\n';
При условии что матрица квадратная.
а как это выглядит на чистом С?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 22:54     Найти минимальный элемент на главной диагонали матрицы #4
shyrik2014,

C
1
2
3
4
5
6
7
8
int min=Arr[0][0];
int i, j;
for(i=0, j=0; i<n, j<m; ++i, ++j)
{
    if(Arr[i][j]<min)
        min=Arr[i][j];
}
printf("Min: %d\n", min);
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
04.10.2010, 23:06  [ТС]     Найти минимальный элемент на главной диагонали матрицы #5
Цитата Сообщение от Lavroff Посмотреть сообщение
shyrik2014,

C
1
2
3
4
5
6
7
8
int min=Arr[0][0];
int i, j;
for(i=0, j=0; i<n, j<m; ++i, ++j)
{
    if(Arr[i][j]<min)
        min=Arr[i][j];
}
printf("Min: %d\n", min);
а как это будет выглядеть в полноценной форме с библиотеками, в полной форме программа не отрабатывает
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 23:12     Найти минимальный элемент на главной диагонали матрицы #6
shyrik2014,
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
srand((unsigned)(time(NULL)));
int i, j;
int**Arr;
int n;
printf("Enter n: ");
scanf("%d", &n);
Arr=(int**)(malloc(n*sizeof(int*)));
for(i=0; i<n; ++i)
    Arr[i]=(int*)(malloc(n*sizeof(int)));
for(i=0; i<n; ++i)
{
   for(j=0; j<n; ++j)
   {
       Arr[i][j]=(rand()%100)+1;
   }
}
for(i=0; i<n; ++i)
{
    for(j=0; j<n; ++j)
    {
         printf("%d ", Arr[i][j]);
    }
    printf("\n");
}
int min=Arr[0][0];
for(i=0, j=0; i<n, j<n; ++i, ++j)
{
    if(Arr[i][j]<min)
        min=Arr[i][j];
}
printf("Min: %d\n", min);
for(int i=0; i<n; ++i)
free(Arr[i]);
free(Arr);
return 0;
}
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
04.10.2010, 23:20     Найти минимальный элемент на главной диагонали матрицы #7
Lavroff, в цикле нахождения минимума счетчик j не нужен, диагональ то одна

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
#include <stdio.h>
#include <stdlib.h>
 
#define ROWS 5
#define COLS 5
 
int main()
{
    int i = 0;
    int j = 0;
    int min = 0;
    int matrix[ROWS][COLS];
 
    for(i = 0; i < ROWS; ++i) {
        for(j = 0; j < COLS; ++j)
            matrix[i][j] = rand() % 99;
    }
    
    min = matrix[0][0];
    for(i = 0; i < ROWS && i < COLS; ++i) {
        if(min > matrix[i][i])
            min = matrix[i][i];
    }
    
    for(i = 0; i < ROWS; ++i) {
        for(j = 0; j < COLS; ++j)
            printf("%.2d ", matrix[i][j]);
        printf("\n");
    }
    
    printf("minimum on main diagonal is %d\n", min);
    return 0;
}
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 23:25     Найти минимальный элемент на главной диагонали матрицы #8
fasked, М. Да) Согласен
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
04.10.2010, 23:31  [ТС]     Найти минимальный элемент на главной диагонали матрицы #9
fasked, а можно более компактнее и попроще сделать программу?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 23:33     Найти минимальный элемент на главной диагонали матрицы #10
shyrik2014, Куда ж еще проще-то? О_о
Ну можно матрицу не выводить... А может вообще переписать все в одну строчку, если так нужна "компактность"
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
04.10.2010, 23:35     Найти минимальный элемент на главной диагонали матрицы #11
shyrik2014, здесь как бе итак то всего три цикла, из которых два это заполнение и вывод матрицы и только один функциональный %)
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
04.10.2010, 23:37  [ТС]     Найти минимальный элемент на главной диагонали матрицы #12
fasked, если нельзя, то есть пару вопросов по этому коду #define rows,cols объявляем вначале, а потом используем их в матрице, что это такое поясните?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 23:38     Найти минимальный элемент на главной диагонали матрицы #13
А как насчет того, чтобы их задать?
shyrik2014
3 / 3 / 2
Регистрация: 31.10.2009
Сообщений: 112
04.10.2010, 23:46  [ТС]     Найти минимальный элемент на главной диагонали матрицы #14
Lavroff, выше задал вопрос
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.10.2010, 23:48     Найти минимальный элемент на главной диагонали матрицы
Еще ссылки по теме:
C++ Найти произведение максимального элемента главной диагонали на минимальный элемент побочной диагонали
C++ Определить, находится ли минимальный элемент матрицы на главной диагонали
Вывести минимальный элемент главной диагонали заданной матрицы C++
C++ Динамически распределение памяти. Матрицы. Найти максимальный ниже побочной диагонали, и минимальный главной диагонали
Найти минимальный элемент на главной диагонали C++

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

Или воспользуйтесь поиском по форуму:
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
04.10.2010, 23:48     Найти минимальный элемент на главной диагонали матрицы #15
shyrik2014, Макросы. Фактически константы.
При встрече в тексте компилятор заменяет их на определения. Т.е.
#define rows 5

rows будет заменена на 5.
Yandex
Объявления
04.10.2010, 23:48     Найти минимальный элемент на главной диагонали матрицы
Ответ Создать тему
Опции темы

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