2016-09-23 10 views
0

だから私は、私が番号を入力するようユーザーに尋ねると、私はその数の絶対値を返すプログラムを書いています。私のプログラムは+または - を許可する必要があります。 (またはなし)また、小数点の有無にかかわらず数字を指定します。絶対値を計算するために文字列に与えられた数字を使うには?

私は初心者だので、私はすべての先進的なメソッドを使用する必要はありません。

私は私が右のトラックにいる場合はわからない何かを書きました。 私のコードで絶対値をどのように計算したいか分かります。私がこだわっている

:どのように私は、文字列で指定した番号を抽出し、ABS値を計算し、その番号を使用していますか?

============================================= ============================

import java.util.Scanner; 

public class AValue { 
    public static void main(String[] args) { 
    Scanner input = new Scanner(System.in); 
    System.out.println("Enter a number:"); 
    String num = input.nextLine(); 

    if (num.matches("[+-][\\d].[\\d]")) 
    //calculation 
    System.out.println("The absolute value "); 
    else if (num.matches("[+-][\\d]")) 
    //calculation 
    System.out.println("The absolute value of " + num + " is "); 
    else if (num.matches("[\\d]")) 
    //calculation 
    System.out.println("The absolute value of " + num + " is "); 
    else if (num.matches("[\\d].[\\d]")) 
    //calculation 
    System.out.println("The absolute value of " + num + " is "); 
    else 
    System.out.println("Invalid number."); 

    //x = x * x; 
    //x = sqrt(x); 

    } 
} 
+2

使用 'Double.parse'あなたは文字列を使用したい場合は、' Math.abs' – talex

+0

のみだけでチェックその最初のsimbolが ' 'で-''と' String.removeして削除() ' – talex

+0

あなたは何を意味しています。例を与えてください – xxlali

答えて

1

使用このコード

Scanner input = new Scanner(System.in); 
double number = input.nextDouble(); 
System.out.println(Math.abs(number)); 
0

あなただけDoubleString入力を変換し、何を抽出する必要はありません組み込みの絶対値メソッドであるMath.Absをそれに適用します。 (https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html)このうち

チェック:

Scanner input = new Scanner(System.in); 
double num = Double.parseDouble(in.next()); 
System.out.println(Math.abs(num)); 
関連する問題