no image
c++ minimum two-way alignment (최소 양방향 정렬)(내림차순)
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout void swap();//함수 선언문 int main()// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것 //void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다 { int arr[5];//배열 arr[]를 메모리값의 크기가 5인 배열 선언 int temp = 0;// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 cout
2023.01.12
C++
no image
c++ Interchange Insertion Sort(자리교환 삽입정렬)(내림차순)
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout void swap();//함수 선언문 int main()// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것 //void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다 { int arr[5];//배열 arr[]를 메모리값의 크기가 5인 배열 선언 int temp = 0;// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 cout
2023.01.12
C++
no image
c++ 이분탐색
#include //C++을 구동하기 위한 헤더 파일 선언 using namespace std;//std::의 접두어를 생략한다. class BASE1{//기본 클래스 sel,count,arr[],mid 멤버 변수와 Set(), tam2() 멤버 함수를 지님 //디폴트 생성자도 자동생성 int arr[6];//전역 정수형 배열로 arr[6] 선언 int mid, sel, count=0;//전역 정수형 변수 mid, sel, count 선언 int left = 1, right = 5; // left, right 초기화 public://어디서든지 사용가능 void set(int a){//Set int 인자를 1개 받는 생성자 sel = a;//sel이라는 변수가 가르키는 주소 값에 메모리안에 a을 선언 a로..
2023.01.12
C++
no image
c++ position insertion sort (위치 삽입정렬)
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout int main()// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것 //void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다 { int a[5]={1,4,3,2,5};//arr 이라는 배열이 가르키는 주소 메모리 값을 5로 선언과 동시에 1,4,3,2,5로 초기화 int temp=0; //temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 int data=0;//data 이라는 변수가 가르키는 주소 값에 메모리안에 0을 ..
2023.01.12
C++
no image
c++ bidirectional bubble sort(양방향 버블 솔트)
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout void swap();//함수 선언문 int main()// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것 //void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다 { int arr[5];//배열 arr[]를 메모리값의 크기가 5인 배열 선언 int temp = 0;// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 cout
2023.01.10
C++
no image
c++ 실수는 더하고 정수는 곱하기
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout double add (double x, double y){ return x+y; } int a (int x, int y){ return x*y; } int main(){ double d, b, c; cout > d; cin >> b; c = d + b; if (c%1.0 == 0){ cout
2023.01.10
C++
no image
c++ 실수는 더하고 정수는 곱하고 문자는 아스키코드 값으로 더하기
#include //선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 using namespace std; //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout double add (double x, double y){//함수화, 함수를 사용하면 프로그램 코드가 구조화되어 간단해지고 쉽게 사용가능하다 //x,y값을 받음 return x+y;// x + y 값을 리턴 } int mul (int x, int y){// 함수 선언 x,y값을 받음 return x*y;// x*y 값을 리턴 } int asc (int x, int y){//함수 선언 x,y값을 받음 return x + y; //x + y 값을 리턴 } int main(){// 몸체부, 메인 함수 ..
2023.01.10
C++
no image
c++ 소멸자 예제
#include #include using namespace std; class STRING{ char *string; int length; public: STRING(char*); ~STRING(); void Catenate(STRING &); void Print(); }; STRING::~STRING(){ cout
2023.01.10
C++
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout 

void swap();			//함수 선언문	 

int main()				// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
					//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
{
	int arr[5];				//배열 arr[]를 메모리값의 크기가 5인 배열 선언 
	int temp = 0;			// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 

	cout << "=====input=====" <<endl; 								//출력문 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++
		cout << i+1 << "번째 숫자 : "; 					//i는 0부터니까 i+1부터 시작 출력문 
		cin >> arr[i];									//0부터 4까지 arr[i]에 값 입력 
	}	
	cout << "============data============" <<endl; 				//출력문 
	cout << "현재 들어간 숫자 : ";								//출력문	 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++ 
		cout << arr[i] << " "; 							//arr[] 배열값에 뭐가 들어가있는지 출력 
	}
	cout << endl;				//줄 바꿈 
	
	cout << "============swap============" << endl;			//출력문, 줄바꿈 
		for(int j=0; j<2; j++){		//0~1까지 1씩 증가//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
				for(int i=j; i<4-j; i++){		//j부터 4-j까지 1씩 증가 //조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
					if(arr[i] > arr[i+1]){		//arr[i]가 a[i+1]보다 클때 실행
					swap(arr[i], arr[i+1]);				//swap 함수사용 
					}
					cout << j+1 << "-"<<i+1<< "번째 정렬 : ";			// for문이 2개이기때문에  j+1 - i+1 로 출력문을 써준다 
						for(int q=0; q<5; q++){					//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로0~5 1++ 
						cout << arr[q] << " "; 					//arr[q] 출력 
				}
								cout <<endl;				//줄바꿈 
			}
			cout << endl;
				for(int c=3; c>=j+1; c--){			//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 3부터 j+1까지 1-- 
					if(arr[c] < arr[c-1]){				//arr[c] 가 arr[c-1] 이라면 조건문 실행 
					swap(arr[c], arr[c-1]);				// arr[c]와 arr[c-1]을 swap 함수로 값을 보냄 
				}
				cout << j+1 <<"-" << c+1<< "번째 정렬 : ";		//for문이 2개이기 때문에 j+1 - c+1로 값을 설정 (출력문) 
						for(int z=0; z<5; z++){				//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~5까지 1++ 
						cout << arr[z] << " "; 				//arr[] 배열값 출력 
			}
						cout << endl;				//줄 바꿈 
		}
		cout << endl;
					
	}
}
void swap(int x, int y){		//함수 선언문 
	int temp;				// temp 변수 선언 
	
	temp = x;			//temp, x 값 교환		 
	x = y;				//x, y 값 교환 
	y = temp;			//y, temp 값 교환 
}
반응형
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout 

