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

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

Войти
Регистрация
Восстановить пароль
 
Ариман
20 / 20 / 1
Регистрация: 18.09.2010
Сообщений: 28
#1

Автонахождение магических квадратов - C++

25.03.2011, 16:24. Просмотров 521. Ответов 6
Метки нет (Все метки)

Тут собсна проблема он ненаходит ниодного магического кубика ,непойму в чем причина,если убрать автозаполнение и заполнить матрицу единицами то пишет что найден кубик .А если пустить на самотек при значение прокрутки 200000 он ничего ненаходит,помогите найти ошибку.
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<algorithm>
using namespace std;
const int size=4;
void stolb_chek(int[][size],int*);
void str_chek(int[][size],int*);
void diag1_chek(int mas[][size],int&);
void diag2_chek(int mas[][size],int&);
////////////////////////////////////////////
void main ()
{   int count=1;
    int diag1=0,diag2=0;
    int str[size]={0};
    int stolb[size]={0};
    int mas[size][size]={0};
 
    srand(time(NULL));
cout<<"zapolneniye massiva"<<endl;
/////////////////////////////////////
for(int i=0;i<size;i++)
for(int j=0;j<size;j++)
{
mas[i][j]=count;
count++;
}
 
/////////////////////////////////////
for(int k=0;k<2;k++)
{diag1=0,diag2=0;
for(i=0;i<size;i++)
{
str[i]=0;
stolb[i]=0;
}
cout<<" peremeshivaniye massiva"<<endl;
for(i=0;i<10000;i++)
swap(mas[rand()%size][rand()%size],mas[rand()%size][rand()%size]);
for( i=0;i<size;i++)
{
for(int j=0;j<size;j++)
cout<<mas[i][j]<<" ";
cout<<endl;
}
 
str_chek(mas,str);
stolb_chek(mas,stolb);
diag1_chek(mas,diag1);
diag2_chek(mas,diag2);
cout<<"proverka na magiyu"<<endl;
cout<<"1 diag="<<diag1<<" 2diag="<<diag2<<" stroka="<<str[0]<<" stolb="<< stolb[0]<<endl;
 
for( i=0;i<size;i++)
if((str[i]!=stolb[i])||(diag1!=str[i])||(diag2!=str[i])||(diag1!=stolb[i])||(diag2!=stolb[i]))
{
    cout<<"oblomis"<<endl;
break;
}
else
if(i==size-1)
{cout<<"Kubik magicheskiy"<<endl;
for( i=0;i<size;i++)
{
for(int j=0;j<size;j++)
cout<<mas[i][j];
cout<<endl;
}
system("pause");
}
 
}
 
}
////////////////////////////////////
void str_chek(int mas[][size],int*str)
{
    for(int i=0;i<size;i++)
for(int j=0;j<size;j++)
 
str[i]+=mas[i][j];
 
}
////////////////////////////////////////////
 
void stolb_chek(int mas[][size],int*stolb)
{
    for(int i=0;i<size;i++)
        for(int j=0;j<size;j++)
        
            stolb[j]+=mas[i][j];
    
}
////////////////////////////////////////////////
void diag1_chek(int mas[][size],int&diag1)
{
    for(int i=0;i<size;i++)
            diag1+=mas[i][i];
    
}
////////////////////////////////////
void diag2_chek(int mas[][size],int&diag2)
{
 
        for(int j=0,i=size-1;j<size;j++,i--)
            diag2+=mas[i][j];
    
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2011, 16:24     Автонахождение магических квадратов
Посмотрите здесь:

Сумма квадратов ;) - C++
Можно ли заданное натуральное число М представить в виде суммы двух квадратов натуральных чисел? Написать программу решения этой задачи....

Фигура из квадратов - C++
Даны действительные числа а1,в1,с1,а2,в2,с2,...аn, вn,cn. Эта последовательность определяет на плоскости n квадратов со сторонами,...

Поиск квадратов из точек - C++
Всем доброго времени суток, уважаемые форумчане. Решаю задачу, вот столкнулся с проблемой, да и в общем прощу проанализировать код, что...

Программка квадратов чисел - C++
Вычислить сумму квадратов положительных элементов в массиве М 16 и Б 7 и имеющих нечётных индексов Добавлено через 4 минуты Можно на...

Найти сумму квадратов - C++
Даны два массива А(10) и В(10). Найти сумму квадратов одноименных элементов массивов

