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

Поиск элементов в действительной матрице - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
05.07.2010, 16:54     Поиск элементов в действительной матрице #1
1)дана действительная матрица mxn.найти сумму наибольших значений элементов её строк.

2)дана действительная квадратная матрица порядка 2n.получить новую матрицу, переставляя её блоки размером nxn;
в соответствии с рисунком.
рисунок токо ко второй задаче.
квадрат перечёрченный горизонтальной и вертикальной линией и от центра идут в углы небольшие стрелочки в каждый из четырёх углов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2010, 16:54     Поиск элементов в действительной матрице
Посмотрите здесь:

C++ Поиск максимального и минимального элементов в матрице
В данной действительной квадратной матрице A[N, M] найти сумму элементов строки C++
В данной действительной квадратной матрице порядка n найти наибольший по модулю элемент C++
Поиск одинаковых элементов в этой матрице C++
В данной действительной матрице m*n (n>=3, m>=3), поменять местами строки с номерами 2 и n-1 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
05.07.2010, 17:46     Поиск элементов в действительной матрице #2
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
#include <stdio.h>
#include <conio.h>
 
int main()
{
    int a[5][6];
    int i,j,sum,max;
    
    for (i=0;i<=3;i++)
     for (j=0;j<=4;j++)
      scanf("%d",&a[i][j]);
    for (i=0;i<=3;i++)
    {
     for (j=0;j<=4;j++)
      printf("%d ",a[i][j]);
     printf("\n");
    }
    sum=0;
    for (i=0;i<=3;i++)
    {
        max=-10000;
        for (j=0;j<=4;j++)
        {
         if (a[i][j]>max)
         max=a[i][j];
        }
        sum=sum+max; 
    }
    printf("%d",sum);
    getch();
    return 0;
}
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2293 / 1663 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
05.07.2010, 17:49     Поиск элементов в действительной матрице #3
kotofey, выложи рисунок ко второй задаче.
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
05.07.2010, 17:57  [ТС]     Поиск элементов в действительной матрице #4
как выложить
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2293 / 1663 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
05.07.2010, 18:01     Поиск элементов в действительной матрице #5
kotofey, руками. В расширенном режиме ответа на тулбаре есть кнопка в виде скрепки, с ее помощью ты и сможешь выложить рисунок.
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
05.07.2010, 18:10  [ТС]     Поиск элементов в действительной матрице #6
ТАМ РИСУНОК СЛЕВА
Слушай можешь обьяснить первую задачу и прояснить что там нужно вводить я просто ток сегодня задание получил.
Миниатюры
Поиск элементов в действительной матрице  
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
05.07.2010, 18:32     Поиск элементов в действительной матрице #7
если а) то надо отразить относительно внртикальной оси.а потом относительно горизонтальной.я так понял?

Код
1 2
3 4 

.....станет

4 3
2 1
Добавлено через 2 минуты
Цитата Сообщение от kotofey Посмотреть сообщение
у и прояснить что там нужно вводить
вводить нужно только элементы массива.размерность я сделал 4X5.
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
05.07.2010, 20:39  [ТС]     Поиск элементов в действительной матрице #8
а прога то во второй задаче какая такая же чтоли?
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
05.07.2010, 21:15     Поиск элементов в действительной матрице #9
Цитата Сообщение от Artishok Посмотреть сообщение
я так понял?
или надо что бы порядок следования не изменялся?т.е
Код
  1    2   3   4
  5    6   7   8
  9  10  11  12
13   14  15  16
было.
стало
11  12  9  10
15  16 13  14
 3    4  1     2
7     8   5    6
?

Добавлено через 2 минуты
Цитата Сообщение от kotofey Посмотреть сообщение
а прога то во второй задаче какая такая же чтоли

Не по теме:

kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
05.07.2010, 21:20  [ТС]     Поиск элементов в действительной матрице #10
Ну так как
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
05.07.2010, 22:09     Поиск элементов в действительной матрице #11

Не по теме:

реализовал на паскале.ща перебью на СИ



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 <conio.h>
#define swap(a,b) {int tmp;tmp=a;a=b;b=tmp;}
 