void swap();			//함수 선언문	 

int main()				// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
					//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
{
	int arr[5];				//배열 arr[]를 메모리값의 크기가 5인 배열 선언 
	int temp = 0;			// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 

	cout << "=====input=====" <<endl; 								//출력문 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++
		cout << i+1 << "번째 숫자 : "; 					//i는 0부터니까 i+1부터 시작 출력문 
		cin >> arr[i];									//0부터 4까지 arr[i]에 값 입력 
	}	
	cout << "============data============" <<endl; 				//출력문 
	cout << "현재 들어간 숫자 : ";								//출력문	 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++ 
		cout << arr[i] << " "; 							//arr[] 배열값에 뭐가 들어가있는지 출력 
	}
	cout << endl;				//줄 바꿈 
	
	cout << "============swap============" << endl;			//출력문, 줄바꿈 
		for(int j=0; j<5; j++){		//0~4까지 1씩 증가//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
				for(int i=j; i>=1; i--){		//0~2까지 1씩 증가 //조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
					if(arr[i] > arr[i-1]){		//arr[i]가 a[i+1]보다 클때 실행
					swap(arr[i], arr[i-1]);				//swap 함수사용 
					}
					cout << "정렬 : ";			// for문이 2개이기때문에  j+1 - i+1 로 출력문을 써준다 
						for(int q=0; q<5; q++){					//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로0~5 1++ 
						cout << arr[q] << " "; 					//arr[q] 출력 
				}
								cout <<endl;				//줄바꿈 
			}
	}
}

void swap(int x, int y){		//함수 선언문 
	int temp;				// temp 변수 선언 
	
	temp = x;			//temp, x 값 교환		 
	x = y;				//x, y 값 교환 
	y = temp;			//y, temp 값 교환 
}
반응형

c++ 이분탐색

Dev_Jen
|2023. 1. 12. 22:01
반응형
#include <iostream>				//C++을 구동하기 위한 헤더 파일 선언
using namespace std;			//std::의 접두어를 생략한다.

