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

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

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

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

Q&A

解決済

1回答

690閲覧

メソッドの引数を使い、数値を計算してメインメソッドに返したい。

Aya.koji

総合スコア15

Java

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

0グッド

0クリップ

投稿2019/03/10 06:43

編集2019/03/10 07:53

メインで数値を入力し、引数を使ってサブメソッドで数値の計算を行い、結果をメインで出力したいです。

わからない事:メイン&サブのコードの書き方はこれで合っているか(やろうとしてる事が出来るコードか)

困っている事:total += の先に何を入力すれば良いのか不明。(str or br.readLine()を入れてみましたが、ダメでした。)

素人なので、質問の仕方に不備があるかも知れませんが、よろしくお願いします。

コード

public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {

System.out.println("数値を3つ、入力し、合計して平均値を出そう!"); for(double i = 0; i < 2; i++) { String str = br.readLine(); Double.parseDouble(str); } add(br.readLine()); }catch(IOException e){ System.out.println("Exception :" + e); } }

public static void add(String str) {
double total;

for(double i = 0; i < 3; i++) { total += ;

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

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

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

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

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

otn

2019/03/10 07:11

method の th は、濁らないのが普通です。
Aya.koji

2019/03/10 07:56

ご指摘ありがとうございます。 修正しました!
guest

回答1

0

ベストアンサー

そのままNetBeansにほりこんでみました。
イメージ説明
修正後(importの抜け)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
と、波括弧'}'の閉め忘れ
イメージ説明

「追記」
ループカウンタ(i)がdoubleなのはなぜでしょう?・・・int? また、最初のループって2回しか回らないのでは?
「またまた追記w」

java

1/* 2 * To change this license header, choose License Headers in Project Properties. 3 * To change this template file, choose Tools | Templates 4 * and open the template in the editor. 5 */ 6package javaapplication1; 7// 8import java.io.BufferedReader; 9import java.io.InputStreamReader; 10import java.io.IOException; 11/** 12 * 13 */ 14public class JavaApplication1 { 15 16 /** 17 * @param args the command line arguments 18 */ 19 public static void main(String[] args) { 20 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 21 try { 22 23 System.out.println("数値を3つ、入力し、合計して平均値を出そう!"); 24// for (int i = 0; i < 3; i++) { 25// String str = br.readLine(); 26// Double.parseDouble(str); 27// } 28 System.out.println( add(br)); 29 30 } catch (IOException e) { 31 System.out.println("Exception :" + e); 32 } 33 } 34 35 public static double add(BufferedReader br) throws IOException { 36 double total= 0; 37 38 for (int i = 0; i < 3; i++) { 39 String str = br.readLine(); 40 total += Double.parseDouble(str); 41 } 42 return total; 43 } 44}

結果

投稿2019/03/10 07:51

編集2019/03/10 08:19
cateye

総合スコア6851

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

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

Aya.koji

2019/03/10 08:15

ループカウンタ(i)がdoubleなのはなぜでしょう? A、小数点でも計算可能にしたかったからです。 また、最初のループって2回しか回らないのでは? A、3回入力出来たので、これで良いのかと思いました。
cateye

2019/03/10 08:51 編集

doubleを++するとどうなるんですか +1.0? +0.1? +0.01?・・・調べたことありますか? ・・・については、java version "1.8.0_202"で1.0加算されるのは確認しましたv^^ 浮動小数点の算術演算は(整数になることは少ないので)必ず裏付けを取りましょうd^^
cateye

2019/03/10 08:23

一応、加算結果は返していますが?・・・平均は考えてください。
Aya.koji

2019/03/10 08:57

すみません。そこは調べてませんでした。 繰り返す数値は整数なので意味ないですよね。 ご指摘ありがとうございます。 ちなみに、修正前のi=0 i<2 i++で、何故3回入力出来た理由は分かりますか? 回答ありがとうございます。
Aya.koji

2019/03/10 09:00

すみません、今気がつきましました。 わざわざ、裏付けの説明して下さりありがとうございます。 本当に助かりました。
cateye

2019/03/10 09:09

例外については検証していません。たぶんabcとか入れるとアウトだと思うけどw
Aya.koji

2019/03/10 09:20

修正後について、質問があります。 サブメゾットが public static double add(BufferedReader br) になっているのは何故ですか? 私はpublic static viodの後に 変数(データ型 変数)という書き方しか知らないので、気になりました。
cateye

2019/03/10 09:31 編集

doubleを返す関数だからです。(return total;で結果を返しています) intを返すならpublic static int
Aya.koji

2019/03/10 10:22

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問