• 締切済み

JavaScriptを使って九九の表を作る(tableを使って)

大学で、タイトルに書いてある通りの課題が出されました。 以前も質問させていただきましたが、自分の専攻としている分野ではないのですが(つまり、学部の必修科目ではないです)、教員免許取得希望者は落とせない単位なんです…。 もちろん、こんな難解な科目(しかも必須じゃない)を取っている生徒は教員志望者くらいなもので、かなり難しいと評判の科目です。 加えて、私はパソコン初心者です。 なんとか単位を取らねばならないので頑張りたいです。 授業ではJavaScriptの概要を説明されたのみで、実践は教えてもらっていないのにいきなりこんな課題が…。 tableを使っての九九の表の作り方を教えてください。 全て教えてください、という訳ではありません。課題なので自分の力でやらなければならないのは分かります。 タグや記号は自分で調べるので、「九九の表を作るためにはどのような命令をすればいいのか」手助けが欲しいです。 お願いします。どうか助けてください。来週中に提出なんです。

みんなの回答

noname#35109
noname#35109
回答No.6

#2です。 お詫びです。 #4さんの方法が正解ですね。 実習でこういう例題があるのですね。Googleで「JavaScript 九九 Table」と検索したら, http://www.google.com/search?hl=ja&q=JavaScript+%E4%B9%9D%E4%B9%9D+Table ゾロゾロ出てきます。演習と解法みたいなのが。 (ついでにココも出てきてしまいます。キャシュで見たら,質問者さまがここで質問したのバレバレ。) そうだったのですか,document.writeで自動的に表を完成させなさいという意味だったのですね。 Tableを使った計算機を作るのかと勘違いをしていました。 えらく遠回りをさせてしまうところでした。申し訳ございません。 内容が理解できるかどうかは別にして,後も答えは検索すると出てくるかもしれません。 でもテストとかになると検索は使えませんがら自分で考えなければならないと思います。 でも,検索で出た答えを参考に理解していくのも1つの方法かもしれませんね。

参考URL:
http://www.google.com/search?hl=ja&q=JavaScript+%E4%B9%9D%E4%B9%9D+Table
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.5

>テーブルについては授業内で全く説明が無く HTML部分については既に終わっているか、履修している人を対象としてるということなのでしょうね。 少なくとも、JavaScriptで対象としているのは、HTMLやCSSを対象としているので、知らないでは話になりません。このままjavascriptの科目を受け続けるには早急に履修する必要があります。(HTMLやCSSいじらないなら、特別必要ないともいえるが、多分少なくともFORMに関しては必要になると思う) tableの書き方には色々ありますが基本的には <table> <tr><td></td><td></td></tr> <tr><td></td><td></td></tr> </table> のような形になります。 <tr>~</tr>がテーブルの一行のデータを表します。 <td></td>が一行の中のデータを表します。 上記サンプルでは、1行に2つのデータ(セル)があるものが2行あります。(2×2の表)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.4

埋め込み方式でとりあえず作ってみました。 行と列の見出しはありません。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=SHIFT_JIS"> <style> <!-- TD { text-align:center; border:1px solid black; width:20; height:20; } //--> </style> <title>九九</title> </head> <body> <script type="text/javascript"> <!-- var row,col; document.write("<table border='1' cellspacing='0'>"); for(row=1;row<=9;row++){ document.write("<tr valign='middle'>"); for(col=1;col<=9;col++){ document.write("<td>"+row*col+"</td>"); } document.write("</tr>"); } document.write("</table>"); //--> </script> </body> </html>

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

document.writeを使ってjavascriptでtableを書き出すということがわからないのでしょうか? HTMLでTABLEの書き方が判っているなら <TD>に九九の結果を埋め込んで行けばいいですね。 それとも、 すでにあるテーブルにIDなどで、<TD>にあとから値を埋め込むということがわからないのでしょうか?

marumaru-33
質問者

お礼

テーブルについては授業内で全く説明が無く、課題を出された紙に「テーブルを使って表にすること」となっていたんです。 だから本当に自力でやるしかなくて…。ひどい先生です… 質問しに行ったら、「自分で考えてやりなさい」と冷たくあしらわれました…。 こっちは教員免許がかかっているというのに…

