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

Двумерные массивы - C++

Восстановить пароль Регистрация
 
vadi4
0 / 0 / 0
Регистрация: 24.04.2010
Сообщений: 5
29.04.2010, 12:10     Двумерные массивы #1
Привет всем! если есть у кого время, посмотрите что можно сделать, нужна ваша помощь!
Сформировать одномерный массив B[M] из максимальных элементов столбцов прямоугольной матрицы A[N][M]. В массиве B поменять местами первый отрицательный и последний положительный элементы!
начал тут:
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 void main()
{
 
    const int N1=10,M1=10;//Max razmer massiva
 
    int a[N1][M1],b[M1],i,j,n,m;
       printf("\nVvedite 4islo elementov massiva:");
    scanf("%d%d",&n,&m);
       printf("\nvvedite elements matrici:\n");
       for(i=0;i<n;i++)
       for(j=0;j<m;j++)
       scanf("%d",&a[j][j]);
       printf("\nIshodniy massiv\n");
       for(i=0;i<n;i++)
       {
    for(j=0;j<m;j++)
    printf("%5d",a[i][j]);
    printf("\n");
       }
 
       }

что тут можно сделать? как применить рандомайз для двумерного массива?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2010, 12:10     Двумерные массивы
Посмотрите здесь:

Двумерные массивы C++
C++ двумерные массивы
Двумерные массивы C++
двумерные массивы C++
C++ Двумерные массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Larchikst
3 / 3 / 0
Регистрация: 01.04.2010
Сообщений: 7
01.05.2010, 09:55     Двумерные массивы #2
Автор, тема еще актуальна?
vadi4
0 / 0 / 0
Регистрация: 24.04.2010
Сообщений: 5
01.05.2010, 17:03  [ТС]     Двумерные массивы #3
ага
Larchikst
3 / 3 / 0
Регистрация: 01.04.2010
Сообщений: 7
01.05.2010, 17:18     Двумерные массивы #4
В общем вот) На проверку ошибок( если в массиве только положительные
или только отрицательные т.е. пары чисел для обмена нет) думаю сможешь сам сделать
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
        int a[4][5] = { -7,-2,-5,-77,-5,
                     99,-5,-3,10,-5,
                     -6,-8,-8,-4,-78,
                      6,-8,8,-4,-66};
    int r[5];
    int max,numb_min,numb_max,buf;
    cout<<"Matrix: "<<endl;
    for(int i = 0; i<4; i++){
        for(int j = 0; j<5; j++){
                cout<<" "<<a[i][j];
        }
        cout<<endl;
        }
 
    for(int j = 0; j<5; j++)
            for(int i = 0, max=0; i<4; i++){
                if(a[i][j] > a[max][j]) max = i;
                r[j]=a[max][j]; 
            }
 
    cout<<endl<<"Max elem mas: "<<endl;
    for(int i = 0; i<5; i++)
    cout<<" "<<r[i];
 
    for(int i = 0;i< 5;i++){
        if(r[i]<0){
            numb_min = i; break;}
    }
 
    for(int j = 4;j>=0;j--){
        if(r[j]>0){ 
            numb_max = j; break;}
    }
 
    buf = r[numb_min];
    r[numb_min] = r[numb_max];
    r[numb_max] = buf;
 
    cout<<endl<<"Reformed mas: "<<endl;
    for(int i = 0;i< 5;i++)
    cout<<" "<<r[i];
vadi4
0 / 0 / 0
Регистрация: 24.04.2010
Сообщений: 5
04.05.2010, 17:23  [ТС]     Двумерные массивы #5
Вот сваял


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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 void main()
{    clrscr();
 
    const int N1=10,M1=10;//Max razmer massiva
 
    int a[N1][M1],b[M1],i,j,n,m,k,min,polog;
       printf("\nVvedite 4islo elementov massiva:");
    scanf("%d%d",&n,&m);
      // printf("\nvvedite elements matrici:\n");
       randomize();
       for(i=0;i<n;i++)
       for(j=0;j<m;j++)
      a[i][j]=random(10)-7;
      printf("matrica\n");
      for(i=0;i<n;i++)
      {
      for(j=0;j<m;j++)
      printf("%5d",a[i][j]);
      printf("\n");
      }
      //formiruem b[M]
       for(j=0;j<m;j++)
      {
       b[j]=a[0][j];//1-y element v stolbce max
       for(i=1;i<n;i++) //perebiraem vde elemets v stolbce
       if(a[i][j]>b[j]) b[j]=a[i][j];
      }
 
       //nahodim min element v b[j]
      for(j=0;j<m;j++)
      {
       if(b[j]<0) min=b[j];
      }
       //nahodim posl polog
       for(j=0;j<m;j++)
      {
       if(b[j]>0)
       {
        k=j;
        polog=b[j];
       }
 
      }
       //zamena
       for(j=0;j<m;j++)
       {
        if(b[j]==min)b[j]=polog;
        if(j==k) b[j]=min;
       }
     for(j=0;j<m;j++)
     printf("\nKonechnaya %d",b[j]);
   getch();
}
Yandex
Объявления
04.05.2010, 17:23     Двумерные массивы
Ответ Создать тему
Опции темы

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