回复:科学记数法底数和指数

已锁定

李岩

西门子1847工业学习平台

  • 帖子

    3173
  • 精华

    34
  • 被关注

    112

论坛等级:至圣

注册时间:2004-03-31

钻石 钻石 如何晋级?

发布于 2022-11-08 17:08:54

7楼

展开查看
以下是引用龟仙人在2022-11-08 16:51:54的发言 >6楼

真没发现西门子触摸屏居然没有指示显示功能,上位机是有指数显示功能的。还以为AB的触摸屏可以显示指示的,结果也没有这个功能。总觉得西门子老是跟在西门子的后面,AB没有的功能,西门子也没有,AB有的功能西门子也没有。

几乎所有的国产触摸屏也没用科学记数法显示功能。本胖在繁易的触摸屏上用C脚本(宏)实现的。这个smart程序是照着C源文件翻译过来的。

int MacroMain()

{

float g;

int i,j;

g = GetFloat(@G1@,0);

for(i= -14;i<7;i++){

if((g >= pow(10,i)) && (g < pow(10,(i+1)))){

j = i;

g = g / (float)pow(10,i);

if(g >= 9.99999){

g = g / 10;

j = j + 1;

}

SetFloat(@G1_Base@,0,g);

SetFloat(@G1_Index@,0,j);

i = 7;

}

}

return 0;

}

中间的j那部分,是因为领导要求必须只显示两位小数,这就带来了一个奇葩问题:有可能显示出10e-4!!!

仔细检查后,发现,9.9996之类的底数,被四舍五入成10了。只好人为的加上一段。就是红色那部分。

国人当自强 共同努力 抵制日货
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8936条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。