C/C++の宿題を片付けます 80代目
■ このスレッドは過去ログ倉庫に格納されています
0049デフォルトの名無しさん
2006/12/27(水) 01:18:33こんな感じで。侮ってかかったら3時間かかってしもーた。まだバグがあるかも。
俺も混乱してるから、デバッグはご自分で!
#include <stdio.h>
#define N 10
#define Abs(x) (x>0) ? x:-x
#define Max(a,b) (a>b) ? a:b
#define Min(a,b) (a<b) ? a:b
int Length(int ave,int x){int A,B,Ans;A= Max(ave,x);B= Min(ave,x);Ans = A-B;return Abs(Ans);}
int main(){
int val[N],Len[N],LenMax=0,LenMin=0,Ave,all=0,i;
for(i=0;i<N;i++){printf("Input data[%d/%d]:",i,N);scanf("%d",&val[i]);}
for(i=0;i<N;i++) all += val[i];
Ave = all/N;
for(i=0;i<N;i++) Len[i] = Length(Ave,val[i]);
LenMax=LenMin=Len[0];
for(i=0;i<N;i++){LenMax = Max(Len[i],LenMax);LenMin = Min(Len[i],LenMin);}
printf("Ave=%d",Ave);
printf("\nMin=%d\n",LenMin);
for(i=0;i<N;i++) if(Len[i] == LenMin){printf("[%d:%d:%d]",i,Len[i],val[i]);}
printf("\nMax=%d\n",LenMax);
for(i=0;i<N;i++) if(Len[i] == LenMax){printf("[%d:%d:%d]",i,Len[i],val[i]);}
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています