早教吧作业答案频道 -->数学-->
2.设计一个4*4魔方程序,让魔方的各行值的和等于各列值的和,并且等于两对角线值的和64.例如一下魔方提示求4*4魔方的一般步骤如下:(1)设置初始魔方的起始值和相邻元素之间的差值.
题目详情
2.设计一个4*4魔方程序,让魔方的各行值的和等于各列值的和,并且等于两对角线值的和64.例如一下魔方
【提示】
求4*4魔方的一般步骤如下:
(1)设置初始魔方的起始值和相邻元素之间的差值.例如上述魔方的初始魔方的起始值(first)和相邻元素之间的差值(step)分别为:
first=1
step=2
(2)设置初始魔方元素的值.例如上述魔方的初始魔方为:
1 3 5 7
9 11 13 15
17 19 21 23
25 27 29 31
(3)生成最终魔方.方法如下:
①求最大元素值与最小元素值的和sum,该实例的sum是:
1+31=32
②用32减去初始魔方所有对角线上元素的值,然后将结果放在原来的位置,这样就可求得最终魔方.本例最终魔方如下:
31 3 5 25
9 21 19 15
17 13 11 23
7 27 29 1
本题的魔方类magic的参考框架如下:
class magic
{ public:
void getdata();
void setfirstmagic();
void generatemagic();
void printmagic();
private:
int m[4][4];
int step;
int first;
int sum;
};
【提示】
求4*4魔方的一般步骤如下:
(1)设置初始魔方的起始值和相邻元素之间的差值.例如上述魔方的初始魔方的起始值(first)和相邻元素之间的差值(step)分别为:
first=1
step=2
(2)设置初始魔方元素的值.例如上述魔方的初始魔方为:
1 3 5 7
9 11 13 15
17 19 21 23
25 27 29 31
(3)生成最终魔方.方法如下:
①求最大元素值与最小元素值的和sum,该实例的sum是:
1+31=32
②用32减去初始魔方所有对角线上元素的值,然后将结果放在原来的位置,这样就可求得最终魔方.本例最终魔方如下:
31 3 5 25
9 21 19 15
17 13 11 23
7 27 29 1
本题的魔方类magic的参考框架如下:
class magic
{ public:
void getdata();
void setfirstmagic();
void generatemagic();
void printmagic();
private:
int m[4][4];
int step;
int first;
int sum;
};
▼优质解答
答案和解析
#include
using namespace std;
class magic
{
public:
void getdata();
void setfirstmagic();
void generatemagic();
void printmagic();
private:
int m[4][4];
int step;
int first;
int sum;
} ;
void magic::getdata()
{
cin>>first>>step>>sum;
}
void magic::setfirstmagic()
{
int temp=first;
for(int i=0;i
using namespace std;
class magic
{
public:
void getdata();
void setfirstmagic();
void generatemagic();
void printmagic();
private:
int m[4][4];
int step;
int first;
int sum;
} ;
void magic::getdata()
{
cin>>first>>step>>sum;
}
void magic::setfirstmagic()
{
int temp=first;
for(int i=0;i
看了 2.设计一个4*4魔方程序,...的网友还看了以下:
有6个元素6,5,4,3,2,1顺序进栈,问下列哪一个不是合法的出栈序列 ______。A.5,4, 2020-05-23 …
6个元素按1、2、3、4、5、6的顺序进栈,序列(40)是不可能的出栈序列。A.1、2、3、4、5、 2020-05-26 …
高等代数——有理多项式的因式分解在求有理多项式的有理根时在找an和a0的因子时需不需要找非素数因子 2020-07-09 …
松柏能分泌杀菌素,可以净化空气.如果1公顷松帕林每天能分泌杀菌素49.6克,那么一片2.4公顷的松 2020-07-16 …
2+3=52+3+4=92+3+4+5=142+3+4+5+6=202+3+4+5+6+7=272 2020-07-18 …
给出四个结论:①{1,2,3,1}是由4个元素组成的集合②集合{1}表示仅由一个“1”组成的集合③ 2020-08-01 …
C语言程序编程5.给定一个一维数组a有N个元素,求最大值。6.用选择法对10个数按从小到大的顺序排 2020-08-03 …
素素和刚刚去买书,她们看上了同一本书一个差6.3元一个差4.8元,两人合起来买这一本书还剩4.7元, 2020-11-30 …
6.有六个元素6,5,4,3,2,1\x05的顺序进栈,问下列哪一个不是合法的出栈序列?(C)A.5 2020-12-05 …
给出四个结论:①{1,2,3,1}是由4个元素组成的集合②集合{1}表示仅由一个“1”组成的集合③{ 2020-12-23 …