質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

234閲覧

数字の代入ができるようにしたい

toca

総合スコア13

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2018/09/12 01:06

編集2018/09/12 01:34

前提・実現したいこと

最近javaを学習しまず実践してみようということで課題を出されたのですがうまくいきません。以下のように実現したいのですが点数部分を出力するにはコントラクタで定義なしでやることとあるのでそこでつまずきました。そこでどうすればいいのかを有識者の方々のお力を借りたく思い、投稿させていただきます。
■Aさんの成績

国語は100
数学は90
理科は80
社会は45
英語は
81
一番良かった教科…国語:100
一番悪かった教科…社会:45
平均点… 80

■Bさんの成績

国語は60
数学は70
理科は40
社会は60
英語は
90
一番良かった教科…a:
一番悪かった教科…
平均点…

■Cさんの成績

国語は30
数学は80
理科は70
社会は90
英語は
80
一番良かった教科…a:
一番悪かった教科…
平均点…

■Dさんの成績

国語は80
数学は70
理科は90
社会は70
英語は
50
一番良かった教科…理科:90
一番悪かった教科…
平均点…

■Eさんの成績

国語は80
数学は60
理科は80
社会は100
英語は
50
一番良かった教科…社会:100
一番悪かった教科…英語:50
平均点…

発生している問題・エラーメッセージ

うまく数字の代入部分が表示されないこと 以下のプログラムだと0しか代入されてない

該当のソースコード

/

  • 各自の成績に関する情報を保持し、各教科の得点や平均点などを出力する。
  • 動かされるほう

/
public class Myscore{
/
*
* 教科名
*/
static final String[] SUB_NAME = {"国語","数学","理科","社会","英語"};

/** * 学生の名前 */ private String name; /** *各得点の保持 */ private int[] keep = new int[5]; /** * 平均点 */ private double ave; /** * 最高得点 */ private int highScore; /** * 最低得点 */ private int lowScore; /** * 最高得点の教科 */ private String highSub; /** * 最低得点の教科 */ private String lowSub; /** * 引数なしのコンストラクタ */ public Myscore(){ super(); } /** * 名前をフィールドに代入する。 * @param name 学生の名前 */ public Myscore(String name){ this.name = name; } void printInfo(){ System.out.println("■" + this.name + "さんの成績\n\n " ); System.out.println("国語は" + keep [0] ); System.out.println("数学は" + keep [1]); System.out.println("理科は" + keep [2]); System.out.println("社会は" + keep [3]); System.out.println("英語は \n" + keep [4]); System.out.println("一番良かった教科…" + "a:" ); System.out.println("一番悪かった教科…"); System.out.println("平均点… \n\n\n"); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int[] getKeep() { return keep; } public void setKeep(int[] keep ) { this.keep = keep; } public double getAve() { return ave; } public void setAve(double ave) { this.ave = ave; } public int getHighScore() { return highScore; } public void setHighScore(int highScore) { this.highScore = highScore; } public int getLowScore() { return lowScore; } public void setLowScore(int lowScore) { this.lowScore = lowScore; } public String getHighSub() { return highSub; } public void setHighSub(String highSub) { this.highSub = highSub; } public String getLowSub() { return lowSub; } public void setLowSub(String lowSub) { this.lowSub = lowSub; } public static String[] getSubName() { return SUB_NAME; }

}

public class ReportCardTest {
public static int[] keep;

/**

  • 5人の学生のMyScoreオブジェクトを生成し、テストの得点を各学生のオブジェクトに与える。
  • ただし、5人の学生のオブジェクトは配列で管理すること。

*/
public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
Myscore a = new Myscore ("A");
a.printInfo();
Myscore b = new Myscore ("B");
b.printInfo();
Myscore c = new Myscore ("C");
c.printInfo();
Myscore d = new Myscore ("D");
d.printInfo();
Myscore e = new Myscore ("E");
e.printInfo();

keep = new int[] {100,80,20,55,76}; a.printInfo(); }

}

試したこと

ない知恵を振り絞って本を見ながら何度か試行錯誤しましたが配列が代入されない

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/09/12 01:09

質問テンプレート部分の文言が多く残っています。質問内容や意図を読み取る上ではノイズにしかなりませんので、自身の質問に関係のある文章(およびソースコード)のみ残すか、きちんと残りのテンプレート部分を埋めてください。
m.ts10806

2018/09/12 01:09

プログラムコード(およびエラーメッセージ)は質問内容としては最も重要な部分であるため、見やすくしていただけると助かります。<code>ボタン押下→「コード」部分にコードを貼り付け→「ここに言語を入力」に対象言語名記入(エラーメッセージの場合は不要)の手順で「コードハイライト化」してください。(質問編集画面ではリアルタイムでプレビューが表示されるので見ながら調整してください)
m.ts10806

2018/09/12 01:09

「うまく動作しない」「うまくいかない」では何が起きているか伝わりません。「○○のようになるはずなのに××となってしまう」のような形で「ゴール」と「現象(エラーメッセージなども含む)」を明確にしてください。https://teratail.com/help/question-tips#questionTips3-4-1
guest

回答1

0

ベストアンサー

投稿2018/09/12 02:14

opyon

総合スコア1009

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toca

2018/09/12 03:53

動作を確認し正常に動かすことができました。 ありがとうございます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問