当前位置: 首页 > news >正文

计算机求解满足三角形各边数字之和相等的数字填充

圆圈处不重复的填入1至9,使得每条边的四个数字相加的总和相等。

求解思路:

数组中存放1到9的数字,每次随机交换两个数字,构建出新的数字组合,计算这个数字组合是否符合要求。

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>void swap(int *a, int *b)
{int t = *a;*a = *b;*b = t;
}int main()
{int data[9] = {1, 2, 3, 4, 5, 6, 7, 8, 9};int i, j;int a, b, c;/* 通过系统时间来初始化随机数发生器 */srand(time(NULL));/* 尝试交换若干次 */for(i = 0; i < 10000; i++){/* 将索引0与索引1~8的数字进行交换 */j = 1 + rand() % 8;swap(&data[0], &data[j]);/* 计算当前组合,如果符合条件则打印出来 */a = (data[0] + data[1] + data[2] + data[3]);b = (data[3] + data[4] + data[5] + data[6]);c = (data[6] + data[7] + data[8] + data[0]);if (a == b && b == c){for(j = 0; j < 9; j++){printf("%d,", data[j]);}printf("\n");}}return 0;
}

使用w64devkit gcc编译器编译运行,得出一些求解结果。

PS D:\Codes> gcc -o test test.c
PS D:\Codes> .\test
8,2,4,7,6,5,3,9,1,
1,6,8,5,4,2,9,7,3,
5,8,6,1,7,3,9,4,2,
7,6,5,3,1,9,8,2,4,
3,7,2,9,5,1,6,4,8,
3,7,2,9,5,1,6,4,8,
8,1,9,3,5,6,7,4,2,
9,7,3,1,6,8,5,2,4,
7,2,6,4,5,9,1,3,8,
7,1,8,3,9,5,2,4,6,
9,3,4,7,6,2,8,5,1,
7,8,1,3,5,9,2,6,4,
6,2,7,5,3,8,4,1,9,
3,8,1,7,6,4,2,9,5,
3,8,1,7,6,4,2,9,5,
5,4,2,9,3,7,1,8,6,
2,6,7,5,3,4,8,9,1,
7,2,6,4,9,5,1,8,3,
3,2,9,7,1,5,8,6,4,
9,5,1,8,2,6,7,3,4,
7,8,1,3,5,9,2,6,4,
3,6,4,8,1,5,7,9,2,
9,3,4,7,2,6,8,5,1,
2,6,8,3,5,4,7,1,9,
9,5,1,8,6,2,7,3,4,
9,2,4,5,8,6,1,7,3,
4,9,5,1,3,8,7,6,2,
3,4,8,5,6,2,7,1,9,
8,1,9,2,7,6,5,3,4,
PS D:\Codes>

第一个结果:

http://www.lryc.cn/news/27777.html

相关文章:

  • python魔术方法
  • 从0开始学python -48
  • 当面试官问我前端可以做的性能优化有哪些
  • 一文读懂Java/O流的使用方法和技巧
  • AI for Science系列(二):国内首个基于AI框架的CFD工具组件!赛桨v1.0 Beta API介绍以及典型案例分享!
  • SpringCloud简单介绍
  • 《uniapp基础知识》学习笔记Day38-(Period2)全局文件一些常用的配置
  • APICloud 弹动与滚轴冲突的解决模拟
  • Spring Cloud(微服务)学习篇(四)
  • 【Java Pro】001-Java基础:面向对象
  • ElasticSearch从0到1——基础知识
  • 【面试系列】equals和==的区别
  • 存在重复元素模块-三道题
  • 3种方法删除7-Zip压缩包的密码
  • Codeforces Round 855 (Div. 3)(A~F)
  • 【SpringCloud】SpringCloud详解之Feign实战
  • tuts4you上lena‘s40个crackme(1)
  • 研讨会回顾 | Perforce版本控制工具Helix Core入华十年,携手龙智赋能企业大规模研发
  • C++ vscode 开发环境搭建
  • ANR系列(二)——ANR监听方案之SyncBarrier
  • 【完美解决】应用程序无法正常启动(0xc000007b)请单击“确定”关闭应用程序
  • .NET基础加强第二课--静态成员,静态类
  • 【UML+OOPC嵌入式C语言开发】使用C语言实现一个面向对象语言才能够实现的类
  • 软件测试自动化Java篇【Selenium+Junit 5】
  • Clip:学习笔记
  • STM32CubexMX与FreeRTOS学习
  • Master Slave 主从同步错误 Slave_IO_Running:NO/Slave_SQL_Running: No
  • JavaScript函数之prototype原型和原型链
  • 从上海分时电价机制调整看转供电用户电能计费
  • TypeScript类型体操:获取数组中元素对象属性的值作为新类型