- 论坛徽章:
- 0
|
出个题目:
本帖最后由 rdcwayx 于 2012-11-16 13:54 编辑
这在大一学c语言时练过,我给出一个列出所有符合条件的质数,并求出最小和的awk代码。- BEGIN{for(i=1;i<=9;i++){
- for(j=0;j<=9;j++){
- num=i*10+j;
- if((num%2==0)||(num%3==0)||(num%5==0)||(num%7==0))
- continue;
- a[k++]=num;
- }
- }
- for(x=1;x<=9;x++){
- for(y=0;y<=9;y++){
- for(z=0;z<=9;z++){
- num2=x*100+y*10+z;
- if((num2%2==0)||(num2%3==0)||(num2%5==0)||(num2%7==0))
- continue;
- b[t++]=num2;
- }
- }
- }
- min=2200;
- for(l=0;l<k-1;l++){
- for(m=l+1;m<k;m++){
- for(n=0;n<t-1;n++){
- for(p=n+1;p<t;p++){
- result=a[l]a[m]b[n]b[p];
- if(result~/1/&&result~/2/&&result~/3/&&result~/4/&&result~/5/&&result~/6/&&result~/7/&&result~/8/&&result~/9/&&result~/0/){
- print a[l],a[m],b[n],b[p] ;
- if(min>a[l]+a[m]+b[n]+b[p]){
- min=a[l]+a[m]+b[n]+b[p];
- ok1=a[l];ok2=a[m];ok3=b[n];ok4=b[p];
- }
- }
- }
- }
- }
- }
- print "##############\n the min is :"min"="ok1"+"ok2"+"ok3"+"ok4
- }
复制代码 |
|