2023.04.23
Javaプログラミング
整数の桁数を求める(while文を使用)
100000 → 6桁 -123 → 3桁 0 → 0桁(桁なし)
Javaソースコード
Digit_While_1.java
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046
public class Digit_While_1 { // 整数の桁数を求めるメソッド private static int digit( int a ) { // 桁数を格納する変数 int digit = 0; // 桁数を求める // aを10で割っていき、a=0になるまで処理を繰り返す while ( 0 != a ) { // aを10で割る a = a / 10; // 桁数を増やす ++ digit; } // 桁数を戻す return digit; } // メイン public static void main( String[] args ) { // 桁数を求める値を格納する変数 int a; // 求めた桁数を格納する変数 int d; // 531の桁数を求める a = 531; d = digit( a ); System.out.println( a + "の桁数は、" + d ); // -23473の桁数を求める a = -23473; d = digit( a ); System.out.println( a + "の桁数は、" + d ); // 0の桁数を求める a = 0; d = digit( a ); System.out.println( a + "の桁数は、" + d ); } }
実行結果
コンパイル ソースコードが「ANSI」の場合
C:\talavax\javasample>javac -encoding sjis Digit_While_1.java
コンパイル ソースコードが「UTF-8」の場合
C:\talavax\javasample>javac Digit_While_1.java
実行
C:\talavax\javasample>java Digit_While_1
出力結果
531の桁数は、3 -23473の桁数は、5 0の桁数は、0
Javaソースコードの解説
ここから、ソースコードを説明していきます。
001
public class Digit_While_1 {
クラス名を、Digit_While_1としています。
002 003 004
// 整数の桁数を求めるメソッド private static int digit( int a ) {
005 006
// 桁数を格納する変数 int digit = 0;
008 009 010
// 桁数を求める // aを10で割っていき、a=0になるまで処理を繰り返す while ( 0 != a ) {
011 012
// aを10で割る
a = a / 10;
014 015
// 桁数を増やす
++ digit;
桁を表す変数digitを1ずつ増やしています。ここでは、インクリメント(++)を使っています。
「++ digit;」の代わりに、「digit ++;」 または、「digit = digit + 1;」 または、代入演算子を使って「digit += 1;」と記述してもよいです。
023 024
// メイン public static void main( String[] args ) {
このmainメソッドからプログラムを実行します。
025 026
// 桁数を求める値を格納する変数 int a;
桁数を求める値を格納する変数aを宣言しています。
028 029
// 求めた桁数を格納する変数 int d;
桁数を求める値を格納する変数aを宣言しています。
031 032 033 034
// 531の桁数を求める a = 531; d = digit( a ); System.out.println( a + "の桁数は、" + d );
036 037 038 039
// -23473の桁数を求める a = -23473; d = digit( a ); System.out.println( a + "の桁数は、" + d );
041 042 043 044
// 0の桁数を求める a = 0; d = digit( a ); System.out.println( a + "の桁数は、" + d );
以上です。
関連コンテンツ
割り算で「割り切れる」、「割り切れない」ってどういうこと?