質問するログイン新規登録

回答編集履歴

2

追記

2022/01/03 05:11

投稿

wsb
wsb

スコア194

answer CHANGED
@@ -1,1 +1,18 @@
1
- そこまで似ていないものをまとめられたとしても相当読みづらいコードになってしまうので、まとめないほうがいいと思います。そこまで分量もないし複雑さもないので
1
+ そこまで似ていないものをまとめられたとしても相当読みづらいコードになってしまうので、まとめないほうがいいと思います。そこまで分量もないし複雑さもないので
2
+
3
+ ---
4
+
5
+ それでもどうしてもやりたかったら、こんな感じで要件を満たすことはできます。
6
+ ```c
7
+ void nexthen(int *i, int *j, int plus) {
8
+ if ((*j + plus) >= v) {
9
+ *i += 1;
10
+ *j = *i + 1;
11
+ } else if ((*j + plus) <= *i) {
12
+ *i -= 1;
13
+ *j = v - 1;
14
+ } else {
15
+ *j += plus;
16
+ }
17
+ }
18
+ ```

1

誤った回答の修正

2022/01/03 05:11

投稿

wsb
wsb

スコア194

answer CHANGED
@@ -1,12 +1,1 @@
1
- 見たとろ`plus`は1か-1のみのようなので、そのまつかえば一つにるんじゃなでしょか。(可読性はずぶん落ちますが)
1
+ まで似ていないもをまとめられたとしても相当読づらいコードにってしまうので、まとめないいと思います。そこまで分量もないし複雑さもないので
2
-
3
- ```c
4
- void nexthen(int* i,int* j,int plus){
5
- if (*j + plus == v) {
6
- *i += plus;
7
- *j = *i + plus;
8
- } else {
9
- (*j) += plus;
10
- }
11
- }
12
- ```