'난수 발생'에 해당되는 글 1건

  1. 2008/10/07 난수 발생 및 오름 내림 차순 정렬 (3)



//-10-08 11:29

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define randomize() srand((unsigned)time(NULL))
#define random(n) (rand() % (n))

void* getArray(int *arrNumbers, int iStart, int iEnd){
     int i;
     int iNum=0;
     //int arrNumbers [iEnd - iStart + 1];
     randomize();
     printf("Total Array Lengt=%d\n",iEnd-iStart + 1);
     for (i=0; i<(iEnd-iStart+1); i) {      
         iNum = random(iEnd+1);
         if(iNum >= iStart){                
                 //printf("%d ",iNum);
                 arrNumbers[i] = iNum;
                 //printf("%d ",arrNumbers[i]);
                 i++;
         }
     }
     //return arrNumbers;
}

void printResult(int *arrN, int iLength){
     int i;
     //printf("\n\nResult value\n");
     for(int i=0; i<iLength;i++){
             printf("%d ",arrN[i]);
     }
}

// 배열정렬 - 오름차순정렬
void ascSorting(int iCount, int *arrNumber){
   int iNext, iCurrent;
   int iTemp;
 
   for(iCurrent=0; iCurrent<iCount-1; iCurrent++){
      for(iNext=iCurrent; iNext<iCount; iNext++){
         if(arrNumber[iCurrent]>arrNumber[iNext]){
            iTemp=arrNumber[iCurrent];
            arrNumber[iCurrent]=arrNumber[iNext];
            arrNumber[iNext]=iTemp;
         }
      }
   }
}

// 배열정렬 - 내림차순정렬
void descSorting(int iCount, int *arrNumber){
   int iNext, iCurrent;
   int iTemp;
 
   for(iCurrent=0; iCurrent<iCount-1; iCurrent++){
      for(iNext=iCurrent; iNext<iCount; iNext++){
         if(arrNumber[iCurrent]<arrNumber[iNext]){
            iTemp=arrNumber[iCurrent];
            arrNumber[iCurrent]=arrNumber[iNext];
            arrNumber[iNext]=iTemp;
         }
      }
   }
}

int main(void){
    int arrN[30];
    getArray(arrN,21,50);
   
    printf("\nOriginal Nubmers\n");
    printResult(arrN,30);
   
    ascSorting(30,arrN);   
    printf("\nAscent Numbers\n");
    printResult(arrN,30);
   
    descSorting(30,arrN);   
    printf("\nDescent Numbers\n");
    printResult(arrN,30);
    return 0;
}

01_random.cpp

저작자 표시
크리에이티브 커먼즈 라이선스
Creative Commons License

'방송대 > C' 카테고리의 다른 글

C언어 과제 2번째  (0) 2008/10/16
MinGW 윈도우용 GCC 디클립스와 연동에 쓰면 좋다  (0) 2008/10/07
C언어 프로그램 DEV C  (0) 2008/10/07
난수 발생 및 오름 내림 차순 정렬  (3) 2008/10/07
C프로그래밍 과제물  (0) 2008/09/18
Posted by 때찌1
이전버튼 1 이전버튼