Заблокирован
1

Определить наименьшее из всех значений элементов первого столбца матрицы и вывести его на экран

28.10.2013, 00:05. Показов 1128. Ответов 5
Метки нет (Все метки)

Решите пожалуйста задачу.

Задан двумерный массив М(N, M). Определить наименьшее из всех значений элементов первого столбца и вывести его на экран.

__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2013, 00:05
Ответы с готовыми решениями:

Определить номер столбца матрицы, содержащего наибольшее произведение всех его элементов
В двумерном массиве из натуральных чисел определить номер столбца содержащего наибольшее...

Определить номер столбца матрицы, содержащего наибольшее произведение всех его элементов
в одномерном массиве состоящем из натуральных чисел определить номер столбца содержащий наибольшее...

Получить новую матрицу умножением элементов каждого столбца первой матрицы на наименьшее из значений элементов соответствующей строки второй матрицы
Даны 2 действительные матрицы порядка n.Получить новую матрицу умножением элементов каждого столбца...

Найти наименьшее из значений элементов столбца матрицы
помогите мне пожалуйсто, помогите до 6ти пожалуйсто, я сижу вся нервничаю 1.Найти наименьшее из...

5
181 / 179 / 56
Регистрация: 10.06.2011
Сообщений: 871
28.10.2013, 00:19 2
Google313,
C
1
2
3
4
5
6
7
8
9
10
11
12
void spot (int A[][], l, c)
{
    int min = A[0][0];
 
    for (int i = 0; i < c; i++)
    {
        if (min > A[0][i])
            min = A[0][i]
    }
 
    printf("%d\n", min);
}
0
131 / 129 / 51
Регистрация: 25.05.2013
Сообщений: 233
28.10.2013, 01:04 3
Google313, индексация массивов в си идет с нуля, потому фразу "первый столбец " можно трактовать по-разному.
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
/*
 ============================================================================
 Name        : c_min_in_col_array.c
 Author      : UranFlex
 Version     : 0.1 alpha
 License     : Free for all
 Copyright   : UranFlex 2013
 Description : Наименьшее из всех значений элементов указанного столбца и вывести его на экранn
 *             C, Ansi-style
 ============================================================================
 */
 
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
 
#define ROWS 6 // количество строк
#define COLS 5 // количество столбцов
#define NUM 1 // номер столбца, в котором ведем поиск - тут менять номер столбца
//
//функция заполняет массив псевдослучайными данными
void FillMatrix( int* array, const int rows, const int cols, const unsigned randRange, const int shift );
//функция выводит на экран массив
void PrintMatrix( int* const array, const int rows, const int cols );
// функция возвращает наименьшее из всех значений элементов указанного столбца
int FindMinNumCol( int* const array, const int rows, const int cols, int numCol );
 
int main( void ) {
 
    srand( time( 0 ) ); // засеять генератор случайных чисел
 
    int A[ ROWS ][ COLS ]; // объявляем нашу матрицу
 
    FillMatrix( *A, ROWS, COLS, 101, -50 ); // заполняем матрицу псевдослучайными значениями типа int от -50 до 100 включительно
 
    // выводим матрицу на экран
    puts( "Исходная матрица" );
    PrintMatrix( *A, ROWS, COLS );
 
    // ищем первую наименьшее из всех значений элементов указанного столбца и выводим на экран
    printf( "Наименьшее из всех значений элементов указанного столбца %d равно %d\n", NUM, FindMinNumCol( *A, ROWS, COLS, NUM ) );
 
    return EXIT_SUCCESS;
}
 
void FillMatrix( int* array, const int rows, const int cols, const unsigned randRange, const int shift ) {
    size_t i, j;
    for ( i = 0; i < rows; ++i )
        for ( j = 0; j < cols; ++j )
            // заполняем массив псевдослучайными данными
            // shift - начальное значение диапазона данных
            // randRange - ширина диапазона
            array[ i * cols + j ] = shift + rand() % randRange;
}
 
void PrintMatrix( int* const array, const int rows, const int cols ) {
    size_t i, j;
    for ( i = 0; i < rows; ++i ) {
 
        for ( j = 0; j < cols; ++j )
            printf( "%4d  ", array[ i * cols + j ] );
 
        puts( "" );
    }
}
 
int FindMinNumCol( int* const array, const int rows, const int cols, int numCol ) {
    if ( numCol >= cols ) // если номер столбца задали больше чем столбцов в массиве
        numCol = cols - 1; // то поиск ведем в последнем столбце массива
    else if ( numCol < 0 ) // если номер столбца отрицателен
        numCol = 0; // то поиск ведем в нулевом столбце массива
 
    size_t i;
    int min = array[ numCol ]; // для хранения минимального, минимальным считаем элемент элемент [ 0 ][ numCol ]
    for ( i = 1; i < rows; ++i ) // в цикле перебираем все элементы столбца, начиная со строки 1
        if ( array[ i * cols + numCol ] < min ) // если очередной элемент меньше чем мы записали в min ранее
            min = array[ i * cols + numCol ]; // то записываем очередной элемент в min
 
    return min; // возвращаем результат
}
1
Заблокирован
28.10.2013, 01:24  [ТС] 4
Что то тут неправильно считает.( Вроде находит наименьшее значение в строке.

Добавлено через 28 секунд
http://ideone.com/nSm24Q
0
131 / 129 / 51
Регистрация: 25.05.2013
Сообщений: 233
28.10.2013, 01:27 5
Все правильно работает.
столбцы в матрице нумеруются как 0,1,2...( cols - 1 )
То есть программа работает для столбца с индексом 1.
Если нужен столбец с индексом 0, то исправьте
C
1
#define NUM 0 // номер столбца, в котором ведем поиск - тут менять номер столбца
Комментарий для этого и делал.
0
Заблокирован
28.10.2013, 01:30  [ТС] 6
Спасибо большое!Всё понял.Шикарно написано
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2013, 01:30

Для каждого нечетного столбца матрицы определить максимум, и вывести на экран сам элемент и его индексы
Дано: с клавиатуры вводятся два целых числа – М и К. 1&lt;M&lt;10, 1&lt;K&lt;10. (М – число строк, К – число...

Найти наименьшее из значений элементов столбца матрицы, который обладает наибольшей суммой модулей элементов
Помогите пожалуйста, нужно срочно работу в колледже сдать, а я дуб дубнем в c# Дана...

Найти наименьшее из значений элементов столбца матрицы, который имеет наибольшую сумму модулей элементов
Найти наименьшее из значений элементов столбца, который имеет наибольшую сумму модулей элементов....

Найти наименьшее из значений элементов столбца матрицы, который имеет в себе наибольшую сумму модулей элементов
Дана цэлочисельная квадратная матрица порядка m.Найти наименьшее из значений элементов...

Найти и вывести на печать номер и элементы столбца имеющего наименьшее количество элементов до первого отрицательного элемента
Помогите решить задачу: Найти и вывести на печать номер и элементы столбца имеющего наименьшее...

Найти среднее арифметическое столбца в матрице и отнять его из всех элементов матрицы, кроме этого столбца
В матрице имеется столбец, в котором первый элемент больше последнего. Найти среднее арифметическое...


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

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

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