大学で、タイトルに書いてある通りの課題が出されました。
以前も質問させていただきましたが、自分の専攻としている分野ではないのですが(つまり、学部の必修科目ではないです)、教員免許取得希望者は落とせない単位なんです…。
もちろん、こんな難解な科目(しかも必須じゃない)を取っている生徒は教員志望者くらいなもので、かなり難しいと評判の科目です。
加えて、私はパソコン初心者です。
なんとか単位を取らねばならないので頑張りたいです。
授業ではJavaScriptの概要を説明されたのみで、実践は教えてもらっていないのにいきなりこんな課題が…。
tableを使っての九九の表の作り方を教えてください。
全て教えてください、という訳ではありません。課題なので自分の力でやらなければならないのは分かります。
タグや記号は自分で調べるので、「九九の表を作るためにはどのような命令をすればいいのか」手助けが欲しいです。
お願いします。どうか助けてください。来週中に提出なんです。
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
JavaScriptの概要の説明はあったと書いてありますので構文なんかはある程度わかっているものとして答えます。
とりあえず九九の答えを1の段から順番に出力するっていう部分のみを記載しますね。
for (i=0; i<9; i++) {
alert(i+1 + "の段");
for (j=0; j<9; j++) {
alert(i*j);
}
}
自分で動かして確認はしてませんが、こんな感じで九九の答えが延々とアラートで出力されると思います。
あとは<table>タグなんかを使ってやれば表っぽくなると思いますよ。
どうもありがとうございます!
今日は他にやらねばならない課題が山ほどあるので、まずはそっちを片付けてから、プログラミングの課題に取り組もうと思います!
わからないことがあれば、またココで質問させていただきます。
本当にご協力ありがとうございます。
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のようにプラスしていってループさせるともっと簡素化されます。
ループは次の課題でしょうかね?
良いのだろうか?
説明が苦手なので,サンプルを表示する方が早くなり,
やっぱりほとんど答えになってる…(呟き)。
こんなにご丁寧に…どうもありがとうございます!
そういえば、ループの説明をしていたのでループを使うんだと思います。
後で実際にやって見ます!
ご協力ありがとうございます。
No.3
- 回答日時:
document.writeを使ってjavascriptでtableを書き出すということがわからないのでしょうか?
HTMLでTABLEの書き方が判っているなら
<TD>に九九の結果を埋め込んで行けばいいですね。
それとも、
すでにあるテーブルにIDなどで、<TD>にあとから値を埋め込むということがわからないのでしょうか?
テーブルについては授業内で全く説明が無く、課題を出された紙に「テーブルを使って表にすること」となっていたんです。
だから本当に自力でやるしかなくて…。ひどい先生です…
質問しに行ったら、「自分で考えてやりなさい」と冷たくあしらわれました…。
こっちは教員免許がかかっているというのに…
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>
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の表)
No.6
- 回答日時:
#2です。
お詫びです。#4さんの方法が正解ですね。
実習でこういう例題があるのですね。Googleで「JavaScript 九九 Table」と検索したら,
http://www.google.com/search?hl=ja&q=JavaScript+ …
ゾロゾロ出てきます。演習と解法みたいなのが。
(ついでにココも出てきてしまいます。キャシュで見たら,質問者さまがここで質問したのバレバレ。)
そうだったのですか,document.writeで自動的に表を完成させなさいという意味だったのですね。
Tableを使った計算機を作るのかと勘違いをしていました。
えらく遠回りをさせてしまうところでした。申し訳ございません。
内容が理解できるかどうかは別にして,後も答えは検索すると出てくるかもしれません。
でもテストとかになると検索は使えませんがら自分で考えなければならないと思います。
でも,検索で出た答えを参考に理解していくのも1つの方法かもしれませんね。
参考URL:http://www.google.com/search?hl=ja&q=JavaScript+ …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 大学受験 自己推薦書の添削や意見・アドバイスお願いします 2 2022/08/27 19:34
- 大学・短大 推薦入試に関して 1 2022/09/16 20:58
- 大学・短大 成績のつけ間違い 4 2023/04/24 19:44
- 子供・未成年 大学の課題が複数あってつらいです 3 2022/11/29 19:03
- 大学・短大 大学の履修について誰にも相談できなくて辛いです ちなみに同志社の文学部二回生です 私は1年の春学期に 1 2022/09/22 18:08
- 高校 勉強ができない。 4 2022/07/03 08:13
- 大学・短大 続報 以前大学編入後に生じた問題から、こちらに質問 させていただいたものです。 詳しくご存知ない方に 1 2023/06/24 15:19
- 書類選考・エントリーシート 【急ぎです】指定校推薦の志望理由書の添削お願いしたいです! 商学部で1600字中1595字です 志望 1 2023/08/24 02:54
- 物理学 物理学 工学 自然科学 4 2023/04/27 10:26
- 物理学 物理工学系学科-調査課題 2 2022/04/26 18:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Javascriptの電卓で最初の何も...
-
テーブル内のチェックボックス...
-
Ifが正常に動作しない。
-
VBSでの自動ログイン
-
JavaScriptの「.querySelectorA...
-
追加したテキストボックスとテ...
-
複数のselect値で1つも選択され...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
hiddenのvalueの値を変えたい
-
onchangeイベントを強制的に発...
-
チェックボックスの設定
-
javascriptでASPにデータを渡す
-
テキストエリアをenterキーでフ...
-
クリックの度に加算していくには?
-
プルダウンで選択すると、DBの...
-
【jQuery】input nameの文字列...
-
フォームで入力した値を別のフ...
-
<td>の中のonClick="location" で
-
<JavaScript>tableタグを入力不...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScriptの「.querySelectorA...
-
複数のselect値で1つも選択され...
-
チェックボックス付きのテーブ...
-
ラジオボタンが選択されたらテ...
-
入力チェックの外部スクリプト...
-
Javascriptの電卓で最初の何も...
-
文字数を数える際に空白、改行...
-
画面の2重起動をチェックする...
-
画面表示とともにtableの指定の...
-
jQueryで合計を出したい
-
localStorageでのcheckbox制御
-
JavaScriptによる自動計算フォーム
-
同一nameの input type="text"...
-
テーブル内のチェックボックス...
-
formで項目を連結したい
-
クリックしたラジオボタンの行...
-
Javascriptで自動計算の合計の...
-
ラジオボタンを一括で操作する...
-
送信ボタン連打を抑止したいです
-
ボタン押下すると一行テキスト...
おすすめ情報