class BASE1{						//기본 클래스 sel,count,arr[],mid 멤버 변수와 Set(), tam2() 멤버 함수를 지님 //디폴트 생성자도 자동생성 
	int arr[6];						//전역 정수형 배열로 arr[6] 선언 
	int mid, sel, count=0;			//전역 정수형 변수 mid, sel, count 선언 
	int left = 1, right = 5; 		// left, right 초기화
	public:							//어디서든지 사용가능 
		void set(int a){			//Set int 인자를 1개 받는 생성자 
			sel = a;				//sel이라는 변수가 가르키는 주소 값에 메모리안에 a을 선언 a로 초기화 // 받은 인자값을 sel에 선언 
		}
		void tam2(){				//이분탐색 생성자 
			for(int i=1;i<6;i++){arr[i]=i;} 	//배열값을 추가해주는 for문 	
			
			for(int i=0; i<5; i++){			//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++ 
      		mid = (left+right)/2; 			// mid값 갱신 새로 돌아갈때마다 
      		if(arr[mid] == sel){			//arr[mid]와 sel 값이 같다면 조건식 실행 
      			count++;					//count 값 증가 
      			cout << count <<"번째 비교 "<< endl;		//비교 횟수 출력문 
		  		cout << mid << "값과" << sel << "값이 같습니다." << endl;	//비교값 출력문 
		  		break;						//값이 같다면 for문 탈출 
	 		 }
	  		else if(arr[mid] > sel){		//arr[mid]가 sel보다 크다면 
	  			count++;					//count 값 증가	 
      			cout << count <<"번째 비교 "<< endl;		//비교 횟수 출력문 
				cout << mid << "값과" << sel << "값이 같지 않습니다.." << endl;		//비교값 출력문 
				right = mid;				//왼쪽값이 크면 미드를 왼쪽으로 당겨준다 
	  		}
	  		else if(arr[mid] < sel){		//arr[mid]가 sel보다 작다면 
	  			count++;					//count값 증가 
      			cout << count <<"번째 비교 "<< endl;		//비교 횟수 출력문 
				cout << mid << "값과" << sel << "값이 같지 않습니다.." << endl;		//비교값 출력문 
				left = mid+1;				//만약 나눴을때 4.5라면 정수는 항상 4가 나오기 때문에 비교값이 5일때를 대비해서 만들어준 값 
			  }
  		}	
	}
};
int main(){					// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
							//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
    int sel;				//정수형 변수 sel 선언  
    
  	cout << "찾을 값을 입력해 주세요: ";		//출력문 
  	cin >> sel; 								//sel 입력문	
  	
	BASE1 B;								//클래스의 객체 생성 객체 이름은 B 
	B.set(sel);								//클래스에 접근 (sel)인자값 보내기 
	B.tam2();								//클래스의 멤버에 접근 B.tam() 사용 

}
반응형
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout 

