• ベストアンサー

数字の位ごとの値を表示するプログラム

scanfで入力した数字の位ごとの値を表示するプログラムを作りたいのですがどうしたらいいですか? 例えば1234という数字を入れたら 10の位・・・3 1の位・・・4 という感じです

質問者が選んだベストアンサー

  • ベストアンサー
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

> 10の位・・・3 1234を10で割って小数点以下を切り捨て。→123.4→123 123を10で割った余りを求める。→3 > 1の位・・・4 1234を1で割って小数点以下を切り捨て。→1234 1234を10で割った余りを求める。→4 とか。

slawter
質問者

お礼

なるほど、こういう方法があったとは・・・。 ありがとうございました

その他の回答 (1)

回答No.2

課題か何かですよね? N=1234 とします。 1の位 Nを1で割る 次にその値を10で割って余りを求めると4 10の位 Nを10で割る 次にその値を10で割って余りを求めると3 100の位 Nを100で割る 次にその値を10で割って余りを求めると2 1000の位 Nを1000で割る 次にその値を10で割って余りを求めると1 10000の位 Nを10000で割る 割った商が0なのでおしまい。 どうですか?規則性があるでしょ? for~next 使ってループしてやれば簡単です。 10で割って余りを求めるというのは %10 というのを使えば一発です。

関連するQ&A