noname#35109
noname#35109
回答No.2

特別な関数も使わないし,ヒントを出そうとすると,ほとんど答えになってしまうのですが… 「九九」は難しいので,「一一」から考えましょう。 まず,HTML内のJavaScriptではfunctionをヘッダの中に配置します。 1×1=A で,Aを求める場合, function keisan(){ A.value = 1 * 1; } となります。命令も何もないというか,単なる計算です。.valueはセットするということです。 それをテーブル内のセルにテキストボックスに表示すれば良いということになります。 最終的には --  Y1  Y2  Y3 …    X1 A11 A12 A13 … X2 A21 A22 A23 … X3 A31 A32 A33 … …  …  …  … というような変数の入った表をイメージして,「一一」の表をHTMLで書くと --------------------------------- <html> <head> <meta http-equiv="Content-Language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>一×一</title> <Script type="text/javascript"> <!-- function keisan(){ document.kuku.A11.value = document.kuku.X1.value * document.kuku.Y1.value; } //--> </Script> </head> <body> <Form name="kuku" method="POST"> <table border="1" cellpadding="1" cellspacing="1"> <tr> <td>---</td> <td><Input type="text" name="Y1" size="5" value="1"></td> </tr> <tr> <td><Input type="text" name="X1" size="5" value="1"></td> <td><Input type="text" name="A11" size="5"></td> </tr> </table> <INPUT type="button" value="計算" onClick="keisan()"> <INPUT type=reset value="リセット"> </Form> </body> </html> --------------------------------- のようになります。 計算ボタンをクリックすると,1×1=1 がA11に計算されます。 計算するオブジェクトのエリア指定がいるため,テーブル全体をFormでくくっています。 Y1やX1の初期値(value)を"1"にしていますが,この1を他の数に変えて計算ボタンをクリックすると,A11もそれにしたがって再計算されます。 これを,「九九」まで延長して行けばいいわけです。 考え方というかほとんど答えになってしまって,質問者様の勉強にならないかもしれませんが, 「二二」だと, --------------------------------- <html> <head> <meta http-equiv="Content-Language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <title>二×二</title> <Script type="text/javascript"> <!-- function keisan(){ document.kuku.A11.value = document.kuku.X1.value * document.kuku.Y1.value; document.kuku.A12.value = document.kuku.X1.value * document.kuku.Y2.value; document.kuku.A21.value = document.kuku.X2.value * document.kuku.Y1.value; document.kuku.A22.value = document.kuku.X2.value * document.kuku.Y2.value; } //--> </Script> </head> <body> <Form name="kuku" method="POST"> <table border="1" cellpadding="1" cellspacing="1"> <tr> <td>---</td> <td><Input type="text" name="Y1" size="5" value="1"></td> <td><Input type="text" name="Y2" size="5" value="2"></td> </tr> <tr> <td><Input type="text" name="X1" size="5" value="1"></td> <td><Input type="text" name="A11" size="5"></td> <td><Input type="text" name="A12" size="5"></td> </tr> <tr> <td><Input type="text" name="X2" size="5" value="2"></td> <td><Input type="text" name="A21" size="5"></td> <td><Input type="text" name="A22" size="5"></td> </tr> </table> <INPUT type="button" value="計算" onClick="keisan()"> <INPUT type=reset value="リセット"> </Form> </body> </html> --------------------------------- のようになります。 functionの部分は形式が一定の法則にしたがって,変化しています。 九九までできそうだったら,ここの部分を while() などでくくって,変数iをi+1のようにプラスしていってループさせるともっと簡素化されます。 ループは次の課題でしょうかね? 良いのだろうか? 説明が苦手なので,サンプルを表示する方が早くなり, やっぱりほとんど答えになってる…(呟き)。

marumaru-33
質問者

お礼

こんなにご丁寧に…どうもありがとうございます! そういえば、ループの説明をしていたのでループを使うんだと思います。 後で実際にやって見ます! ご協力ありがとうございます。

回答No.1