int main()				// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
						//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
{
   int a[5]={1,4,3,2,5};											//arr 이라는 배열이 가르키는 주소 메모리 값을 5로 선언과 동시에 1,4,3,2,5로 초기화 
   int temp=0; 														//temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 
   int data=0;														//data 이라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 
   cout << "============data============" <<endl; 					//데이터값 출력문, 줄바꿈  

   for(int i=0; i<5; i++) 											//0 ~ 4까지 1++ 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
   {
   	  cout<< i+1 << "번째 배열 값: ";		 						// i+1 번째 배열값 출력문 
      cout<<a[i]<<endl; 											// a[i] 배열 값 출력문, 줄바꿈 
   }
    cout<<endl;														//줄바꿈 
  cout << "============swap============" << endl;					//솔트 시작 출력문, 줄바꿈 
  for (int i=0; i<4; i++)											//0 ~ 4까지 1++ 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
   {
      if (a[i] < a[i+1])											//a[i] 배열 값이 a[i+1]보다 작다면 if조건문 실행 
      {
         temp = a[i+1];												//temp 배열 값에 주소가 가르키는 메모리 값에 a[i+1] 대입 
         a[i+1] = a[i];												//a[i+1] 배열 값에 주소가 가르키는 메모리 값에 a[i] 대입
         a[i] = temp;												//a[i] 배열 값에 주소가 가르키는 메모리 값에 temp 대입    솔트문 

         for(int j=0; j<5; j++)										//0 ~ 4까지 1++ 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
         {
            cout<<a[j]<<" ";										//a[j] 배열값 출력문 
         }
            cout << endl;					 						//줄바꿈 
      }
   }
   
   for(int i=4;i>0;i--){											//4 ~ 1까지 1-- 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
      if(a[i]>a[i-1]){												//a[i] 배열 값이 a[a+i]보다 크다면 if조건문 실행 
         temp=a[i];													//temp 배열 값에 주소가 가르키는 메모리 값에 a[i] 대입 
         break;														//for문 탈출 
      }
   }
   for(int i=3;i>0;i--){											//3 ~ 1까지 1-- 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
      if(temp>=a[i]){												//temp 값이 a[i]보다 크거나 같다면 if조건문 실행 
         a[i]=a[i-1];												//a[i] 배열 값에 주소가 가르키는 메모리 값에 a[i-1] 대입
      } 
   }
   for(int i=0;i<5;i++){											//0~4까지 1++ 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
      if(data<a[i]) {												//data 값이 a[i]보다 작다면 if조건문 실행 
         data=a[i];													//data 값에 주소가 가르키는 메모리 값에 a[i] 대입
      }
   }
   if((a[0]==a[1])&&(temp>data))									//a[0]값과 a[1]값이 같으면서 temp값이 data보다 커야 if조건문 실행 
      {
        a[0]=temp;													//a[0] 배열 값에 주소가 가르키는 메모리 값에 temp대입
    }
   cout<<endl<<"최종 배열 값:";										//최종 배열 값 출력문 

   for(int i=0;i<5;i++) 											//0~4까지 1++ 조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
   {
      cout<<" "<<a[i]; 												//a[i] 배열값 출력 
   }  
   return 0; 														//리턴값 0 
}
반응형
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout 

void swap();			//함수 선언문	 

int main()				// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
					//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
{
	int arr[5];				//배열 arr[]를 메모리값의 크기가 5인 배열 선언 
	int temp = 0;			// temp라는 변수가 가르키는 주소 값에 메모리안에 0을 선언 0으로 초기화 

	cout << "=====input=====" <<endl; 								//출력문 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++
		cout << i+1 << "번째 숫자 : "; 					//i는 0부터니까 i+1부터 시작 출력문 
		cin >> arr[i];									//0부터 4까지 arr[i]에 값 입력 
	}	
	cout << "============data============" <<endl; 				//출력문 
	cout << "현재 들어간 숫자 : ";								//출력문	 
	for(int i=0; i<5; i++){								//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~4까지 1++ 
		cout << arr[i] << " "; 							//arr[] 배열값에 뭐가 들어가있는지 출력 
	}
	cout << endl;				//줄 바꿈 
	
	cout << "============swap============" << endl;			//출력문, 줄바꿈 
		for(int j=0; j<2; j++){		//0~4까지 1씩 증가//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
				for(int i=0; i<4; i++){		//0~2까지 1씩 증가 //조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식
					if(arr[i] > arr[i+1]){		//arr[i]가 a[i+1]보다 클때 실행
					swap(arr[i], arr[i+1]);				//swap 함수사용 
					}
					cout << j+1 << "-"<<i+1<< "번째 정렬 : ";			// for문이 2개이기때문에  j+1 - i+1 로 출력문을 써준다 
						for(int q=0; q<5; q++){					//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로0~5 1++ 
						cout << arr[q] << " "; 					//arr[q] 출력 
				}
								cout <<endl;				//줄바꿈 
			}
				for(int c=4; c>=0; c--){			//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 4~0까지 1-- 
					if(arr[c] < arr[c-1]){				//arr[c] 가 arr[c-1] 이라면 조건문 실행 
					swap(arr[c], arr[c-1]);				// arr[c]와 arr[c-1]을 swap 함수로 값을 보냄 
				}
				cout << j+1 <<"-" << c+1<< "번째 정렬 : ";		//for문이 2개이기 때문에 j+1 - c+1로 값을 설정 (출력문) 
						for(int z=0; z<5; z++){				//조건식이 트루일때만 실행 그리고 문장을 갔다가 증감식을가고 다시 조건식으로 0~5까지 1++ 
						cout << arr[z] << " "; 				//arr[] 배열값 출력 
			}
						cout << endl;				//줄 바꿈 
		}
					
	}
}


