Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
1

Двумерная матрица. Разместить сначала положительные элементы, а за ними - все остальные

06.04.2014, 12:51. Просмотров 423. Ответов 13
Метки нет (Все метки)

Помогите пожалуйста написать программу с помощью void f();
В каждой строке матрицы В (4,5) разместить сначала положительные элементы, а за ними - все остальные.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2014, 12:51
Ответы с готовыми решениями:

В каждой строке матрицы разместить сначала положительные элементы, а за ними - все остальные
помогите из заданием а то заплутался в матрице, через функцию void matr(); В...

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

В массив X записать сначала все положительные элементы M1 а затем все отрицательные элементы M2
Из двух массивов M1(10) и M2(10) получить третийX( ) в массиве X записать...

Преобразовать массив таким образом, чтобы сначала располагались все по- ложительные элементы, а потом все остальные
#include <iostream> #include <stdlib.h> #include <time.h> #include <cmath> ...

Преобразовать массив таким образом, чтобы сначала располагались все по- ложительные элементы, а потом все остальные.как доработать?
#include <iostream> #include <stdlib.h> #include <time.h> #include <cmath> ...

13
S_el
2151 / 1679 / 353
Регистрация: 15.12.2013
Сообщений: 6,644
06.04.2014, 12:55 2
Gorpash, каждую строку сортируете по убыванию.
0
BlackSpace
141 / 134 / 94
Регистрация: 15.03.2014
Сообщений: 283
06.04.2014, 13:06 3
S_el, думаю, что взаимное расположение положительных элементов должно быть сохранено. Также как и неположительных. А иначе задание на сортировку по убыванию должно так и выглядеть - "отсортируйте по убыванию".
Т.е. строка
0 1 4 -7 3 -2
должна превратиться в строку
1 4 3 0 -7 -2
0
S_el
2151 / 1679 / 353
Регистрация: 15.12.2013
Сообщений: 6,644
06.04.2014, 13:18 4
BlackSpace, исходное задание можно понять и так,но мой вариант проще
0
zss
Модератор
Эксперт С++
7258 / 6703 / 4244
Регистрация: 18.12.2011
Сообщений: 17,700
Завершенные тесты: 1
06.04.2014, 13:21 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#define n 5
void f(int a[n][n])
{
 
    int b[n];//объявляем новый массив
    for (int j=0;j<n;j++)
    {
        int k=0;
        for (int i=0;i<n;i++)
            if (a[j][i] >0) // положительные 
                  b[k++]=a[j][i];
        for (int i=0;i<n;i++)
            if (a[j][i] <=0) // неположительные 
                  b[k++]=a[j][i];
        for (int i=0;i<n;i++)
              a[j][i]=b[i];
   }
}
1
Tulosba
06.04.2014, 13:58
  #6

Не по теме:

Цитата Сообщение от Gorpash Посмотреть сообщение
Двумерная матрица
А бывает какая-то другая?

0
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
06.04.2014, 14:51  [ТС] 7
одномерная матрица(вектор) 1 2 3 4 5 6 7 8 9 например
0
Tulosba
06.04.2014, 15:00
  #8

Не по теме:

Ма́трица — математический объект, записываемый в виде прямоугольной таблицы элементов кольца или поля (например, целых, действительных или комплексных чисел), которая представляет собой совокупность строк и столбцов, на пересечении которых находятся её элементы.
с вики.

0
S_el
06.04.2014, 19:25
  #9

Не по теме:

Tulosba,
с той-же вики:

0
Tulosba
06.04.2014, 21:59
  #10

Не по теме:

S_el, это как-то противоречит написанному ранее? Можно даже взять число и тоже представить в виде матрицы 1х1. Но если уж назвали матрицей, то от ее двумерности никуда не деться. Есть строки и есть столбцы, а третьего и последующих измерений нет. Не стоит путать с многомерными массивами.

0
S_el
06.04.2014, 22:43
  #11

Не по теме:

Tulosba, вы не совсем ясно выразились,вот я и не так понял :)

0
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
08.04.2014, 01:06  [ТС] 12
а что мы запихиваем в главную программу?

Добавлено через 56 минут
Отредактируйте пожалуйста программу.
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 <iostream>
#include <conio.h>
#include <stdio.h>
#include<stdlib.h>
#include<time.h>
using namespace std;
 
void f(int a[4][5], int n, int m)
{   system("cls");
    int i; int j;
    int b[m]; //объявляем новый массив
    printf("Pochatkoviy masive = "); cout<<endl;
    srand(time(NULL));
    for ( i=0; i<n; i++)
    {
        for ( j=0; j<m; j++)
        {
            a[i][j]=20-rand()%50;
            printf("%  3d " , a[i][j]);
            }cout<<endl;}
    
    for (int j=0;j<m;j++)
    {
        int k=0;
        for ( i=0;i<n;i++ ){
            if (a[j][i] >0) // положительные  
                  b[k++]=a[j][i];}
        for (int i=0;i<n;i++){
            if (a[j][i] <=0) // неположительные 
                  b[k++]=a[j][i];}
        for (int i=0;i<n;i++){
              a[j][i]=b[i];}
   }
   cout<<endl;
   printf("Peretvorenyi masive = "); cout<<endl;
   for ( i=0; i<n; i++)
    {
    for ( j=0; j<m; j++)
    {
            printf(" %3d " , a[i][j]);
    }cout<<endl;
   }
}
 int main()
 { int B[4][5];
   f(B,4,5);
   getch();
return 0;
}
0
S_el
2151 / 1679 / 353
Регистрация: 15.12.2013
Сообщений: 6,644
08.04.2014, 09:43 13
Gorpash, зачем использовать и printf и cout в одной программе?
0
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
08.04.2014, 15:12  [ТС] 14
Мне так удобней. Я только недавно начал изучать С++, еще толком не понял тонкостей среды си.
0
08.04.2014, 15:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2014, 15:12

Преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых не превышает 1, а потом все остальные
привет всем) никак не могу придумать влгоритм для куска задачи:...

Двумерная матрица на С++ (найти все парные элементы в двумерном массиве и сложить их)
Добрый вечер! Подскажите пожалуйста каким образом можно реализовать следующую...

Вывести сначала все положительные элементы массива, затем все отрицательные
Вывести сначала все положительные элементы массива, затем все отрицательные...


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

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

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