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

Найти максимум и минимум в массиве и поменять их местами - C++

Восстановить пароль Регистрация
 
Saddiel
 Аватар для Saddiel
7 / 7 / 0
Регистрация: 02.11.2012
Сообщений: 152
21.04.2014, 05:38     Найти максимум и минимум в массиве и поменять их местами #1
Привет всем, помогите разобраться в программе
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
#include<iostream>
#include<stdlib.h>
#include<time.h>
 
using namespace std;
                                                                                
int zam(int *x,int y);                                                          
                                                                                
 
int main()
{
    unsigned srand (time(NULL)); 
    setlocale(LC_ALL, "rus"); 
    int q,w;                        //q - строки, w - столбцы
    cout<<"Введите размерность матрицы"<<endl;
    cin>>q>>w; cout<<endl;
    int i, j;
    
    int **b = new int *[q];
    for(i=0;i<q;i++) b[i] = new int [w];
    
    for(i=0;i<q;i++)
        for(j=0;j<w;j++)
        {b[i][j]=rand()%100-50;}
    for(i=0;i<q;i++)
    {
        for(j=0;j<w;j++)
        {cout << b[i][j] <<"  ";}
        cout << endl << endl;}
        system("Pause");
    cout<<endl<<endl;
    
    for(i=0;i<q;i++)                                                        
    zam(b[i],w); //что делает эта функция, что означает b[i]    
    
        
    system("Pause");                                                            
}
 
                                                                                
int zam(int *x,int y)
{
    int i,nmin=0,nmax=0;
    for(i=1;i<y;i++)
    {if(*(x+nmin)>=*(x+i)) nmin=i;
    if(*(x+nmax)<=*(x+i)) nmax=i;}
    int z;
    z=*(x+nmin);  // что обозначает х?
    *(x+nmin)=*(x+nmax);
    *(x+nmax)=z;
    for(i=0;i<y;i++)
    {cout << *(x+i) << "  ";}
    cout << endl << endl;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.04.2014, 05:38     Найти максимум и минимум в массиве и поменять их местами
Посмотрите здесь:

Найти в двухмерном массиве максимум и минимум, и поменять их местами C++
Как найти глобальные минимум и максимум в массиве? C++
C++ Найти максимум и минимум массива и поменять их местами и записать его содержимое в файл
Нужно написать программу, которая находит минимум и максимум в двумерном массиве и меняет их местами C++
Найти максимум и минимум в двумерном массиве C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4322 / 3743 / 1260
Регистрация: 14.04.2014
Сообщений: 14,680
21.04.2014, 05:48     Найти максимум и минимум в массиве и поменять их местами #2
Если я правильно понял, zam ищет минимальное и максимальное значения в массиве x и меняет их местами, после чего выводит содержимое массива на экран. И всё это через указатели реализовано.
Saddiel
 Аватар для Saddiel
7 / 7 / 0
Регистрация: 02.11.2012
Сообщений: 152
21.04.2014, 06:09  [ТС]     Найти максимум и минимум в массиве и поменять их местами #3
а в этом отрезке "х" это массив получатеся?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int zam(int *x,int y)
{
    int i,nmin=0,nmax=0;
    for(i=1;i<y;i++)
    {if(*(x+nmin)>=*(x+i)) nmin=i;
    if(*(x+nmax)<=*(x+i)) nmax=i;}
    int z;
    z=*(x+nmin);  // что обозначает х?
    *(x+nmin)=*(x+nmax);
    *(x+nmax)=z;
    for(i=0;i<y;i++)
    {cout << *(x+i) << "  ";}
    cout << endl << endl;
nmcf
4322 / 3743 / 1260
Регистрация: 14.04.2014
Сообщений: 14,680
21.04.2014, 06:20     Найти максимум и минимум в массиве и поменять их местами #4
x - указатель на массив int.
Saddiel
 Аватар для Saddiel
7 / 7 / 0
Регистрация: 02.11.2012
Сообщений: 152
21.04.2014, 06:34  [ТС]     Найти максимум и минимум в массиве и поменять их местами #5
спасибо большое) теперь понятно)
Yandex
Объявления
21.04.2014, 06:34     Найти максимум и минимум в массиве и поменять их местами
Ответ Создать тему
Опции темы

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