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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
#1

Матрица - C++

16.10.2009, 16:14. Просмотров 844. Ответов 10
Метки нет (Все метки)

Помогите с задачками, не могу решить, 1:
Дана матрица размера М х N (числа ввести с клавиатуры) и целое число К (тоже ввести) , 1<=K<=N. Вывести элементы К-го столбца данной матрицы.

2:
Дана матрица размера М х N (числа ввести с клавиатуры). В каждом её столбце найти количество элементов, больших среднего арифметического всех элементов этого столбца.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2009, 16:14     Матрица
Посмотрите здесь:

С++ матрица C++
Матрица C++
матрица А+В C++
C++ С++ МАТРИЦА
C++ Матрица
C++ матрица
матрица C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.10.2009, 18:09     Матрица #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
#include <iostream.h>
#include <windows.h>
int **mas, n, m, k, i,j;
int main ()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout<<"Ââåäèòå êîëè÷åñòâî ñòðîê Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    cin>>n;
    cout<<"Ââåäèòå êîëè÷åñòâî ñòîëáöîâ Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
       mas[i]=new int[m];
    cout<<"Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    for(i=0; i<n; i++)
       for(j=0; j<m; j++)
       {
          cout<<"["<<i<<"]["<<j<<"]= ";
          cin>>mas[i][j];
       }
    cout<<"Ââåäèòå Г*îìåð ñòîëáöГ* ýëåìåГ*ГІГ» êîòîðîãî Г*ГіГ¦Г*Г® âûâåñòè Г*Г* ГЅГЄГ°Г*Г*"<<endl;
    cin>>k;
    for(i=0; i<n; i++)
        cout<<mas[i][k]<<" ";
    cout<<endl;
         return 0; 
}
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
16.10.2009, 18:44  [ТС]     Матрица #3
еще б вторую))
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
16.10.2009, 18:59     Матрица #4
компилятор у меня другой поэтому общая шапка иначе, но исходник задача 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
#include <iostream>
 
