回答編集履歴

1

追記1

2019/11/18 06:25

投稿

BeatStar
BeatStar

スコア4958

test CHANGED
@@ -95,3 +95,87 @@
95
95
 
96
96
 
97
97
  これをコード化すればいいのでは?
98
+
99
+
100
+
101
+ ----
102
+
103
+
104
+
105
+ [追記1]
106
+
107
+
108
+
109
+ (返信にて)
110
+
111
+ > ということは変数を宣言して...
112
+
113
+
114
+
115
+ そうだと思います。
116
+
117
+
118
+
119
+ 人間だと脳で記憶できますが、機械はそれができません。(出来るにはできるが、変数を使ったりするし...)
120
+
121
+
122
+
123
+ なので変数かなんかで最後の値を確保して、そこから始める必要があります。
124
+
125
+
126
+
127
+ そして、9の直後は0 ...っていうのをやるのは面倒(毎回書くと思うから)なので、関数化します。
128
+
129
+
130
+
131
+ 例えば、
132
+
133
+
134
+
135
+ ```C
136
+
137
+ int progressNumber( int num ){
138
+
139
+ if( num == 9 ) return 0; // 9の次は常に0にするため
140
+
141
+ // それ以外なら num + 1 した値を返す
142
+
143
+ return (num + 1);
144
+
145
+ }
146
+
147
+ ```
148
+
149
+
150
+
151
+ としておけば、
152
+
153
+
154
+
155
+ ```C
156
+
157
+ int main( void ){
158
+
159
+ int n; // 段の最後の値を確保するための変数
160
+
161
+ // for文かなんかで
162
+
163
+ // ここで一行分の数列表示
164
+
165
+ // n に 最後の値を入れる
166
+
167
+ n = progressNumber( n );
168
+
169
+ // forなんかの終了のアレ
170
+
171
+ }
172
+
173
+ ```
174
+
175
+
176
+
177
+ みたいに書ける。
178
+
179
+
180
+
181
+ 答え書いてもいいですが、それをやっちゃうと、質問者さんが窮地に陥る可能性がある(例えば出題者にバレるとか)ので、あえて伏せています。