1 / 1 / 2
Регистрация: 14.11.2010
Сообщений: 57
1

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

30.12.2010, 08:53. Показов 903. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана матрица. Переписать в одномерный массив элементы четных столбцов, значения которых меньше 1. Оформить в виде функции.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.12.2010, 08:53
Ответы с готовыми решениями:

Матрица.Переписать в одномерный массив эл-ты четных столбцов значения которых меньше 1. Оформить в виде Функции
Дана матрица( любого размера. в пределах разумного=)).Переписать в одномерный массив элементы...

Переписать из одного массива в другой все элементы, значения которых больше -1.8 и меньше 2.7
Сформировать вещественный массив A,элементами которого являются случайные числа из диапазона...

Переписать в массив С все значения матрицы D, меньше заданного значения Y
Вот что написал, а дальше как ни крутил не смог придумать #include<iostream> using namespace...

Одномерный массив (элементы с четными индексами переписать в массив z.в массиве z поменять местами максимальный и минимальный элементы)
задан массив x(n).элементы с четными индексами переписать в массив z.в массиве z поменять местами...

5
161 / 101 / 22
Регистрация: 11.05.2009
Сообщений: 628
30.12.2010, 09:39 2
А вот так:

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
#include <cstdlib>
#include <iostream>
 
//функция получения чисел
int * elements(int arr[5][3], int & countOfArray)
{
    int count = 0, 
        it = 0;
    for(int i = 0; i < 5; i++)
        if(i % 2)
            for(int j = 0; j < 3; j++)
                if(arr[i][j] < 1)
                    count++;
                    
    countOfArray = count;
    
    int * buff = new int[count];
    
    for(int i = 0; i < 5; i++)
        if(i % 2)
            for(int j = 0; j < 3; j++)
                if(arr[i][j] < 1)
                {
                    buff[it] = arr[i][j];
                    it++;
                }
    return buff;     
}
 
