穷举法解题 急急~~

来源:百度知道 编辑:UC知道 时间:2024/06/05 05:20:46
将a,b,c,d,e,f这6个变量排成如图2-1(a)所示的三角形,这6个变量分别取1-6这6个整数,并且均不相同,求使三角形三条边上的变量之和相等的全部解。如图2-1(b)就是一个解。
A 1
B F 6 4
C D E 3 2 5
图A 图B
A
B F
C D E
2-1(A)
1
6 4
3 2 5
2-1(b)
用pascal

是程序?

#include <stdio.h>
void main()
{int a,b,c,d,e,f;
for(a=1;a<=6;a++) /*所有可能的a*/
for(b=1;b<=6;b++) /*所有可能的b*/
if(b= =a)continue;
for(c=1;c<=6;c++) /*所有可能的c*/
if(c= =a||c= =b) continue;
for(d=1;d<=6;d++) /*所有可能的d*/
if(d= =a||d= =b||d= =c) continue;
for(e=1;e<=6;e++) /*所有可能的e*/
if(e= =a||e= =b||e==c||e= =d) continue;
f=21-(a+b+c+d+e);
if(a+b+c= =c+d+e&&a+b+c= =e+f+a){ /*输出解*/
printf(“%6d”,a);
printf(“%4d%4d”,b,f);
printf(“%2d%4d%4d”,c,d,e);
scanf(“%*c”);}}} /*按回车键,继续找解*/

图 呢 ? ? ?