• 締切済み

4桁の数値を逆に表示されるプログラム

プログラミングで分からないところがあるので、教えてください 4桁の数値を入力し、その数値が逆に表示されるプログラムを作成したいのですが、どういう風にプログラムをくめばいいか分かりません 変数宣言と代入式及びprintfを使ってです viです。 10で割って余りを出して順に表示させればいいと言われたのですが、そのプログラムが分かりません;; 説明不足ですみませんが、分かる方教えてください

みんなの回答

  • yama5140
  • ベストアンサー率54% (136/250)
回答No.4

#2 です。 >whileがいいとの事ですが、まだやってないんですよ;;  それならば、1)から4)までをダラダラと、「やった」ものだけで(十分ですので)書けばよい、と思います( while() は、「ダラダラ」を省くためだけだから)。 「『やった』もの」の想定。 ・No.1 さんへの「お礼」で使われたもの+「割り算」+代入(質問本文既出)。 ☆「やった」ものだけで、1)から4)までをプログラム組めない場合は、もう少し学んでから「数値が逆に表示されるプログラムを作成したい」としましょう。

noname#97470
質問者

お礼

回答ありがとうございます なんとかプログラムできました!

  • diszo
  • ベストアンサー率78% (32/41)
回答No.3

基本的な文法はわかっていると思いますので プログラムを書くならこんな感じになると思います。 #####ここから########## 0.変数の宣言 余りが入る変数 商が入る変数 1.入力を受け付ける //scanf 2.余り=入力された値%10; 3.余りを表示 //printf 4.商 = 入力された値 / 10; 5.余り=商%10; 6.余りを表示 //printf 7.商 = 商 / 10; 8.余り=商%10; 9.余りを表示 //printf 10.商 = 商 / 10; 11.余り=商%10; 12.余りを表示 //printf 13.商 = 商 / 10; #####ここまで########## whileを使わないでってことなので、 こんな書き方でしょうか

noname#97470
質問者

お礼

回答ありがとうございます! このやり方でなんとかできました!! 本当にありがとうございました!

  • yama5140
  • ベストアンサー率54% (136/250)
回答No.2

>10で割って余りを出して順に表示させればいいと言われた・・  例えば、4321だったら、  1)4321%10で1、これを表示して、10で割る。  2)432%10で2、これを表示して、10で割る。  3)43%10で3、これを表示して、10で割る。  4)4%10で4、これを表示して終わり。  結果、1234と「逆に」表示できます。  プログラムですと、  while( a ){ がよろしいかと・・。  while() 構文の中には、上の1)の動作の3つ(%10、表示、10で割る)をいれるだけ。

noname#97470
質問者

お礼

回答ありがとうございます。 逆にする原理といいますか、10で割るという事は理解できたのですが、そのプログラムをどう書けばいいのか分かりません;; whileがいいとの事ですが、まだやってないんですよ;; int、printf、scanfで求めたいのですが...

回答No.1

MS-C時代なのでもう頭サビてるし・・・ 具体的なサイプルとか無理ですけど。f^^;) 数字を文字列に変換して、レングスで文字数を出して、 配列変数にアドレスコピーして forでレングスマイナス1から減算ループして配列を 大きい方から表示したら良いんではないでしょうか?

noname#97470
質問者

お礼

すみません、初心者なものでよく分からないのですが;; #include<stdio.h> main() { int a; scanf("%d",&a); printf("%d",a%10); } こういう感じので作りたいんですけど;; これだと、例えば12って入れると2は出てくるんですけど、1は出ませんよね。 1も出すようにするには、今度1÷10の式をどこにどう入れればいいのでしょう?

関連するQ&A