这是我第一次使用JS,有问题的地方还希望大佬指出
程序的容错性还没做到完美,日后补充

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title>GPA计算工具</title><script>function getNum() {document.getElementById("in").innerHTML="";var cnum = Number(document.getElementById("cNum").value);var content;for (i = 0; i < cnum; i++) {content = document.getElementById("res").innerHTML;document.getElementById("in").innerHTML = content + "<br>第" + (i + 1) + "门成绩:  <input id=\"sc" + i +"\" type=\"number\"> 学分:<input id=\"cr" + i + "\" type=\"number\">";}content = document.getElementById("res").innerHTML;document.getElementById("in").innerHTML = content + "<br><button οnclick=\"deal()\">计算</button>";}function getcr(x) {if (x < 60) return Number(0.0);else if (x <= 63) return Number(1.0);else if (x <= 67) return Number(1.5);else if (x <= 71) return Number(2.0);else if (x <= 74) return Number(2.3);else if (x <= 77) return Number(2.7);else if (x <= 81) return Number(3.0);else if (x <= 84) return Number(3.3);else if (x <= 89) return Number(3.7);else return Number(4.0);}function deal() {var score = [];var credit = [];var cnum = Number(document.getElementById("cNum").value);for (i = 0; i < cnum; i++) {score.push(Number(document.getElementById("sc" + i).value));credit.push(Number(document.getElementById("cr" + i).value));}var total = 0.0;for (i = 0; i < cnum; i++) {total = total + credit[i];}var res = 0.0;for (i = 0; i < cnum; i++) {res = res + (credit[i] / total) * getcr(score[i]);}if(isNaN(res) || res<0) alert("抱歉,发生了错误!\n请检查有无漏项或者输入的某个学分为零或负数\n请修正后重新点击计算按钮")else alert("您的GPA为" + res + "\n您可以点击刷新进行第二次使用!");}</script>
</head><body>课程数:<br><input id="cNum" type="number"><br><button onclick="getNum()">下一步</button><div id="res"></div><br><br><br>
</body></html>

用JS制作一个简易GPA计算器相关推荐

  1. 制作一个简易的计算器

    这里写自定义目录标题 欢迎使用Markdown编辑器 新的改变 功能快捷键 合理的创建标题,有助于目录的生成 如何改变文本的样式 插入链接与图片 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一 ...

  2. 如何制作一个简易的计算器

    今天,我们来学习如何完成一个简易计算器的功能吧! 一.布局 我们可以在HTML中使用CSS完成计算器的布局.接下来,我们便先来看看我们所要实现的效吧! 上图的计算器中,我们可以通过以下几个步骤完成对计 ...

  3. 今天我教大家用js制作一个简单的计算器

    首先我们先打好框架 代码如图: 下面我们来看一下页面显示效果: 然后我们开始写js效果: 这样,我们一个简单的计算器就做好了,效果如图:

  4. 使用awt制作一个简易加法计算器

    AWT_加法计算器(Java) package Demo01;import java.awt.*; import java.awt.event.ActionEvent; import java.awt ...

  5. js 月份间隔计算器_15分钟用JS做一个简易计算器

    原标题:15分钟用JS做一个简易计算器 前言 这个小练手旨在帮助刚上手学习Java的同学练习最基本的Js知识,大神勿喷哈,由于这个是非常简易的计算器,可以完成的功能有加减乘除和AC(清屏),DEL(退 ...

  6. 用HTML5制作一个简易计算器

    用H5制作一个简易计算器 最近刚学JavaScript,之后紧接着做了一个简易的计算器,能够实现数字的加减乘除运算. 首先,先用HTML5搭建好计算器大体框架.我这里用了两个表格,一个充当显示器,另一 ...

  7. 使用 Vue.js 制作一个简单的调查问卷平台

    使用 Vue.js 制作一个简单的调查问卷平台 原文  https://github.com/pramper/Demos/tree/master/Vue-Demos/Questionnaire 主题  ...

  8. 使用 ale.js 制作一个小而美的表格编辑器(2)

    今天来教大家如何使用 ale.js 制作一个小而美的表格编辑器,首先先上 gif: 是不是还是有一点非常 cool 的感觉的?那么我们现在开始吧! 这是我们这篇文章结束后完成的效果(如果想继续完成请访 ...

  9. 使用 ale.js 制作一个小而美的表格编辑器(3)

    今天来教大家如何使用 ale.js 制作一个小而美的表格编辑器,首先先上 gif: 是不是还是有一点非常 cool 的感觉的?那么我们现在开始吧! 这是我们这篇文章结束后完成的效果(如果想继续完成请访 ...

最新文章

  1. impala 本年格式化时间_hive,hbase,impala之间的对比
  2. 调侃吴恩达,Diss特斯拉,吐槽OpenAI…《AI寒冬将至》作者点评2019“AI小丑秀”...
  3. 讲真,下次打死我也不敢随便改serialVersionUID了
  4. 院士论坛 | 郭毅可院士:人工智能的热望与冷思考
  5. Mars 算法实践——人脸识别
  6. VTK:相互作用之KeypressEvents
  7. java 管理对象是什么_Java工程师(16)对象的管理
  8. Oracle 11gR2 GI日常管理手册
  9. eclipse光标变成黑块变粗解决办法
  10. CSS 元素超出部分滚动, 并隐藏滚动条
  11. 【SpringBoot_ANNOTATIONS】AOP 01 AOP功能测试
  12. 瑞星力荐金山毒霸 原来是广告程序 作崇
  13. 2019年互联网寒冬,带你走进真实的面试杀出重围
  14. 韩信点兵(两种方法C语言)
  15. 车牌识别 php,智能车牌识别系统
  16. java 系统容量预估
  17. 2018华为软件精英挑战赛经验(一)
  18. 在Java中计算一元线性回归
  19. 查询 MySQL 字段注释的 5 种方法
  20. 约瑟夫环 -- 丢手绢问题

热门文章

  1. C#,JAVA人民币小写转大写
  2. IDEA :插入代码模板(Ctrl+J )
  3. 数学——行向量和列向量
  4. 3 Python数据分析 美国各州人口分析案例 Pandas高级操作 美国大选献金案例 matplotlib
  5. 格子玻尔兹曼机(Lattice Boltzmann Method)系列3:LBM在不可压缩流动下的边界条件算法
  6. 史上最全数据集网站汇总
  7. Linux命令·rmdir
  8. npm 实战精讲-曾亮-专题视频课程
  9. 科研—画图图片处理1
  10. CentOS 消亡?不怕!替代发行版 AlmaLinux 获得商业支持