using namespace std;
int main ()
{
    int **mas, n, m, k, i,j;
    int summ=0, counter;
    float mean=0;
    setlocale(LC_ALL, "Russian");
    cout<<"Введите количество строк массива: "<< endl;
    cin>>n;
    cout<<"Введите количество столбцов массива: "<< endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
        mas[i]=new int[m];
    cout<<"Введите элементы массива: "<< endl;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            cout<<"["<<i<<"]["<<j<<"]= ";
            cin>>mas[i][j];
            summ+=mas[i][j];
        }
 
        for(i=0; i<m; i++)
        {
            summ=0; counter=0;
            for(j=0; j<n; j++)      summ+=mas[i][j];
            mean=(float)summ/n;
            for(j=0; j<n; j++)      
                if((float)mas[i][j]>mean)
                    ++counter;
 
            cout<<"Стобец "<<i<<" количество больших: "<<counter<<endl;
        }
        cout<<endl;
        system("PAUSE");
        return 0; 
}
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.10.2009, 19:14     Матрица #5
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
#include <iostream.h>
#include <windows.h>
int **mas, n, m, i,j, sum;
double temp;
int main ()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout<<"Ââåäèòå êîëè÷åñòâî ñòðîê Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    cin>>n;
    cout<<"Ââåäèòå êîëè÷åñòâî ñòîëáöîâ Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
       mas[i]=new int[m];
    cout<<"Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*: "<< endl;
    for(i=0; i<n; i++)
       for(j=0; j<m; j++)
       {
          cout<<"["<<i<<"]["<<j<<"]= ";
          cin>>mas[i][j];
       }
    cout<<"èñõîäГ*ûé Г¬Г*Г±Г±ГЁГў"<<endl;
    for(i=0; i<n; i++)
    {
       for(j=0; j<m; j++)
          cout<<mas[i][j]<<"  ";
       cout<<endl;
    }
    for(i=0; i<m; i++)
    {
        sum=0;
        for(j=0; j<n; j++)
            sum+=mas[j][i];
        temp=double(sum/n);
        sum=0;
        for(j=0; j<n; j++)
            if(mas[j][i]>temp)
                sum++;
        cout<<"Г‚ ñòîëáöå "<<i<<" êîëè÷åñòâî ýëåìåГ*òîâ áîëüøå ñðåäГ*ГҐГЈГ® Г*ðèôìåòè÷åñêîãî ГўГ±ГҐГµ ýëåìåГ*òîâ ýòîãî ñòîëáöГ*: "<<sum<<endl;;
 
    }
 
    cout<<endl;
         return 0; 
}
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
16.10.2009, 20:43  [ТС]     Матрица #6
а не могли бы вы написать задачи на Си а не на ++=)))
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
16.10.2009, 21:13     Матрица #7
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
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
int **mas, n, m, i,j, sum;
double temp;
int main ()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    printf("Введите количество строк массива: \n");
    scanf("%d", &n);
    printf("Введите количество столбцов массива: \n");
    scanf("%d", &m);
    mas=new int*[n];
    for(i=0; i<n; i++)
       mas[i]=new int[m];
    printf("Введите элементы массива: \n");
    for(i=0; i<n; i++)
       for(j=0; j<m; j++)
       {
          printf("[%d][%d]= ", i, j);
          scanf("%d", &mas[i][j]);
       }
        printf("исходный массив\n");
    for(i=0; i<n; i++)
        {
       for(j=0; j<m; j++)
          printf("%d  ", mas[i][j]);
          printf("\n");
        }
        for(i=0; i<m; i++)
        {
                sum=0;
                for(j=0; j<n; j++)
                        sum+=mas[j][i];
                temp=double(sum/n);
                sum=0;
                for(j=0; j<n; j++)
                        if(mas[j][i]>temp)
                                sum++;
                printf("В столбце %d количество элементов больше среднего арифметического всех элементов этого столбца: %d\n", i, sum);
 
        }
 
        return 0; 
}
Добавлено через 7 минут
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
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
int **mas, n, m, k, i,j;
int main ()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    printf("Ââåäèòå êîëè÷åñòâî ñòðîê Г¬Г*Г±Г±ГЁГўГ*: \n");
    scanf("%d", &n);
    printf("Ââåäèòå êîëè÷åñòâî ñòîëáöîâ Г¬Г*Г±Г±ГЁГўГ*: \n");
    scanf("%d", &m);
    mas=new int*[n];
    for(i=0; i<n; i++)
       mas[i]=new int[m];
    printf("Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*: \n");
    for(i=0; i<n; i++)
       for(j=0; j<m; j++)
       {
          printf("[%d][%d]= ", i, j);
          scanf("%d", &mas[i][j]);
       }
        printf("Ââåäèòå Г*îìåð ñòîëáöГ* ýëåìåГ*ГІГ» êîòîðîãî Г*ГіГ¦Г*Г® âûâåñòè Г*Г* ГЅГЄГ°Г*Г*\n");
        scanf("%d", &k);
        for(i=0; i<n; i++)
                printf("%d ", mas[i][k]);
        printf("\n");
         return 0; 
}
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
21.10.2009, 17:10  [ТС]     Матрица #8
Ничего не работает! помогите написать нормально без темпов! и без <windows.h>, и без консолей, чтобы задача работала. Заранее спасибо.
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
21.10.2009, 19:52     Матрица #9
поправил первую, вторую переделаешь сам!
если что-то не получается или ошибки лезут, то по пунктам что и где. решим в рабочем порядке
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
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
 
int main ()
{
    int **mas, n, m, k, i,j;
    printf("Enter number rows of array: \n");
    scanf("%d", &n);
    printf("Enter number columns of array: \n");
    scanf("%d", &m);
    
    mas=(int **)    calloc(n, sizeof(int));   
    for(i=0; i<n; i++)
        mas[i]=(int *)  calloc(m, sizeof(int));
    printf("Enter elements of array: \n");
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {
            printf("[%d][%d]= ", i, j);
            scanf("%d", &mas[i][j]);
        }
        printf("What elements do you see? Enter number column.\n");
        scanf("%d", &k);
        for(i=0; i<n; i++)
            printf("%d ", mas[i][k]);
        printf("\n");
        getch();
        return 0; 
}
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
20.11.2009, 16:06  [ТС]     Матрица #10
Здраствуйте всем! =) я немного приболел и у меня поламался компьютер, теперь ремонтирую...помогите решить задачи очень прошу!

первая-
Дана квадратная матрица А порядка М. Повернуть её на угол 90 градусов против часовой стрелки.

вторая-
Дана квадратная матрица А порядка М. Повернуть её на угол 90 градусов по часовой стрелке.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2009, 16:35     Матрица
Еще ссылки по теме:

C++ Матрица
C++ Матрица
Матрица C++ C++
C++ Матрица
Матрица C++

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

Или воспользуйтесь поиском по форуму:
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
20.11.2009, 16:35     Матрица #11
Найдено через поиск на форуме:
http://www.cyberforum.ru/cpp-beginne...read52402.html
Yandex
Объявления
20.11.2009, 16:35     Матрица
Ответ Создать тему
Опции темы

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