[Atelier Blue アトリエブルー]Homeコンテストパソコン甲子園2003年本選>4問目

4問目(桁数数え)

問題

20億以下の正の整数nが入力されるので、nの桁数を表示するプログラムを作成する。

入力

n(整数)

出力

桁数(整数)

入力例

12345

出力例

5

解き方例

ひたすら10で割り算します。

ソースコード

お持ち帰り

C/C++

#include <stdio.h>

int main(){
    int in,i;
    scanf("%d",&in);
    for(i=1;in/=10;i++);
    printf("%d",i);

    return 0;
}

Java

import java.io.*;

class a04{
    public static void main(String args[])throws IOException{
        BufferedReader br =  new BufferedReader(new InputStreamReader(System.in));
        
        int n;
        n = Integer.parseInt(br.readLine());
        
        int i;
        for(i=0;n!=0;i++){
            n /= 10;
        }
        
        System.out.println(i);
        
    }
}

VB.Net

Imports System

Module m

    Sub Main()
        Dim n, i As Integer

        n = Int32.Parse(Console.ReadLine())

        i = 0
        Do While n <> 0
            i += 1
            n /= 10
        Loop

        Console.WriteLine(i)

    End Sub

End Module

その他

このような小技はよくタメされるのでしっかりと覚えておきましょう。それと、初期値にはくれぐれも気を付けてください。ここを一発でするか、コンパイルしてから気付くかは結構重要です。


ページの一番上へ
前のページへ 一覧に戻る 次のページへ
初版2006-5-5 最終更新2006-5-9
[Atelier Blue アトリエブルー]Homeコンテストパソコン甲子園2003年本選>4問目