void swap(int x, int y){		//함수 선언문 
	int temp;				// temp 변수 선언 
	
	temp = x;			//temp, x 값 교환		 
	x = y;				//x, y 값 교환 
	y = temp;			//y, temp 값 교환 
}
반응형
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout 

double add (double x, double y){
	return x+y;
}
int a (int x, int y){
	return x*y;
}

int main(){
	double d, b, c;
	
	cout << "값을 입력하세요 : ";
	
	cin >> d;
	cin >> b;
	c = d + b;
	
	if (c%1.0 == 0){
		cout << a(d,b);
	}
	else {
		cout << add(d,b);
	}
}
반응형
반응형
#include <iostream>  	//선언부 컴파일에 접근을해서 선언파트에 있는 걸 처리해서 사용 
using namespace std;    //std라는 소속을 알려줄 필요가 다음부터 없는것 등록을 했을경우 ex( std::cout  

double add (double x, double y){			//함수화, 함수를 사용하면 프로그램 코드가 구조화되어 간단해지고 쉽게 사용가능하다
											//x,y값을 받음 
	return x+y;				// x + y 값을 리턴 
}
int mul (int x, int y){			// 함수 선언 x,y값을 받음 
	return x*y;			// x*y 값을 리턴 
}
int asc (int x, int y){			//함수 선언 x,y값을 받음 
	return x + y; 			//x + y 값을 리턴 
}

int main(){				// 몸체부, 메인 함수 // int 를 쓰는이유는 비정상적인 오류를 제외 시키는것
						//void를 써도 상관없지만 오류가 날수도있고 계속 컴퓨터가 값을 기다린다
	
	int a = 10, b = 20;				//a = 10, b=20 으로 인트형으로 값을 초기화 
	double x = 10.1, y = 20.2;			//x=10.1, y=20.2로 더블형으로 값을 초기화 
	char q = 'A', w = 'B';				//q='A', w='B'로 char형으로 값을 초기화 
	
	cout << "실수 값은 더하기 : " << add(x,y) << endl;		//출력문 
	cout << "정수 값은 곱하기 : " <<mul(a,b) << endl;		//출력문 
	cout << "문자는 아스키 코드 값으로 더하기 : " << asc(q,w) << endl;		//출력문 
 	
}
반응형

'C++' 카테고리의 다른 글

c++ bidirectional bubble sort(양방향 버블 솔트)  (0) 2023.01.10
c++ 실수는 더하고 정수는 곱하기  (0) 2023.01.10
c++ 소멸자 예제  (0) 2023.01.10
c++ 선형탐색  (0) 2023.01.10
c++ 선형,이분탐색  (0) 2023.01.10

c++ 소멸자 예제

Dev_Jen
|2023. 1. 10. 23:26
반응형
#include <iostream>
#include <string>
using namespace std;

class STRING{
	char *string;
	int length;
	public:
		STRING(char*);
		~STRING();
		void Catenate(STRING &);
		void Print();
}; 


STRING::~STRING(){
	cout << "메모리 해제 중..\n";
	delete string;
}


void STRING::Catenate(STRING &Str){
	length = length + Str.length;
	char *tmp = new char[length + 1];
	strcpy
}


int main(){
	STRING first("Timr is not money.");	//STRING 객체로 first와 second 생성 first 객체에는 time is not money 저장
										//second 객체에는 time is life 저장 
	STRING second("Time is life.");
	
	first.Print();
	second.Print();
	first.Catenate(second);				 
	cout << "\n.....문자열 연결.....\n";
	first.Print();
	
	return 0;
}
반응형