1 Star 0 Fork 0

张明洁/entropy

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
stdin-part.js 1.33 KB
一键复制 编辑 原始数据 按行查看 历史
张明洁 提交于 2021-09-19 17:25 . project
#!/usr/bin/env node
var i =0;
var p =[];
function again(){
console.log(`p${i}: `);
var sum = 0;
process.stdin.on('data',data=>{
data = data.toString('utf8');
data = data.slice(0,-1);
if(data.length === 0){
console.log(p);
for(const j of p){
sum = sum + Number(j);
}
if(sum > 1){
i = 0;
p = [];
console.log('概率和大于1,请重新输入');
console.log(`p${i}:`)
}else if(sum <1){
i=0;
p=[];
console.log('概率和小于1,请重新输入');
console.log(`p${i}`)
}else{
var h = 0;
for(const e of p){
h = h - Number(e)*Math.log(Number(e),2)
}
h = (parseInt(h*1000))/1000;
console.log(`p(h) = ${h} bit`);
process.exit();
}
}else{
if(isNaN(data)){
console.log('请输入数字')
console.log(`p${i}:`)
return false;
}else if(data>1){
console.log('请输入小于1的数');
console.log(`p${i}:`)
return false;
} else if(data<0){
console.log('请输入大于0的数');
console.log(`p${i}:`)
return false;
}else{
p.push(Number(data));
i = i+1;
//console.log(p);
console.log(`p${i}: `)
return false;
}
}
})
}
again();
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/Dear-J/entropy.git
git@gitee.com:Dear-J/entropy.git
Dear-J
entropy
entropy
master

搜索帮助