int main()
{
    int a[5][5];
    int i,j,n;
    
    n=2;
    for (i=0;i<=2*n;i++)
    {
     for(j=0;j<=2*n;j++)
      scanf("%d",&a[i][j]);
    }
    for (i=0;i<=2*n;i++)
    {
    for(j=0;j<=2*n;j++)
     printf("%d ",a[i][j]);
    printf("\n");
    }
    for(i=0;i<=2*n;i++)
    {
        for(j=0;j<=n;j++)
        {
        swap(a[i][j],a[i][j+n]);    
        }
    }
    for(j=0;j<=2*n;j++)
    {
        for(i=0;i<=n;i++)
        swap(a[i][j],a[i+n][j]);
    }
     for (i=0;i<=2*n;i++)
    {
    for(j=0;j<=2*n;j++)
     printf("%d ",a[i][j]);
    printf("\n");
    }
    return 0;
getch();
}
проверяйте
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
06.07.2010, 09:25  [ТС]     Поиск элементов в действительной матрице #12
Спасибо всем огромное у меня во второй задаче где getch(); не ошибка а предупреждение какое то и пишет UNREACHABLE CODE IN FUNCTION MAIN( 41 СТРОКА)
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2293 / 1663 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
06.07.2010, 10:25     Поиск элементов в действительной матрице #13
kotofey,
C
1
getch();
и
C
1
return 0;
местами поменяй.
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
06.07.2010, 14:36  [ТС]     Поиск элементов в действительной матрице #14
спасиб
kotofey
0 / 0 / 0
Регистрация: 07.12.2009
Сообщений: 89
09.07.2010, 10:19  [ТС]     Поиск элементов в действительной матрице #15
Люди можете подробно обьяснить что нужно вводить и как вводить в первой и второй проге

Добавлено через 12 часов 24 минуты
Ну так поможет кто нить разобраться ??
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
09.07.2010, 14:55     Поиск элементов в действительной матрице #16
в обеих прогах надо вводить только элементы массивов(целые числа).размерности я "забил"
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
09.07.2010, 15:19     Поиск элементов в действительной матрице #17
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int * max_element(const int * arr, size_t cnt) {
    return ( cnt == 1 ) ? (int*)arr : ( *arr > *(arr + cnt - 1) ) ? max_element(arr, cnt - 1) : max_element(++arr, cnt - 1);
}
 
int main(void){
    int rows, columns, sum, rowMax, i, j, ** matr;
 
    printf("Rows: ");
    scanf("%d", &rows);
    printf("Columns: ");
    scanf("%d", &columns);
    if ( rows < 1 || columns < 1 ){
        fprintf(stderr, "Wrong value(s)!\n");
        exit(EXIT_FAILURE);
    }
 
    srand(time(NULL));
    sum = 0;
 
    printf("Matrix:\n");
    if ( ( matr = (int**)calloc(rows, sizeof(int*)) ) == NULL ){
        perror("calloc");
        exit(EXIT_FAILURE);
    }
    for ( i = 0; i < rows; ++i ){
        if ( ( matr[i] = (int*)calloc(columns, sizeof(int)) ) == NULL ){
            perror("calloc");
            exit(EXIT_FAILURE);
        }
        for ( j = 0; j < columns; ++j )
            printf("%02d ", ( matr[i][j] = rand() % 100) );
        printf("Max: %02d\n", (rowMax = *max_element(matr[i], columns)));
        sum += rowMax;
    }
    printf("Sum of max elements: %02d\n", sum);
 
    for ( i = 0; i < rows; ++i )
        free(matr[i]);
    free(matr);
 
    exit(EXIT_SUCCESS);
}
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
722 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
09.07.2010, 16:05     Поиск элементов в действительной матрице #18
Цитата Сообщение от easybudda Посмотреть сообщение
return ( cnt == 1 ) ? (int*)arr : ( *arr > *(arr + cnt - 1) ) ? max_element(arr, cnt - 1) : max_element(++arr, cnt - 1);
это тернарный двойной?)
easybudda
09.07.2010, 16:08
  #19

Не по теме:

Цитата Сообщение от PointsEqual Посмотреть сообщение
это тернарный двойной?
или два тренарных...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2010, 16:33     Поиск элементов в действительной матрице
Еще ссылки по теме:

В данной действительной матрице m*n (n>=3,m>=3) поменять местами строки с номерами 2 и n-1 C++
C++ В действительной матрице найти суммы наибольших и наименьших значений строк
C++ В данной действительной квадратной матрице порядка n найти наибольший по модулю элемент

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

Или воспользуйтесь поиском по форуму:
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
09.07.2010, 16:33     Поиск элементов в действительной матрице #20
Цитата Сообщение от easybudda Посмотреть сообщение
int * max_element(const int * arr, size_t cnt) {
return ( cnt == 1 ) ? (int*)arr : ( *arr > *(arr + cnt - 1) ) ? max_element(arr, cnt - 1) : max_element(++arr, cnt - 1);
}

Не по теме:

изыди

Yandex
Объявления
09.07.2010, 16:33     Поиск элементов в действительной матрице
Ответ Создать тему
Опции темы

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