<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          CSDN的C1考試,質(zhì)數(shù)問題,一不小心就錯(cuò)失得分

          共 1622字,需瀏覽 4分鐘

           ·

          2021-08-25 14:41

          2021年8月22號(hào),懷著忐忑的心參加了CSDN的C1考試,為自己能順利通過,真沒想到卻栽在了質(zhì)數(shù)大題上。錯(cuò)失10分真的好可惜。


          現(xiàn)在回顧一下這道題目。


          題目要求:


          1、生成2個(gè)1~100的隨機(jī)整數(shù)。(是1~50 還是 1~100 有點(diǎn)記不清楚了)


          2、打印出這2個(gè)整數(shù)的所有質(zhì)數(shù)。


          這道題主要是考查我們對(duì)質(zhì)數(shù)、JS中Math中的相關(guān)方法的理解


          第一:


          什么是質(zhì)數(shù)?


          能被1及自身整除的數(shù)為質(zhì)數(shù)


          第二:


          與本題相關(guān)的Math方法有哪些?


          Math.random()? 隨機(jī)數(shù)生成方法


          Math.floor()? 生成的隨機(jī)數(shù)按下取整。如50.62 ?結(jié)果為 50? ; -50.62 ?結(jié)果為 -51


          Math.ceil()? 生成的隨機(jī)數(shù)按上取整。如50.62 ?結(jié)果為 51 ; -50.62 ?結(jié)果為 -50


          講真的這道題目真不難,考試時(shí)我的答案是:


          var a1 = Math.floor(Math.random() * 100)console.log("===="  + a1)

          var a2 = Math.floor(Math.random() * 100)console.log("====" + a2)

          if(a1 > a2){ console.log(a1 + "大")}

          var arr1 = check(a1)console.log(arr1)var arr2 = check(a2)console.log(arr2)var arr = arr1.concat(arr2)console.log(arr)

          function check(obj) { var arr = [] var count = 0 for (var i = 2; i< obj; i++){

          for(var j = 2; j<=obj; j++){ if(obj % j === 0){ count++ } }

          if(count === 2){ arr.push(i) }

          count = 0 } return arr}


          細(xì)心的同學(xué)肯定已經(jīng)看出上面的問題了,


          考試完畢后,我重新優(yōu)化了一下:


          var a1 = Math.floor(Math.random() * 100)console.log("===="  + a1)

          var a2 = Math.floor(Math.random() * 100)console.log("====" + a2)

          if(a1 > a2){ console.log(a1 + "大")}

          var arr1 = check(a1)console.log(arr1)

          var arr2 = check(a2)console.log(arr2)

          var arr = arr1.concat(arr2)console.log(arr)

          function check(obj) { var arr = [] var count = 0 for (var i = 2; i< obj; i++){ if(t_check(i)){ arr.push(i) } } return arr}function t_check(obj) { for(var j = 2; j<obj; j++){ if(obj % j === 0){ return false } } return true}


          上面是優(yōu)化之后的代碼。?

          瀏覽 62
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  超碰在线日本 | 中文字幕精品久久久久久久直播 | 青青草 婷婷 | 91久久爽无码人妻AⅤ精品蜜桃 | 2022无码 |