JavaScriptの概要の説明はあったと書いてありますので構文なんかはある程度わかっているものとして答えます。 とりあえず九九の答えを1の段から順番に出力するっていう部分のみを記載しますね。 for (i=0; i<9; i++) { alert(i+1 + "の段"); for (j=0; j<9; j++) { alert(i*j); } } 自分で動かして確認はしてませんが、こんな感じで九九の答えが延々とアラートで出力されると思います。 あとは<table>タグなんかを使ってやれば表っぽくなると思いますよ。

marumaru-33
質問者

お礼

どうもありがとうございます! 今日は他にやらねばならない課題が山ほどあるので、まずはそっちを片付けてから、プログラミングの課題に取り組もうと思います! わからないことがあれば、またココで質問させていただきます。 本当にご協力ありがとうございます。

関連するQ&A

  • 大学の授業のプログラミング、ついていけずに困っています。

    大学の授業で情報処理の科目があり、内容的には、JavaScriptを使ってのプログラミングの理論的なものと、それを実践的に生かせているかの確認の課題提出があります。 私の専攻は英米文なので情報処理は必修ではないのですが、教員免許状取得のためにとらなければならない科目のため、なんとしてでも落とせません…。 ですが、私は全くのパソコン音痴でネットでHPを見るくらいしかパソコンを使ったことが無いくらいです。 落とせないのに授業についていけず、深刻な悩みです。 授業では、ループ、Forループ、配列、Array、二次元の配列、データの入力、等々をやっています。これらはほんの一例で、まだまだたくさんあります。 そもそも「プログラミングって何?」「JavaScriptって何?」という状態です。 どうにか単位をとりたいので、頑張って勉強したいのですが、こんな初心者にも分かりやすい解説書や、説明のサイトがあれば紹介してください。 どうか助けてください、よろしくお願います。

  • 成績表で特定の科目の単位だけを合計するには?

    エクセルで大学の成績表を作ってみました。こんな感じです。 A          B 科目       単位 心理学      2 哲学       2 経済学      4 ここで質問なのですがこの中で必修科目の単位だけを合計しようとしているのですがやり方がわかりません。必修科目は哲学、経済学、法学、西洋史、マーケティング論・・・・などかなり沢山あります。SUMIF関数やSUMIFS関数を使ってみましたがうまくいきませんでした。 哲学、経済学、法学、西洋史、マーケティング論・・・・のいずれかに該当する科目の単位を合計するという関数(式?)が知りたいです。 また、Sheet2に必修科目はすべて入力してあるのでできればそれを参照するやり方を教えてください。どなたかお願いします。

  • 教育学部以外での教員免許取得についての質問

    私は法学部に通っている1年なのですが教員免許も取得したいと考えているのですが履修を組んでみると教員の科目は単位にふくまれないという考え方らしいので教員科目を多く取ると教養科目・専門科目の単位数が圧倒的に不足してしまい悩んでいます。 教員免許の科目を2年次・3年次に多くもっていき1年生は教養科目・選択科目・必修に専念すべきなのか・・・。 無理をしてでも教員系の単位を1年生で取ってしまうべきか・・・。ただ1年生で無理をして教員の単位を取ると後から辛くなってしまう・・。どうかみなさんのアドバイスお待ちしております。 ちなみに自分は通学で片道1時間30分かかります。来年からはアパートを借りて住むことになりそうです。

  • 法学部の大学での履修数

    地方の大学の法学部に通っています。自分は履修を組んでみると専門・教養・必修を合計すると46単位でした。ただ自分の友人は結構50単位を超える履修登録をしているのですが、私は教員も取るために教員の科目も履修しているのですが50単位を超えなくても大丈夫でしょうか? ちなみに1年生です。どうかみなさまのアドバイス待っています。

  • 食品成分表の欠点と利点

    私は大学で遺伝子工学を専攻しているものですが、 今回 突然「食品成分表の欠点と利点」を調べたレポートを作成せよという課題が出題されました。 専攻分野とあまりにかけ離れているので手元に資料もありませんし、 インターネットで自分なりに検索してみましたがそのようなことが記載されているHPは全く見つかりませんでした。 必修講義のレポートなので落とすわけにもいかず、本当に困っています。 食品成分表の欠点・利点について、その内容が書かれたHPをご存知の方がおられましたら、ぜひご教授ください。 お願いします。

  • これで教職免許は申請可能ですか?

    教職取得を考えて日大通教に3年次編入・在籍しています。 「単位照合表」を見ると,現在,  専門教育科目(必修科目) 8単位  専門教育科目(選択必修) 8単位  専門教育科目(選択科目) 40単位(=一括認定32単位+2単位)  教職専門教育科目     12単位 で合計68単位とれているようです。 単位集計欄を見ると, [科目分類] [1]|[2]|[3]|[4]|[5]|[6]|[7}| 単位数   20 |8 |2 |10 |4 |34 |12|計90単位 スク単位  0 | 0 |0 |0 |0|2 |6|計8単位 となっています。 教職免許は申請可能ですか? 単位照合表の裏面を見ると,「IV卒業所定単位」の箇所に「専門科目」として必要なのは,  40(必修・選択必修科目)+28(選択)+8卒論(=76単位) のようです。 それとも,差の8単位(=76-68)が必要でしょうか?? どうか地方の恵まれない安サラリーマンの相談にのってください。 # <(_ _)> <(_ _)> <(_ _)>

  • 政治学科へ行った場合、法律科目の取得には上限がありますか?

    同じ法学部でも、政治学専攻だとやはり必修の中心は政治学系の 科目だとおもいますし、法律系の科目は十数単位くらいしか 取得できないorする余裕がないということでしょうか? どなたか教えてください。

  • 実践キャリア実務士資格について

    現在大学2年次ですが、資格取得について聞きたいことがあります。 私の所属している学科では、「実践キャリア実務士」という全国大学実務教育協会認定資格が取得できます。1年次(2017年度)の時は、"必修4単位+2群から12単位以上"取ることが、資格の条件でした。 しかし2年次になってから、資格取得の条件が変更になりまして、"必修10単位+選択1科目6単位"となりました。そのほとんどが、学科の必修科目と選択必修科目となり、今履修している選択科目(1科目)が取得できれば、資格の要件は、(卒業要件の関係上)満たすことになりそうです。 この場合は、この資格を取得を申し込んだほうがいいのでしょうか(申し込む場合は27日まで)。 そもそも、この資格はどんなことに役に立つのでしょうか。 無知識ですいませんが、お願いします。

  • PHP初心者です。課題で九九表を作成中です。

    初めて質問いたします。 PHP初心者ですが、 よろしくお願いいたします。 今回、課題でPHPで"九九表"をマス目つきのテーブル (9×9)上に作成したいと考えています。 最近ループを習ったので、九九を表示させるソースは なんとかできそうです。(ネストとか使って・・。) が、テーブル表となると<html>を使ってまでは思い ついたのですが・・・実際にループと組みあわせると 自分で色々とためしたのですが、うまくいきません。 自分でも理解でそうなコードとアドバイスかがあったら お教えください、お願いいたします。

    • ベストアンサー
    • PHP
  • 選択科目は必修とはちがうよね?卒業できるか心配です。

    ちょっと恥ずかしい質問なんですが、 「選択科目」の実習であれば、単位って取ってなくても卒業できますよね?? 3年生のときに専門科目分野の中で、「○○実習I」という科目があったんですが、『専門科目の「選択」の実習』なので単位は取りませんでした。ちなみにその実習は4年次でII、IIIと続きますがそれももちろん選択実習で学科では取らない学生もいます。3年次のIはわからないのですが。I 124単位が卒業に必要という大学が多いと思いますが、 私の大学も、 基礎教育科目40単位+専門科目84単位で、 合計124単位を満たせば卒業できます。 就職も決まり来年大学を卒業する予定です。 3年までですでに合計128単位ばっちりとっていて、 あと単位を取る必要があるのは必修のゼミと卒業論文だけです。 普通に考えて、卒業に必要なのは、 必修科目の全クリアだけであって、残りは選択科目の中からプラスアルファで選んで単位を取って、合計が124単位で卒業、というのが一般的ですよね? 学科別にかなり単位の仕組みが違うので、大学の教務課はこういう質問には答えてくれない(成績表で各自把握せよ)し、その実習の教員もほとんど大学にいないので、 聞く相手がみつからず困っています。。

専門家に質問してみよう