Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
kukhtikov
2 / 2 / 6
Регистрация: 16.12.2012
Сообщений: 97
#1

Функция для нахождения минимального элемента - C++

17.12.2012, 05:42. Просмотров 2130. Ответов 2
Метки нет (Все метки)

Разработать функцию для вычисления минимального значения элементов одномерного целочисленного массива размерности n. С использованием данной функции для матрицы размерности n х m (n и m вводится с клавиатуры, элементы матрицы заполняются с помощью генератора псевдослучайных чисел) вывести на печать те строки матрицы, минимальные элементы которых превышают некоторое заданное пороговое значение (пороговое значение вводится с клавиатуры). Перед этим выводом распечатать исходную матрицу.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2012, 05:42
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Функция для нахождения минимального элемента (C++):

Рекурсивная функция для нахождения минимального элемента массива
Помогите!Нужно написать рекурсивную функцию для нахождения минимального...

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

Функция: нахождения минимального элемента в диагонали матрицы, параллельной главной диагонали
Ребята ХЭЭЛП! Условие Составить функцию нахождения минимального элемента Мx в...

Составить программу для нахождения минимального элемента массива
1)Известен массив x1,х2,х3,…,х7. Составить программу для нахождения...

Шаблонные функции для нахождения минимального и максимального элемента пары чисел
Описать функции-шаблоны для нахождения минимального и максимального элемента...

Математическая функция для которой нужно решить задачу нахождения максимального (минимального) значения
Математическая функция для которой нужно решить задачу нахождения максимального...

2
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
17.12.2012, 08:49 #2
Лучший ответ Сообщение было отмечено kukhtikov как решение

Решение

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
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <iomanip>
 
int *findMinimum(int *begin, int *end) {
  if (begin == end) return begin;
  int *minimum = begin++;
  while (begin != end) {
    if (*begin < *minimum)
      minimum = begin;
    ++begin;
  }
  return minimum;
};
 
int *findMinimum(int **vector, int height, int width) {
  int **end = vector + height;
  int *minimum = findMinimum(*vector, *vector + width);
  ++vector;
  while (vector != end) {
    int *localMinimum = findMinimum(*vector, *vector + width);
    if (*localMinimum < *minimum)
      minimum = localMinimum;
    ++vector;
  }
  return minimum;
};
 
int main(int argc, char *argv[]) {
  srand(time(0));
 
  const size_t width = 10 + rand() % 5;
  const size_t height = 10 + rand() % 5;
  
  int **vector = new int*[height];
  for (int **i = vector; i < vector + height; ++i) {
    *i = new int[width];
    for (int *j = *i; j < *i + width; ++j) {      
      std::cout << std::setw(3) << (*j = rand() % 25) << " ";
    }
    std::cout << std::endl;
  }
 
  int *minimum = findMinimum(vector, height, width);
  std::cout << "Minimum value is " << *minimum << std::endl;
 
  return 0;
}
0
vua72
417 / 417 / 166
Регистрация: 28.11.2010
Сообщений: 1,183
Завершенные тесты: 1
17.12.2012, 18:36 #3
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
#include <iostream>
#include <cmath>
#include <cstdlib>
#include <iomanip>
#include <ctime>
using namespace std;
int min( int*, int);
int main(int argc, char **argv)
{
    int n,m;
    cout <<"n,m";
    if (n>0 && m>0) {
        cin >>n>>m;
        //1. создаем массив,где будем хранить указатели на массивы строк
        int **matr=new int *[n];
        //2. выделяем память под каждую строку массива
        for (int i=0; i<n; i++)
            matr[i]=new int[m];
        //3. input
        srand(time(NULL));
        for (int i=0; i<n; i++)
            for (int j=0; j<m; j++)
                matr[i][j]=5+rand()%15;
        //4 print
        for (int i=0; i<n; i++) {
            for (int j=0; j<m; j++) {
                cout <<setw(4) <<matr[i][j];
            }
            cout << endl;
        }
        //5 calc
        int num, min1,
            *vect=new int[m];
        cout<<"num?";
        cin >> num;
        cout << endl;
        for (int i=0; i<n; i++) {
            for (int j=0; j<m; j++) {
                vect[j]=matr[i][j];
            }
            min1=min(vect, m);
            if (min1>num) cout << "stroka[ "<<i<<"] min="<< min1<< " and >" <<num << endl;
        }
        //6 delete dynamic matrix
        delete[]vect;
        for (int i=0; i<n; i++) delete[]matr[i];
        delete []matr;
    } else cout <<"Number is not valid. Bye"<<endl;
    return 0;
}
int min(int *a, int n)
{
    int localMin=a[0];
    for (int i=1; i<n; ++i)
        if (localMin>a[i]) localMin=a[i];
    return localMin;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2012, 18:36
Привет! Вот еще темы с решениями:

Функция для определения минимального элемента вектора
Здраствуйте, вот такое задание, не могу никак понять как его делать:( помогите...

Написать (переделать) программу с использованием ссылок в качестве параметров функций для нахождения минимального элемента из 3-х заданных
Просто нахождение написал. Подскажите как использовать ссылки (&amp;) в качестве...

Функция для нахождения индекса максимального элемента массива
Помогите написать функцию для нахождения индекса максимального элемента...

Функция и программа для проверки, которая возвращает номер минимального элемента C++
Написать функцию и программу для ее проверки, которая возвращает номер...


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

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

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