プログラムメニュー画面
- プログラムのメイン画面で、成績の入力や出力、並び替えなどの機能がある。
- 成績の入力画面では、1人ずつ成績を入力することができる。
- 成績の出力画面では、10人の成績の合計と平均が表示される。
- ベストアンサー
プログラム
メイン画面 ***************** * メニュー画面 * * 成績の入力...1 * * 成績の出力...2 * * 成績順並び替え.3 * * 終了......4 * * 上記以外は メニュー画面へ * ***************** 成績の入力 画面 &&&&&&&&&&&&&&&&& & 1人目 A さんの入力 & & ?? 点です & & これで良いですか・・・・・5& &&&&&&&&&&&&&&&&& 成績の出力 画面 %%%%%%%%%%%%%%%%% % 10人の成績と合計・平均 % % 1人目 A さん ??点 % % 2人目 B さん ??点 % % ・ % % 10人の合計 ???点 % % 10人の平均 ??.?点 % %%%%%%%%%%%%%%%%% 成績の並び替え ################# # 成績順 # # 1番目 ??点 # # 2番目 ??点 # # . # # . # # 10人の合計 ???点 # # 10人の平均 ??.?点 # ################# 終了画面 !!!!!!!!!!!!!!!!! !これで成績の平均を求めるのを ! ! 終わります。 ! !!!!!!!!!!!!!!!!! 上記の人たちの成績を読み込んで、合計、平均、順位を求める。GOSUBを使い、画面通りのプログラムが進むもの。10人のデーターキー 名前A,B,C.D,E,F,G,H,I,J。上手く分かりません。どなたかプログラムの作り方を教えていただけませんか?BASICのプログラムモードで。点数は適当で良いです
- Visual Basic
- 回答数4
- ありがとう数2
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは、honiyonです。 どの辺りがわからないのでしょうか? プログラムが完成するまでには、いくつかのステップがあります。 少なくとも、どのステップが躓いているかがわからないと、「このプログラムを作ってください」という質問と変わりません。 上記のプログラムでは、主に ・数字の入力を受け付けて、記憶する。 ・入力された数字の平均値を求める ・入力を降順、又は昇順に並べ替える。 という、3つの要素がありますね。 そして、それぞれの要素に対して、 ・どういう手順で処理させれば実現出来るか考える。 ・その手順は、BASIC言語でどう記述するか考える。 という手順があります。 さて、どの辺まで自力で出来ましたか? そして何が分からないでしょうか?
その他の回答 (3)
- honiyon
- ベストアンサー率37% (331/872)
こんにちは、honiyonです。 キーボードからの入力を受け付けるには、INPUTという命令を使います。 INPUT "数字を入力してください :", A 上記例では、変数Aに入力された数字が格納されます。 PRINT A とすると、Aの内容が表示されます。INPUT命令後に実行すれば、Aに正しく値が入力されてたことを確認できます。 これだけで入力と記憶は実現できますね。 しかし、あと「配列」というものを知っておくと後の処理が楽になるので調べてみてください。 ソートのやり方にはいくつかの方法があります。 速度は遅いですが、バブルソートと呼ばれる方法が一番理解しやすいです。 配列と併せて調べてみてください。 www.goo.ne.jpでもいいですが、www.google.co.jp, www.yahoo.co.jp などで、上記の言葉を調べてみれば必ず見つかります。 条件にBASICという言葉も含める事をお忘れなく(^^) ↓検索例 http://www.google.co.jp/search?sourceid=navclient&hl=ja&q=%94z%97%F1+BASIC ↓↑の検索で見つかった文献(一例) http://www.g.dendai.ac.jp/lecture/vbasic/vb08.html ・・・現在、純粋なBASICの情報を見つけるのは 難しいかもですね。
- neKo_deux
- ベストアンサー率44% (5541/12319)
No.2です。 > 数字の入力を受けて記憶するところです。 ですと、以前の質問 No.860484 質問:サブルーチン http://oshiete1.goo.ne.jp/kotaeru.php3?q=860484 にある、 INPUT B のような処理です。こちらはBという変数に値を格納しています。 -- …という事で、以前の質問では出来ていたものが、今回の質問では出来ないという事ですと、教える側もどのように教えればよいのか?どこまで理解しているのか?が分からなくなり、非常に回答しにくくなります。
- neKo_deux
- ベストアンサー率44% (5541/12319)
10 初期化 1000 ~メイン画面の表示処理 1100 ~文字入力の受け付け 1110 もし 入力=1 ならば GOSUB 2000:'入力 1120 もし 入力=2 ならば GOSUB 3000:'出力 1130 もし 入力=3 ならば GOSUB 4000:'並べ替え 1140 もし 入力=4 ならば GOTO 5000:'終了 1150 GOTO 1000 2000 ~成績の入力 画面表示 2100 ~成績の入力処理 2990 RETURN 3000 ~成績の出力 画面表示 3990 RETURN 4000 ~成績の並び替え表示 4990 RETURN 5000 ~終了画面表示 5990 END みたいな構造だと思います。 -- > どなたかプログラムの作り方を教えていただけませんか? どこが分からないのか? 何がどう分からないのか? 何が分かれば、分かりそうなのか? を、具体的に、的確に説明出来るってのもプログラムを行う上での重要な技術です。 いつ・何が・誰が…の5W1Hを頭において解説を補足しては? 質問内容だと、 メイン画面1行目の ***************** の表示が出来たのかすら分かりません。 まったく分からないから、全部作ってくれと言うことですと、回答は遠慮させていただきたいです。
関連するQ&A
- GOSUB を使い、合計、平均、順位を求める
下記の人たちの成績を読み込んで、合計、平均、順位を求める。この場合、GOSUBを使い、プログラムが進むもの。 10人のデーターキー入力 名前 あ、い、う、え、お、か、き、く、け、こ 分からないので教えてください
- ベストアンサー
- その他(プログラミング・開発)
- サブルーチン
下は身長の平均を求めるプログラムですけど、身長の高い順、低い順に並び替えしたいんですがどうしたらいいかわからないので、よかったら誰か教えていただけませんか REM プログラム 10 DIM A(12) 20 PRINT "メニュー” 30 PRINT "身長入力...1" 40 PRINT "身長出力...2" 50 PRINT "終了" 60 PRINT "どれにしますか" 70 INPUT B 80 IF B=1 THEN GOSUB300 ELSE 110 90 GOTO 30 100 IF B=2 THEN GOSUB500 ELSE 130 110 GOTO 30 120 IF B=3 THEN GOSUB700 ELSE 30 130 END 140 A(11)=B 300 FOR I=1 TO 10 310 PRINT i;: PRINT "人目" 315 INPUT C 320 A(I)=C 330 PRINT "これでいいですか?" 340 PRINT "1.YES 2.NO" 345 INPUT D 350 IF D=1 THEN 380 ELSE 370 360 IF D=2 THEN 315 ELSE 340 370 A(11)=A(11)+A(I) 380 NEXT I 390 RETURN 400 IF C=1 THEN 520 500 PRINT "先に入力してください" 510 GOTO 30 515 FOR I=1 TO 12 520 PRINT A(I) 530 NEXT I 540 RETURN 550 PRINT "これで身長の平均を求めるのを終わります"700 RETURN 710
- ベストアンサー
- Visual Basic
- 簡単なプログラムなんですが…
C言語の簡単なプログラムなんですが、私のような初心者には良く分かりません… 出来るだけ詳しく教えていただけるとうれしいです。 下の2つのプログラムの作り方が理解できません。 (1)データ数nとn個のデータを入力して、その平均を求めるプログラム。 (2)(1)のプログラムに合計と標準偏差を計算して出力する機能を追加したプログラム。 C言語に詳しい方お願いします。
- 締切済み
- C・C++・C#
- 両替プログラムなど
学校の課題で出たプログラムなのですが、いまいちわかりません。 (1)1000円を500円、100円、50円、10円を使って両替する全てのパターンを出力するプログラム。 (2)整数を入力し、上位の桁から順に各桁の英語読みを出力するプログラム。配列使用。 (3)0~100までの任意の値を複数入力して、入力された値の個数、平均値、最大値、最小値を出力するプログラム。 (2)については、315と入力するとthree one fiveと出力されるプログラムです。 (3)については、複数入力と入力された値の個数の部分がわかりません。 コードを全て記述して教えてくれればうれしいですが、考え方、ヒントだけでも結構です。 非常に困っています。助けてください。
- ベストアンサー
- C・C++・C#
- 「すべてのプログラム」の整頓
Windows XP です。 [スタート]メニューの、「すべてのプログラム」は、プログラムをインストールする度に、じゃんじゃん増えていきますね。 1本のソフトをインストールするだけで数個が増えることもあります。 実に60くらいあるとかなり使いにくく、目的のものも探しにくくなります。 そこで、これを整頓したいと考えます。 1.グルーピング 類似のものは、フォルダを作ってグルーピングできると良いですね。 エクスプローラで、「Documents and Settings」を開いて、「スタート メニュー」の「プログラム」でやっているのですが、考えてみると、ここを直接触るのは危険だし、素人的じゃないなー、と思います。 Windowsの機能として、整理整頓の方法って無いでしょうか? 2.並び替え 表示される順序も同じで、インストール順になっていると思われます。 ABC順とか、よく使う順とか、機能順に並べた方がわかりやすいですね。 それってできますか? 以上2点が便利にできれば良いな~、と思っています。 方法をご存知の方がいましたら、教えていただけるとうれしいです (。^_^。)
- 締切済み
- Windows XP
- ソートアルゴリズム(c言語)
この問題の番号の並び替えがどうしても分かりません。とき方を教えてください。 問題:nこの学生番号と音楽の点数からなる成績データを入力し、成績の順にデータを並び替えるプログラムを作りなさい。 入力 出力 10 ソート前データ 1 56 番号 音楽 2 47 1 56 3 85 2 47 4 57 3 85 5 96 4 57 6 75 5 96 7 81 6 75 8 31 7 81 9 50 8 31 10 76 9 50 10 76 ソート後データ 番号 音楽 5 96 3 85 7 81 10 76 6 75 ・ ・ ・ ・ (省略) 大変だとは思いますが、お願いします。
- ベストアンサー
- C・C++・C#
- fortran95でのプログラムの課題なんですが教えてください
fortran95でのプログラムの課題なんですが教えてください 生徒数20人分の学籍番号と1教科の採点結果を提示する。 これらのデータから、最高点、最低点、平均点、標準偏差を求める。さらに、各生徒の成績の偏差値を計算し、成績順に並べ替える作業を複数のサブルーチンを用いてプログラムせよ。 表示項目は、 ・最高点、最低点、平均点、標準偏差 ・順位、学籍番号、素点、偏差値、評価(成績順リスト) とし、結果を書式設定を用いて表示させたものを、プログラムの後部にコメント文として添付すること。実数のデータは小数点第2位までの表示とする。提出ファイル名は(reportfinal.f95)とすること。 なお、生徒の成績についてはファイルから読み込むこととし、データは7月13日に提示するものを使用すること。 評価は、90点以上をA、80~89点をB、70~79点をC、60~69点をD、60点未満をFと表示すること。 ※注意 ・レポートのファイル名はreportfinal.f95とする ・冒頭に自身のIDと氏名を付記すること。 ・表示された結果を、作成したプログラムの後部にコメント文として貼り付けて提出。 ・成績順に並べ替えを行って、成績の良い順に表示させる。 ・表示には書式設定を行うこと。 ・配列を用いること。 ・サブルーチンを複数使用すること。 ・数値の取り扱いについては、解説、参考資料を参照のこと このプログラムの作り方が最初以外全然わかりません 最初は INTEGER,DIMENSION(20):: TEN REAL,DIMENSION(20):: HEN CHARACTER(LEN=9),DIMENSION(20):: GAKUNUM OPEN(4,FILE='RepCard9.dat') DO I=1,20 READ(4,100)GAKUNUM(I),TEN(I) END DO CLOSE(4) 100 FORMAT(A9,I6) とやれと言うことだけ言われました 数値は[RepCard9.dat」というファイルを与えられていてその中に入っています 完全に行き詰っています。お願いします
- 締切済み
- その他(プログラミング・開発)
- モジュール分割
以下のようなJAVAプログラムを作成しなさい。 ただし単一のクラスのmainメソッドのみから構成されるプログラムにすること 1個以上の整数を入力して、それらの合計、平均、最大値、最小値を求めて出力する。 されに入力された整数を、入力された順序で表示する。入力された順序と逆に表示する。昇順にソートして表示する。降順にソートして表示する。これらの処理は、整数の入力後に、繰り返し入力できる。 動作例 入力する整数の個数(1個以上)を指定してください 4 整数を入力してください 1個目:3 2個目:6 3個目:2 4個目:7 処理を選択してください 1.合計 2.平均 3.最大 4.最小 5.順表示 6.逆順表示 7.昇順ソート 8.降順ソート 0.終了 2 <平均> 4.5 処理を選択してください 1.合計 2.平均 3.最大 4.最小 5.順表示 6.逆順表示 7.昇順ソート 8.降順ソート 0.終了 0 というものなのですが自分でやってみたところ一つ一つ動作することはできるのですが、 繰り返しの処理になると何故か終了が機能しなくて困っています。 もうあまり時間もなくて出来れば解答をお願いしたいのですけど、 どなたかわかる方がおりましたらお願いいたします。
- 締切済み
- Java
- どうしても作れないプログラムがあります。
仕様としては 学生の名前と国語、英語の成績を5人分キーボードから入力するプログラムで国語、英語、合計点それぞれの観点で、最高点の学生の名前と成績(国語、英語、合計点)を表示させたいです。 該当者が複数いた場合は、任意の1人でかまいません。 なお、学生1人分のデータは構造体として表現し、名前は63byte(¥0 含まず)以下で表現できるもので、各教科の成績は0~100 点の整数で表現できるものでお願いします。 ※使用言語はC言語です。 よろしくお願いします。
- 締切済み
- SE・インフラ・Webエンジニア
- どこが間違っているのか教えてください。。
C言語の勉強をしています。 プログラムを作成してみましたが、うまくいきません。 どこが間違っているのか、なぜそうなるのか、教えていただけると助かります。 よろしくお願いします。 あるクラスの試験の点数を整数で繰り返し入力し、点数の合計と平均点を出力するプログラムを作成しなさい。 点数は、0点以上100点以下とし、この範囲外の点(0点未満または100点より大きい点)が入力されたときは、入力を終了し、点数の合計と平均点を出力する(最後に入力された範囲外の点は集計の対象としない)。 また、平均は小数点以下2桁まで出力する。 繰り返しの命令は、何を使ってもよい。 ▼実行例 点数:10 点数:100 点数:20 点数:35 点数:120 合計:165点 平均: 41.25点 ******************************************* 考えたプログラム #include<stdio.h> int main(void) { int ten,hito,goukei; double heikin; goukei=0; hito=0; while(1){ printf("¥n点数:"); scanf ("%d", &ten); if(ten<0||100<ten) break; goukei=goukei+ten; hito=hito+1; break; } printf("¥n合計:%d点",goukei); heikin=(double)goukei/(double)hito; printf("¥n平均:%.2lf点",heikin); }
- 締切済み
- C・C++・C#
補足
数字の入力を受けて記憶するところです。並び替えの仕方も分かりません。すいません