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

Формирование матрицы из массива по заданной схеме - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нужно выбрать платформу для разработки http://www.cyberforum.ru/cpp-beginners/thread190916.html
В ближайшее время я собираюсь заказать создание нескольких коммерческих десктопных приложений. На данный момент никак не могу определиться, на базе какой платформы их создавать. К платформе у меня...
C++ Вычислить число Фибоначчи Помогите пожайлучта, вычислить число Фибоначчи с номером n. Числа вычисляются по формуле Fn+2=Fn+1+Fn , где n>=0, и F0=0, F1=1. http://www.cyberforum.ru/cpp-beginners/thread190882.html
C++ namespace
Адекватно-ли использовать в таком случае пространство имен? Лучший-ли это выход из ситуации? #include <iostream> #include <string> namespace consts { const std::string cm="cm"; const...
Массивы большой размерности C++
Всем привет! Подскажите пожалуйста, как правильно хранить двумерные массивы из сотен тысяч элементов? Особенно интересует, как правильно поступать при решении задач, в которых память на выполнение...
C++ Удаление элементов списка со средним баллом студента, меньше заданного числа http://www.cyberforum.ru/cpp-beginners/thread190868.html
Реализовать односвязный список для хранения данных вида: ФИО, группа, средний балл. Обеспечить выполнение операций: добавление элементов в список; удаление элементов со средним баллом, меньше...
C++ Включение файла без .h Стало интересно, возможно-ли это сделать какими-то несложными процедурами? Т.е. чтобы было так же как подключение iostream #include <iostream> ect. подробнее

Показать сообщение отдельно
Tambel
32 / 32 / 2
Регистрация: 10.10.2010
Сообщений: 89
14.11.2010, 19:34
Вроде на рисунок a вот такой код должен быть
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
#include "stdafx.h"
#include "math.h"
#include <iostream>
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        double a[64],b[8][8];
        int i,z,j;
        for (i=0;i<64;i++)
        {
                cout<<"a["<<i<<"]= ";
                cin>>a[i];
        }
        for (i=0;i<64;i++) cout<<a[i]<<" ";
        cout<<endl<<endl;
         for (z=0;z<64;z++)
             if ((z/8)%2==0)
             {
                 if ((z/8)*8==z)
                     for (i=0;i<8;i++) b[i][z/8]=a[z+i];
             }
             else
            {
                  if ((z/8)*8==z) 
                  {
                      for (i=7;i>=0;i--)  b[7-i][z/8]=a[z+i];
                  }
             }
         for (i=0;i<8;i++)
         {
             for (j=0;j<8;j++) cout<<b[i][j]<<" ";
             cout<<endl;
         }
        cin>>i;
        return 0;
}
Добавлено через 18 минут
Рис б (проверить тщательнее..не уверен)

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
#include "stdafx.h"
#include "math.h"
#include <iostream>
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        double a[64],b[8][8];
        int i,z,j;
        for (i=0;i<64;i++)
        {
                cout<<"a["<<i<<"]= ";
                cin>>a[i];
        }
        for (i=0;i<64;i++) cout<<a[i]<<" ";
        cout<<endl<<endl;
         for (z=0;z<64;z++)
             if ((z/8)%2==0)
             {
                 if ((z/8)*8==z)
                     for (i=0;i<8;i++) b[z/8][7-i]=a[z+i];
             }
             else
            {
                  if ((z/8)*8==z) 
                  {
                      for (i=7;i>=0;i--)  b[z/8][i]=a[z+i];
                  }
             }
         for (i=0;i<8;i++)
         {
             for (j=0;j<8;j++) cout<<b[i][j]<<" ";
             cout<<endl;
         }
        cin>>i;
        return 0;
}
Добавлено через 3 часа 27 минут
Зад в (надо просто вводить число строк(столбцов) и программа сама создает квадратичную матрицу и массив)
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 "stdafx.h"
#include "math.h"
#include <iostream>
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        double *a,**b;
        int i,z,j,t,n;
        z=0;
        cin>>n;
        a=new double [n*n];
        b=new double *[n];
        for (i=0;i<n;i++) b[i] = new double [n];
        for (i=0;i<n*n;i++)
        {
                cout<<"a["<<i<<"]= ";
                cin>>a[i];
        }
        for (i=0;i<n*n;i++) cout<<a[i]<<" ";
        cout<<endl<<endl;
 
        for (i=0;i<n;i++)
        {
            t=i;
            for (j=0;j<=i;j++)
            {
                b[t--][j]=a[z++];
            }
        }
 
        for (j=1;j<n;j++)
        {
            t=j;
            for (i=n-1;i>=j;i--)
            {
                b[i][t]=a[z++];
                t++;
            }
        }
        for (i=0;i<n;i++)
         {
             for (j=0;j<n;j++) cout<<b[i][j]<<" ";
             cout<<endl;
         }
        cin>>i;
        return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru