亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用于字母矩陣輸出的嵌套 for 循環

用于字母矩陣輸出的嵌套 for 循環

三國紛爭 2023-07-29 15:22:13
背景:我一直在研究嵌套 for 循環練習。我正在編寫的程序旨在獲取列和行數據并使用嵌套 for 循環創建字母矩陣或網格。我能夠在網格中編譯數據(太棒了?。?,但是網格頂部有一行不必要的數據。(不太好......)任何人都可以讓我知道可能導致此問題的原因,我相信這是非常簡單的事情,但我的大腦可能因為看了這么久而燒焦了。任何幫助將不勝感激。<!DOCTYPE html><html><head>    <title>""</title>    <script>        function letter_matrix() {            let column = parseInt(document.form.letter_column.value);            let rows = parseInt(document.form.letter_rows.value);            let text = "<table><th></th>";            let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";                        for (let i = 0; i < rows ; ++i) {                          text += "<tr>"+ letters.charAt(i) + "</td>";               for(let j = 0; j < column ; j++){                                   let k = (i * rows + j) % 26;                   text += "<td>"+letters.charAt(k)+ "</td>";               }                       }        text += "</table>";         document.getElementById("results").innerHTML= text;    }    </script></head><body>    <h1>""</h1>    <form name="form" action = "javascript:letter_matrix();">        Columns: <input type="text" name="letter_column">        Rows: <input type="text" name="letter_rows">        <input type="submit" value="Enter values.">    </form>    <pre id="results">    </pre></body></html>
查看完整描述

3 回答

?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

在第一個文件中,for您創建一個<tr>添加一些文本并關閉一個</td>.


你很可能應該只打開一個tr,然后在內部for然后關閉tr


for (let i = 0; i < rows; ++i) {

  text += "<tr>";

  for (let j = 0; j < column; j++) {

    let k = (i * rows + j) % 26;

    text += "<td>" + letters.charAt(k) + "</td>";

  }

  text += '</tr>';

}


查看完整回答
反對 回復 2023-07-29
?
達令說

TA貢獻1821條經驗 獲得超6個贊

您需要<tr>如下所示拆分標簽。這條線引起了問題


text += "<tr>"+ letters.charAt(i) + "</td>";


您得到的異常結果只是因為這個。請參閱下面的代碼,我如何在循環</tr>后使用for并刪除letter.charAt(i). 這是添加了額外的行。


? ? ? ? ?text += "<tr>";

? ? ? ??

? ? ? ? ? ?for(let j = 0; j < column ; j++){

? ? ? ? ? ??

? ? ? ? ? ? ? ?let k = (i * rows + j) % 26;

? ? ? ??

? ? ? ? ? ? ? ?text += "<td>"+letters.charAt(k)+ "</td>";

? ? ? ? ? ?}

? ? ? ? ?text += "</tr>";


查看完整回答
反對 回復 2023-07-29
?
溫溫醬

TA貢獻1752條經驗 獲得超4個贊

就是這個。?https://jsfiddle.net/Cornel777/kgbojuhz/8/

  1. 剛剛添加到"<td>"這里text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";

  2. 搬了你的<script><body>

  3. 這樣做了,但這不是強制性的,只是較新的。

let column = document.getElementById("columns").value;

let rows = document.getElementById("rows").value;

?<!DOCTYPE html>

? ??

? ? <html>

? ??

? ? <head>

? ? ? ? <title>""</title>

? ??

? ? ??

? ? </head>

? ??

? ? <body>

? ? ? ? <h1>""</h1>

? ??

? ? ? ? <form name="form" action = "javascript:letter_matrix();">

? ??

? ? ? ? ? ? Columns: <input id="columns" type="text" name="letter_column">

? ? ? ? ? ? Rows: <input id="rows" type="text" name="letter_rows">

? ??

? ? ? ? ? ? <input type="submit" value="Enter values.">

? ??

? ? ? ? </form>

? ??

? ? ? ? <pre id="results">

? ? ? ? </pre>

? ? </body>

? ??

? ? ? <script>

? ? ? ? ? ? function letter_matrix() {

? ??

? ? ? ? ? ? ? ? let column = document.getElementById("columns").value;

? ? ? ? ? ? ? ? let rows = document.getElementById("rows").value;

? ? ? ? ? ? ? ? let text = "<table><th></th>";

? ??

? ? ? ? ? ? ? ? let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";

? ? ? ? ? ? ? ??

? ??

? ? ? ? ? ? ? ? for (let i = 0; i < rows ; i++) {

? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ?text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";

? ??

? ? ? ? ? ? ? ? ? ?for(let j = 0; j < column ; j++){

? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ?let k = (i * rows + j) % 26;

? ??

? ? ? ? ? ? ? ? ? ? ? ?text += "<td>"+letters.charAt(k)+ "</td>";

? ? ? ? ? ? ? ? ? ?}

? ??

? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? }

? ? ? ? ? ??

? ? ? ? ? ? text += "</table>";

? ? ?

? ? ? ? ? ? document.getElementById("results").innerHTML= text;

? ? ? ? }

? ? ? ? </script>

? ??

? ? </html>

? ??

查看完整回答
反對 回復 2023-07-29
  • 3 回答
  • 0 關注
  • 188 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號