华夏影城小程序叫什么

华夏影城小程序叫什么,第1张

华夏影城小程序叫FunIN厅。华夏影城影厅绝佳的视听配以逼真的超大荧屏,具有超强的视觉冲击及声场效果,让你体验完美、梦幻的电影之旅。影院内部采用经典流行色彩元素进行装修,另设Snack bar,品类繁多的食品将满足你不同的需求,给你一个身心愉悦的服务。影片由制片人董文洁联袂国际知名导演西蒙·韦斯特打造,讲述了一个关于突如其来的火山爆发让美丽的度假胜地天火岛瞬间进入“逃生模式”,王学圻、昆凌等人展开了一场绝境历险。所以,华夏影城小程序叫FunIN厅。

public function login(){ $dir="./***"//自己定义的文件名 if(!file_exists($dir)){ mkdir($dir,0777,true)} $upload = new \Think\Upload()// 实例化上传类 $upload->maxSize = 3145728 // 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg')// 设置附件上传类型 $upload->rootPath = $dir// 设置附件上传根目 $upload->savepath=''// 上传单个文件 $info = $upload->uploadOne($_FILES['file'])if(!$info) {// 上传错误提示错误信息 return $this->ajaxReturn(array('error'=>true,'msg'=>$upload->getError()))}else{// 上传成功 获取上传文件信息 $file = $dir . $info['savepath'] . $info['savename']$image = base64_encode(file_get_contents($file))$client = $this->init_face()$options['liveness_control']='NORMAL'$options['max_user_num']='1'$ret = $client->search($image,'BASE64',$this->face_group(),$options)if($ret['error_code']==0){ $user = $ret['result']['user_list'][0]$no = $user['user_id']$score = $user['score']if(!empty($no)){ $data = M('student')->field('no,name,sex')->where("no='{$no}'")->find() if($data){ //查到此学号 $data['score']

两个错误。

1、你把精确度设为1e-6。注意,float的有效数字只有6位,所以算到小数点后6位时,x1,x2,x的值很有可能就一样了,那么x,x1,x2的值将不将变化,而且肯定会大于1e-6,导致死循环。

解决方法是把所有数据改成double型。

2、仔细分析一下你的find函数吧,它求得的最后一个根区间有很大可能并不包含一个有效根。

比如我输入-10 10,那么,第一个根区间会是-10,-2,那么第2个区间就成了-2,11,第2个区间并不包含根。

解决方法是在调用bin_root前,判断一下polynomial(bot[i])*polynomial(top[i])<0

另外,你的find函数在生成最后一个根区间时,会出现x2比top1大1的情况。你自己改改吧。

我的代码如下:

#include "math.h"

#include "stdio.h"

double polynomial(double x)

{//多项式函数,用于给定多项式形式

double y

y=((3*x+6)*x-1)*x+2

return y

}//polynomial函数

int find(int *bot,int *top,int bot1,int top1)

{//根据多项式函数fun自动搜索求根区间,并把各个区间的上限和下限分别保存到top[]和bot[]数组中,返回包含根的区间个数

double y1,y2

int x1,x2

int count=0

x1=bot1

x2=bot1+1

while(x2<=top1)

{

y1=polynomial((double)x1)

y2=polynomial((double)x2)

while(y1*y2>0&&x2<=top1)

{

x2++

y2=polynomial((double)x2)

}

bot[count]=x1

top[count]=x2

count++

x1=x2

x2=x1+1

}

return count

}//find函数

double bin_root(int bot,int top)

{//函数功能,二分法求根

double y,y1,y2

double x1=bot,x2=top,x

x=(x1+x2)/2

y=polynomial(x)

y1=polynomial(x1)

y2=polynomial(x2)

while(fabs(y)>=1e-6)

{

if(y*y1<0)

{

x2=x

}

else

{

x1=x

}

x=(x1+x2)/2

y=polynomial(x)

y1=polynomial(x1)

y2=polynomial(x2)

}

return x

}//二分法求根bin_root函数

void main()

{

int count,bot[10],top[10]

int bot1,top1//由用户输入求根区间,程序自动找到该区间中存在的根的个数

int i

double root

printf("请输入求根区间:\n")

scanf("%d%d",&bot1,&top1)

count=find(bot,top,bot1,top1)

if(count==0)printf("函数在您输入的区间内无根:\n")

for(i=0i<counti++)

{

if(polynomial(bot[i])*polynomial(top[i])<0)

{

root=bin_root(bot[i],top[i])

printf("函数在子区间[%d,%d]内的根为:%.4f\n",bot[i],top[i],root)

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11331014.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存