Сумма квадратов 3-х чисел - C++
Дано натуральное N&lt;=1000. Найти все тройки натуральных чисел a, b ,c (a&lt;=b&lt;=c), удовлетворяющих условию a^2+b^2+c^2 = N Помогите,...

Сумма четырех квадратов - C++
Известно, что любое натуральное число можно представить в виде суммы не более чем четырех квадратов натуральных чисел или, что тоже самое,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
25.03.2011, 16:39     Автонахождение магических квадратов #2
Вот был у меня сокурсник на теории ядра, так тот тоже квадрат с кубом путал.
А у нас там 4,7,11, N измерений.
Однако сокурсник преуспел. Диплом получил. Потом - в школу, учителем. Может, до сих пор путает...

Ну это так, к слову.
Ариман
20 / 20 / 1
Регистрация: 18.09.2010
Сообщений: 28
25.03.2011, 16:43  [ТС]     Автонахождение магических квадратов #3
ааааааа ну да )) магический квадрат.....хотя какая разница .
IrineK
Заблокирован
25.03.2011, 16:49     Автонахождение магических квадратов #4
и заполнить матрицу единицами
можно также: двойками, тройками ... и т.д. Это - тоже будут магические квадраты.
Или вас такие не устраивают?
Ариман
20 / 20 / 1
Регистрация: 18.09.2010
Сообщений: 28
25.03.2011, 16:51  [ТС]     Автонахождение магических квадратов #5
Цитата Сообщение от IrineK Посмотреть сообщение
можно также: двойками, тройками ... и т.д. Это - тоже будут магические квадраты.
Или вас такие не устраивают?
Да 1 или 2 неважно просто скока единиц стока и сумма мне непринципиально было зато проше считать...в принципе он нашел уже ....тему бы удалить....у меня просто терпения нехватило я думал он сразу их находить станет .
Там надо было заполнить его числами ну скажем 3Х3 от 1 до 9 и искать этот магический квадрат. А то так то естествено еси все числа будут одинаковые то и искать ненадо
IrineK
Заблокирован
25.03.2011, 17:15     Автонахождение магических квадратов #6
А почему вы уверены, что числа от 1 до 9 образуют магический квадрат 3х3?

Добавлено через 14 минут
Методы построения (конечно же, не перебором):
http://ru.wikipedia.org/wiki/%D0%9C%...80%D0%B0%D1%82
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.03.2011, 18:05     Автонахождение магических квадратов
Еще ссылки по теме:

Метод наименьших квадратов - C++
Можете около сложных строчек написать что там происходит(комментарии) #include &quot;stdafx.h&quot; #include &lt;tchar.h&gt; #include &lt;iostream&gt; ...

Метод наименьших квадратов - C++
В коде реализован метод наименьших квадратов. Помогите переделать в метод полиномов Чебышева. #include &lt;tchar.h&gt; #include &lt;iostream&gt;...

Метод наименьших квадратов - C++
Ребят,вот в чем беда. нужно для курсового решить задачу. нужно апроксимировать данные линейной зависимостью y=ax+b. В ручную все уже...

Даны площади квадратов - C++
Даны площади квадратов. Найти длину диагонали самого большого из них. Заранее спасибо.

Массив полных квадратов - C++
Требуется сгенерировать случайным образом динамический массив 2n. Проблема в том что при числах до 39 программа работает при числе 39...


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

Или воспользуйтесь поиском по форуму:
Ариман
20 / 20 / 1
Регистрация: 18.09.2010
Сообщений: 28
25.03.2011, 18:05  [ТС]     Автонахождение магических квадратов #7
Цитата Сообщение от IrineK Посмотреть сообщение
А почему вы уверены, что числа от 1 до 9 образуют магический квадрат 3х3?

Добавлено через 14 минут
Методы построения (конечно же, не перебором):
http://ru.wikipedia.org/wiki/%D0%9C%...80%D0%B0%D1%82
Ну там же написано и пример приведен,как раз числа от 1 до 9. вообше задача у меня была просто на проверку являетца ли введеная матрица магическим квадратом.Плюс у меня изменяя значения size можно менять величину квадрата.Ну лениво мне было руками вводить матрицу а так прога все за меня делает,правда долго с перебором...А по формуле ну там просто набор констант для квадрата заданого размера....недочет в целом но она работает .
А за сылку спс буду шас пробовать по описаным методам .
Yandex
Объявления
25.03.2011, 18:05     Автонахождение магических квадратов
Ответ Создать тему
Опции темы

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