int main(int argc, char *argv[])
{
    int matrix[5][3] = {
        {0, 2, -1},
        {-3, 6, 9},
        {2, -8, 0},
        {4, -7, 9},
        {-5, 9, 0}
    }, count, * arr = elements(matrix, count);
    
    for(int i = 0; i < count; i++)
        cout << " " << arr[i];
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
1 / 1 / 2
Регистрация: 14.11.2010
Сообщений: 57
30.12.2010, 09:49  [ТС] 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
#include<iostream.h>
const int n=4,m=4;
void InArray (float [n][m]);
void PrintArray ( float [n][m]);
void Change (float [n][m]);
void main()
{
float a[n][m];
InArray (a);
PrintArray (a);
Change (a);
}
void InArray (float a[n][m])
{
cout<<"Введите матрицу "<<n<<"*"<<m<<endl;
  for (int i=0;i<n;i++)
  {
    for (int j=0;j<m;j++)
     cin>>a[i][j];
     cout<<endl;
  }
 }
void PrintArray ( float a[n][m])
 {
     cout<<"Матрица A: \n ";
 for(int i=0;i<n;i++)
  {
    cout<<endl;
    for(int j=0;j<m;j++)
    cout<<"  "<<a[i][j];
    }
    }
void Change (float [n][m])
{
float b;
for(int j=0;j<m;j++)
 
if(j%=2)
{
b=j;
}
cout<<"Ьатрица \n";
cout<<"b="<<b;
 
}
0
161 / 101 / 22
Регистрация: 11.05.2009
Сообщений: 628
30.12.2010, 10:25 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
42
43
44
45
46
47
48
49
50
#include <cstdlib>
#include <iostream>
 
//функция получения чисел
int * elements(int arr[5][3], int & countOfArray)
{
    int count = 0, 
        it = 0;
    for(int i = 0; i < 5; i++)
        if(i % 2)
            for(int j = 0; j < 3; j++)
                if(arr[i][j] < 1)
                    count++;
                    
    countOfArray = count;
    
    int * buff = new int[count];
    
    for(int i = 0; i < 5; i++)
        if(i % 2)
            for(int j = 0; j < 3; j++)
                if(arr[i][j] < 1)
                {
                    buff[it] = arr[i][j];
                    it++;
                }
    return buff;     
}
 
void printArray(int * arr, int count)
{
    for(int i = 0; i < count; i++)
        cout << " " << arr[i];
}
 
int main(int argc, char *argv[])
{
    int matrix[5][3] = {
        {0, 2, -1},
        {-3, 6, 9},
        {2, -8, 0},
        {4, -7, 9},
        {-5, 9, 0}
    }, count, * arr = elements(matrix, count);
    
    printArray();
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
0
1 / 1 / 2
Регистрация: 14.11.2010
Сообщений: 57
02.01.2011, 10:00  [ТС] 5
Дана матрица. Переписать в одномерный массив элементы четных столбцов, элементы которые меньше 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
54
55
#include<iostream.h>
const int n=4,m=4;
void InArray (float [n][m]);
void PrintArray (float [n][m]);
void Change (float [n][m]);
 
void main()
{
float a[n][m];
InArray (a);
PrintArray (a);
Change (a);
 
}
void InArray (float a[n][m])
 
 {
 
   cout<<"ведите масив "<<n<<"*"<<m<<endl;
   for (int i=0;i<n;i++)
{
  for(int j=0;j<m;j++)
  cin>>a[i][j];
  cout<<endl;
} 
   }
    
    
void PrintArray ( float a[n][m])
 {
     cout<<"Матрица : \n ";
 for(int i=0;i<n;i++)
  {
    cout<<endl;
    for(int j=0;j<m;j++)
    cout<<"  "<<a[i][j];
    }
    }
void Change (float [n][m])
{
 cout<<endl;
 int j;
float b,x[m];
 
for( j=0;j<m;j++)
 
if(j<1 &&j%2 )
{
x[j]=j;
b=x[j];
}
 
cout<<"Matrica b \n";
cout<<"b="<<b;
}
0
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
02.01.2011, 11:01 6
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<iostream>
#include<iomanip>
using namespace std;
 
const int n=4,m=4;
void InArray (float [n][m]);
void PrintArray (float [n][m]);
void Change (float [n][m]);
 
int main()
{
    float a[n][m];
    InArray (a);
    PrintArray (a);
    Change (a);
    return 0;
}
void InArray (float a[n][m])
 
 {
   cout<<"enter massiv "<<n<<"*"<<m<<endl;
   for (int i=0;i<n;i++)
{
  for(int j=0;j<m;j++)
  cin>>a[i][j];
  cout<<endl;
}
   }
 
void PrintArray ( float a[n][m])
 {
     cout<<"\nmatrix : \n ";
 for(int i=0;i<n;i++)
  {
    cout<<endl;
    for(int j=0;j<m;j++)
    cout<<setw(5)<<a[i][j];
        }
    }
 
void Change (float a[n][m])
{
float x[n*m];
int co=0;
 for(int j=0;j<m;j+=2){
    for(int i=0;i<n;i++){
        if(a[i][j]<1){
            x[co]=a[i][j];
            co++;
        }
    }
 }
 
cout<<"\n\nMassiv x\n\n";
for(int i=0;i<co;i++) cout<<x[i]<<" ";
}
0
02.01.2011, 11:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.01.2011, 11:01
Помогаю со студенческими работами здесь

Как записать среднее арифметического четных столбцов в одномерный массив?
Дана матрица целых чисел размера 5х9. Получить одномерный массив, состоящий из средних...

Сформировать одномерный массив, состоящий из максимальных элементов четных столбцов матрицы
Дана целочисленная матрица 10x12. Найти сумму элементов в заштрихованной области. Сформировать...

Одномерный массив, элементы меньше заданного числа
Пожалуйста можно код готовой программы, буду очень признателен Одномерный массив В(10),...

Элементы матрицы переписать построчно в одномерный массив
Задача - элементы заданой матрицы A(N,N) переписовать построчно в одномерный массив до тех пор,...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru