已知两人姓名,测定两人缘分的算法
1 测定两人缘分,我可以通过两个人的姓名,计算一个100以内的数值,作为缘分指数,并通过该数值确定缘分心语。
2 该算法结果需不带有随机性。
3 定义最高指数为100,两人姓名相同获得。(或者加入其它的想法)
4 为了使游戏具有一定的可玩性和不使人过分沮丧,保证缘分指数在60~100之间,如此,可按一定的等差划分缘分心语。例如60-70为一段,70-80为一段等等。
----------------未加修饰的源码,仅作记忆-------
<script language="JavaScript">
<!--
function check()// 判断用户输入格式
{
if(mainform.name1.value=="")
{
document.getElementById("name1text").innerHTML="<font color='blue'>男生姓名为空</font>";
mainform.name1.focus();
return false;
}
if(mainform.name2.value=="")
{
document.getElementById("name2text").innerHTML="<font color='blue'>女生姓名为空</font>";
mainform.name2.focus();
return false;
}
return true;
}
//-->
</script>
<?php
if(isset($_GET['act']) and $_GET['act']=='sub')
{
//获取表单数据
$n1=$_POST['name1'];
$n2=$_POST['name2'];
$zhishu=zhishu($n1,$n2);
echo "<script language='javascript'>alert('".$n1."和".$n2."的缘分指数是".$zhishu."')</script>";
}
function zhishu($n1,$n2)
{
$n1=jiequ($n1);
$n2=jiequ($n2);
$n1=abs($n1-$n2);//取绝对值,保证a+b和b+a求的缘分指数相同
//以下是指数修正算法,随意写的,可以有其他算法
if($n1<60 and $n1>=50)
{
return ($n1*1.5);
}
elseif ($n1<50 and $n1>=40) {
return ($n1*1.8);
}
elseif ($n1<40 and $n1>=0) {
return (100-$n1);
}
else {
return $n1;
}
} // end func
function jiequ($s)//此函数功能是获取名字对应的MD5中最先出现的两个数字组成的数字
{
$s=md5($s);
$k="";
for ($i=0;$i<32 ;$i++ ) {
$r = substr($s,$i,1);
if (is_numeric($r)) {
$k .=$r;
}
}
return substr($k,0,2);
} // end func
?>
<form action="./yuanfen.php?act=sub" name="mainform" οnsubmit="return check();" method="post">
姓名A<input type="text" name="name1"><label id="name1text" name="name1text"></label><br>
姓名B<input type="text" name="name2"><span id="name2text"></span><br>
<input type="submit" value="查看" name="sub"> <input type="reset" value="重置">
</form>
已知两人姓名,测定两人缘分的算法相关推荐
- 给定一个二维 0-1 矩阵,其中 1 表示陆地,0 表示海洋,每个位置与上下左右相连。已知矩阵中有且只有两个岛屿,求最少要填海造陆多少个位置才可以将两个岛屿相连。
给定一个二维 0-1 矩阵,其中 1 表示陆地,0 表示海洋,每个位置与上下左右相连.已知矩阵中有且只有两个岛屿,求最少要填海造陆多少个位置才可以将两个岛屿相连. 输入是一个二维整数数组,输出是一个非 ...
- c语言已知三点的坐标,求一个C语言算法:已知三角形的三个顶点的坐标,求三角形面积...
共回答了16个问题采纳率:87.5% //三个顶点坐标是6个参数. #include #include double S_triangle(double ax,double ay,double bx, ...
- C# 已知圆心和两点,用DrawArc()画圆弧(算法)
(本文转载自)http://www.cnblogs.com/stalwart/archive/2010/12/06/1897636.html 如题,已经知道圆心和两点,画出两点间的圆弧,思路,先分别求 ...
- 姓名相加除以二测试缘分_免费测试两人关系姓名,两个人姓名笔画相加除
提到免费测试两人关系姓名,大家都知道,有人问姓名笔画测试两人关系爱情测试,双方的笔画加起来除以2,另外,还有人想问姓名笔画测两人关系,你知道这是怎么回事?其实有什么缘分测试和姓名配对测两人之间的缘分的 ...
- 均值已知检验方差_χ2检验教案:独立性检验的z统计量
摘要:「如无必要勿增实体」. 独立性检验在统计教学场合可以替代为 T 检验.F 检验,在研究应用场合应当替代为Odds Ratio置信区间的Fisher检验.或者独立两样本均值之差置信区间(连续性校正 ...
- 面对已知问题和未知问题的解决思路
导语:不论我们是做熟悉的业务还是转型新的领域,项目开展中都会遇到各种各样的问题,这时候,如何解决呢?本文从已知问题和未知问题两个方面对这个问题展开了分析说明,供大家一起参考学习. 做了这么多年运营,见 ...
- 已知分布函数求概率密度例题_二次函数讲义(三)
用待定系数法求二次函数的解析式 [学习目标] 1. 能用待定系数法列方程组求二次函数的解析式: 2. 经历探索由已知条件特点,灵活选择二次函数三种形式的过程,正确求出二次函数的解析式, 二次函数三种形 ...
- 现代无线侦察技术(二):MANA 和已知信标攻击
在本系列文章的第一部分中,我们介绍了802.11的一些基本原理,并描述了如何利用协议的漫游和网络选择特性来执行无线中间人(PITM)攻击. 我们还讨论了如何在 EAPHammer 中执行基本的仿冒接入 ...
- 地图已知两点坐标画一条曲线
开发中遇到了这个问题,Leaflet没有用两点画曲线的方法,只能自己求出曲线的坐标点组,再画了,废话不多说,直接贴代码: // 入参两个坐标(字符串格式:"114.30911,30.6000 ...
最新文章
- php中怎么过滤器_PHP 过滤器(Filter)
- 【重复制造精讲】2、主数据介绍
- Linux 进内核,arm linux 启动流程之 进入内核
- java mysql 回滚_Java 中对数据库操作时的 回滚
- a标签获取input值_HTML5常用标签
- C# 中? 和 ?? 在变量中的使用
- Ubuntu16.04 sudo apt-get install lib***-dev安装失败,无法锁定文件,sudo apt-get update 更新失败也无法解决
- 仿博客园个人博客(3)基本完成
- [面试] 算法(八)—— 树
- 代码块(block)之函数体(二)
- linux下多线程断点下载工具-axel
- app客户端上传图片实现方式
- apache mediawiki 安装_mediawiki的安装
- 深度学习应用于脑电信号处理
- 攻防世界-re-for-50-plz-50
- 入网模组 |合宙Air 202 GPRS模组接入机智云(硬件开发平台)
- 万能电视遥控器代码表
- Linux配置MySQL远程访问权限
- [AGC056E]Cheese
- 如何查询党政机关会议定点场所?
热门文章
- 基于springboot的景区旅游信息管理系统(源代码+数据库)
- php代码整洁之道(有空需要多看多练习,养成习惯)
- 金融行业的密钥及加密机制
- 台式计算机高配 2016,2016年最新的高配置台式电脑报价【图解】
- 在Excel2010中输入身份证号
- 我是你流浪过的一个地方——王海桑
- git冲突出现的原因及解决方案
- python 直方图的绘制方法全解_教你利用Python玩转histogram直方图的五种方法
- 江苏省高等学校计算机一级考什么,江苏省高等学校计算机等级考试一级大纲及考试说明...
- EFCore——IQueryable与IEnumerable的区别(13)