前提・実現したいこと
AtCoder86 B問題
AtCoderのBiginnerContest86のB問題を解いています。
入力された数字から新たに数字を作成し、それが平方数かどうか判定するプログラムです。
発生している問題・エラーメッセージ
以下の記述を参考に条件分岐をするコードを書いたのですが、AtCoderの問題ページの
入出力例2がうまくいかないという問題にぶち当たっています。
条件分岐の参考にした記述
入力(100,100)によって形成される「100100」は平方数でないにも関わらず、
「Yes」と出力されてしまいます。
問題点をご指摘いただけますと幸いです。
100 100 100100 316.3858403911275 Yes
該当のソースコード
Java
1import java.util.Scanner; 2 3public class B86 { 4 5 public static void main(String[] args) { 6 Scanner scan = new Scanner(System.in); 7 String a = scan.next(); 8 String b = scan.next(); 9 String two = a + b; 10 int twonum = Integer.parseInt(two); 11 System.out.println(twonum); 12 double result = Math.sqrt(twonum); 13 System.out.println(result); 14 if(result*result == twonum ){ 15 System.out.println("Yes"); 16 }else{ 17 System.out.println("No"); 18 } 19 20 } 21 22} 23
補足情報(FW/ツールのバージョンなど)
Eclipse Java EE IDE for Web Developers.
Version: Neon.3 Release (4.6.3)
回答1件
あなたの回答
tips
プレビュー