#include <iostream>
using namespace std;
int small(int a, int b); // 함수 원형 선언
int small(int a, int b, int c);
int small(int a, int b) {//매개변수 2개 함수 선언
int num = a < b ? a : b;//정수형 num 은 a와 b중 작은 값 저장
if (num < 0) { //만약 0보다 작으면
num = 0; //num = 0
}
return num; //num 반환
}
int small(int a, int b, int c) { // 매개변수 3개 함수 선언
int num = a < b ? a : b; // 정수형 num 은 a와 b중 작은 값 저장
int num2 = num > c ? num : c; // 정수형 num2는 a 와 b 중 작은 값과 c 비교해서 큰값
return num2; // num2 반환
}
int main() {
int x = small(3, 5); // 3과 5중 작은 값 3은 최소값 0보다 크므로 3 리턴
int y = small(123, -30); // 123과 -30중 작은 값 -30은 최솟값 0 보다 작으므로 0 리턴
int z = small(30, 70, 50); // 30과 70 중 작은 값 30이 최솟값 50 보다 작으므로 50 리턴
cout << x << ' ' << y << ' ' << z << endl; // 출력
}
#include <iostream>
using namespace std;
int big(int a, int b, int c = 10); //함수 원형 선언
int big(int a, int b, int c) { //매개변수 3개인 함수 선언, c 는 default 값이 10
int num = a > b ? a : b; // 최댓값을 구하는 함수 . 정수형 num에 저장
int num2 = num < c ? num : c; // num과 c 중 최솟값을 구하는 함수. num2 에 저장
return num2; // num2 에 반환
}
int main() {
int x = big(3, 5); // 3과 5중 큰 값 5는 최대값 10보다 작으므로, 5 리턴
int y = big(20, 8); // 20과 8 중 큰 값 20은 최대값 10보다 크므로 , 10리턴
int z = big(300, 55, 100); // 3--과 55 중 큰 값 300이 최대값 100보다 크므로, 100리턴
cout << x << ' ' << y << ' ' << z << endl; // 출력
}
#include <iostream>
using namespace std;
class Book { // Book클래스 선언
string name; //이름, 가격 , 페이지 선언
int price, pg;
public:
Book(string name, int price = 0, int pg = 0) {//생성자 함수 선언, 정의
this->name = name;
this->price = price;
this->pg = pg;
}
Book operator += (int a);//연산자 함수 선언
Book operator -= (int a);
void show();//출력 함수 선언
};
void Book::show() { // 출력해주는 함수 정의
cout << name << ' ' << price << "원 " << pg << ' ' << "페이지" << endl;//출력할 내용
}
Book Book::operator+=(int a) {//연산자 함수 정의 , 가격은 정수형 변수에 따라 더해짐.
price = price + a;
return *this;//객체 반환
}
Book Book::operator -=(int a) {//연산자 함수 정의, 가격은 정수형 변수에 따라 빼어짐.
price = price - a;
return *this;//객체 반환
}
int main() {
Book a("청춘", 20000, 300), b("미래", 30000, 500);//생성자 함수에 맞게 객체 생성
a += 500;//연산자함수 사용하여 가격에 500원 더함
b -= 500;// 연산자함수 사용하여 가격에 500원 뺌
a.show();//출력
b.show();
}
#include <iostream>
using namespace std;
class Book;//클래스가 선언되기 전에 먼저 참조되는 컴파일 오류를 막기 위한 선언문
Book operator += (Book& a, int b);//외부함수 선언 , 참조매개변수 사용.
Book operator -= (Book& a, int b);
class Book { // 클래스 선언
string name; // private 변수 선언
int price, pg;
public:
Book(string name = " ", int price = 0, int pg = 0) { // 생성자 함수 선언, 정의
this->name = name;
this->price = price;
this->pg = pg;
}
friend Book operator += (Book& a, int b); // friend를 사용한 연산자함수(더하기) 선언 , 참조매개변수 사용
friend Book operator -= (Book& a, int b); // friend를 사용한 연산자함수(빼기) 선언, 참조 매개변수 사용
void show(); // 출력함수 선언
};
void Book::show() { // 출력 함수 정의
cout << name << ' ' << price << "원 " << pg << ' ' << "페이지" << endl;//출력할 내용
}
Book operator +=(Book& a, int b) {// 연산자 함수(더하기) 정의, 참조매개변수를 통한 반환값 전달
a.price = a.price + b;; // 가격에 정수형 변수 더하기
return a; //객체 반환
}
Book operator -= (Book& a, int b) {//연산자 함수(빼기)정의, 참조매개변수를 통한 반환값 전달
a.price = a.price - b; //가격에 정수형 변수 빼기
return a;//객체 반환
}
int main() {
Book a("청춘", 20000, 300), b("미래", 30000, 500);//생성자 함수에 맞게 객체 생성
a += 500;//연산자함수 사용하여 가격에 500원 더함
b -= 500;// 연산자함수 사용하여 가격에 500원 뺌
a.show();//출력
b.show();
}
'Electronic Engineering > C++' 카테고리의 다른 글
C++ SFML 과제 (0) | 2022.07.05 |
---|---|
C++ 실습 과제 마지막 (0) | 2022.07.05 |
C++ 실습 과제 2 (0) | 2022.07.05 |
C++ 실습 과제 (0) | 2022.07.05 |
C언어 Level Test (0) | 2022.07.05 |