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

Матрица - C++

Восстановить пароль Регистрация
 
manisha
1 / 1 / 0
Регистрация: 06.12.2011
Сообщений: 22
14.09.2012, 10:24     Матрица #1
С клавиатуры вводится размерность матрицы, затем сама матрица.
найти все элементв меньшие среднего арифметического
можно использовать только 1 оператор цикла.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2012, 10:24     Матрица
Посмотрите здесь:

матрица C++
C++ Матрица
матрица C++
Матрица C++
матрица с++ C++
МАТРИЦА!!! C++
Матрица М * М C++
матрица М*М C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
14.09.2012, 11:15     Матрица #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
46
47
48
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include <iostream>
 
using namespace std;
 
#define N 10
 
int main()
{
    int** matrix = new int*[N];
    for (int n1 = 0; n1 < N; n1++)
    {
        matrix[n1] = new int[N];
        for (int n2 = 0; n2 < N; n2++)
        {
            matrix[n1][n2] = rand() % (N-1) + 1;
            cout << matrix[n1][n2] << " ";
        }
 
        cout << endl;
    }
 
    cout << endl;
 
    double avg = 0;
    for (int i = 0; i < N; i++)
        for (int j = 0; j < N; j++)
            avg+=(double)matrix[i][j] / pow((double)N,2);
 
    cout << "avg = " << avg << endl << endl;
 
    int *B = new int[N * N], k = 0;
    for (int q1 = 0; q1 < N; q1++)
        for (int q2 = 0; q2 < N; q2++)
            if (matrix[q1][q2] < avg) 
                B[k++] = matrix[q1][q2];
 
    for (int t = 0; B[t] >= 0; t++)
        cout << B[t] << " ";
    cout << endl;
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/4fc451...a8f9baf505ed1f
Миниатюры
Матрица  
-=ЮрА=-
Заблокирован
Автор FAQ
15.09.2012, 09:35     Матрица #3
zitxbit, ОМГ задание как звучит то?
Цитата Сообщение от manisha Посмотреть сообщение
найти все элементв меньшие среднего арифметического
можно использовать только 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
#include <iostream>
using namespace std;
 
int main()
{
    int i, j;//Ñ÷¸ò÷èêè
    int m, n;//Áóäóò ñîäåðæГ*ГІГј Г°Г*çìåðГ*îñòü Г¬Г*Г±Г±ГЁГўГ*
    double srArifm;//Áóäåò ñîäåðГ*æòü Г§Г*Г*Г·ГҐГ*ГЁГҐ Г±Г° Г*ðèôìåòè÷åñêîãî
    int ** arr = NULL;//ÓêГ*Г§Г*òåëü Г*Г* Г*Г*Гё Г¬Г*Г±Г±ГЁГў
    cout<<"Enter num of rows : ";cin>>m;
    cout<<"Enter num of cols : ";cin>>n;
 
    srArifm = 0;//Г‚ Г*ВёГ¬ Г*Г*êîïèì ñóììó ГўГ±ГҐГµ ýåëåìåГ*òîâ 
    //Г* ïîòîì Г°Г*çäåëèì ГЅГІГі ñóììó Г*Г* ÷èñëî ýëåìåГ*òîâ = m*n
    arr = new int*[m];//Âûäåëèëè ГЇГ*ìÿòü ïîä ñòðîêè
    for(i = 0; i < m; i++)
    {
        arr[i] = new int[n];//ГЏГ*ìÿòü ïîä ýëåìåГ*ГІГ» ñòðîêè
        for(j = 0; j < n; j++)
        {
            //Ââîä ýëåìåГ*òîâ
            cout<<"arr["<<i + 1<<"]["<<j + 1<<"] = ";
            cin>>arr[i][j];
            srArifm += arr[i][j];
        }
    }
    cout<<"Average value of elements : "<<(srArifm /= (m*n))<<endl;
    //Âîò òåïåðü âûâîä ýëåìåГ*òîâ ìåГ*ГјГёГЁГµ Г±ГҐГ¤Г* Г*ðèôì ïîñðåäñòâîì 1-ГЈГ® öèêëГ*
    for(i = j = 0; (i < m) && (j < n); j++)
    {
        if(arr[i][j] < srArifm)
            cout<<arr[i][j]<<" ";
        //Âîò ГЁ ГўГҐГ±Гј ïðèêîë
        if((j + 1) % n == 0)
        {
            i = i + 1;
            j = 0;
        }
    }
    return 0;
}
Миниатюры
Матрица  
Yandex
Объявления
15.09.2012, 09:35     Матрица
Ответ Создать тему
Опции темы

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