入力した数字が3つ以上並んでいたらならその数を0にするというコードを書きたいです。
例えば、
1 1 1 2 2 ならば 0 0 0 2 2 のように変換したいです。
1 1 1 1 2 ならば 0 0 0 0 2 のように変換したいです。
また、縦は自分で定めて横は5つで固定して考えてます。
下のコードは途中までですが書きました。
「e」というのは横の列を考えたときに同じ数が並んだ回数を数えて2以上ならその数を0にするというコード書くために作ったのですが、その数を0にするやり方がわからず途中で止まっています。この先はどのように書いたらいいのでしょうか?
c
1#include <stdio.h> 2 3int main(void) 4{ 5 int a,b,c,e=0,i,j; 6 printf("縦を指定してください\n"); 7 scanf("%d",&a); 8 int kazu[a][5]; 9 printf("数を入力してください\n"); 10 for(i=0;i<=a-1;i++){ 11 for(j=0;j<=4;j++){ 12 scanf("%d",&kazu[i][j]); 13 } 14 } 15 for(i=0;i<=a-1;i++){ 16 for(j=0;j<=4;j++){ 17 for(c=1;kazu[i][j]==kazu[i][j+c];c++){ 18 e++; 19 } 20 } 21 } 22 23}
"12223"なども"10003"としますか?
します!
回答3件
あなたの回答
tips
プレビュー