연습장
비교 연산과 논리 연산 본문
주제: 비교 연산과 논리 연산
비교연산이 언제 필요한가?
체력이 0이 되면 사망한다,
체력이 30% 이하이면 궁극기를 발동한다.
(100*hp/maxHp), 경험치가 100 이상이면 레벨업을 한다.
비교 연산
a == b | a와 b의 값이 같은가? 같으면 1, 다르면 0 |
a != b | a와 b의 값이 다른가? 다르면1, 같으면 0 |
a > b | a가 b보다 큰가? |
a > = b | a가 b보다 크거나 같은가? |
a < b | a가 b보다 작은가? |
a <= b | a가 b보다 작거나 같은가? |
#include <iostream>
using namespace std;
int a = 1;
int b = 2;
bool isSame;
bool isDifferent;
bool isGreater;
bool isSmaller;
int main(){
isSame = (a == b);
isDifferent = (a != b);
isGreater = (a > b);
isSmaller = (a < b);
}
논리연산이 언제 필요한가?
조건에 대한 논리적 사고가 필요할 때, 하나의 정보가 아닌 여러 정보를 조합하여 최종 판단을 해야하는 상황일 때
로그인할 때 아이디도 같고 And 비밀번호도 같아야 한다. ( 두가지 조건을 동시에 만족 (and문
길드마스터이거나 Or 운영자계정이면 길드 해산이 가능하다. ( 둘 중 하나의 조건만 만족 (or문
논리연산
&& | and 둘다 1이면 1, 그 외 0 |
|| | or 둘 중 하나라도 1이면 1, 둘 다 0이면 0 |
!not | 0이면 1, 그 외 0 |
#include <iostream>
using namespace std;
int a = 1;
int b = 2;
bool isSame;
bool isDifferent;
bool isGreater;
bool isSmaller;
bool test;
int hp =100;
bool isInvincible = true; //무적여부
int main(){
isSame = (a == b);
isDifferent = (a != b);
isGreater = (a > b);
isSmaller = (a < b);
test = !isSame; //사실상 isDifferent의 의미
test = (hp <=00 && isInvincible == false); //체력이 없고 무적도 아니기에 죽음, 죽었냐?
test = (hp > 0 || isInvincible == true); //체력도 있고 무적이기에 살아있음, 살았냐?
/*!(hp <=00 && isInvincible == false) 살았냐?를 이렇게도 표기 가능함 */
}
논리연산 어셈블리 분석 이해 못함
'언리얼 개발자 > C++' 카테고리의 다른 글
const와 메모리 구조 (0) | 2022.09.05 |
---|---|
비트 연산과 비트 플래그 (0) | 2022.08.07 |
산술 연산(데이터 연산) (0) | 2022.07.31 |
문자와 문자열 (0) | 2022.07.31 |
불리언과 실수 (0) | 2022.07.30 |
Comments