#/*********************************************************** # slctsort.rb -- 選択ソート #***********************************************************/ def selectsort(n, a) # a..n-1] を昇順に for i in 0...n min = a[i]; k = i for j in i...n if (a[j] < min); min = a[j]; k = j; end end a[k] = a[i]; a[i] = min end end N = 20 a = [] printf("Before:") for i in 0...N a[i] = rand * 100 + 1 printf(" %2d", a[i]) end printf("\n") selectsort(N, a) printf("After: ") for i in 0...N; printf(" %2d", a[i]); end printf("\n") exit 0