9/27(3일차)

강kang·2024년 9월 28일

OT내용
신입사원 시 필요한 역량
1. 성실성
2. 적응력
3. 팀워크
4. 인내력
5. 전문성

c++

진수
2진수 = 0,1
8진수 = 0~7
10진수 = 0~9
16진수 = 0~9, a~f

변수
1. 수식
2. 일상
으로 나누어진다.
<우리가 쓰는 건 수식>
그렇다면 변수란?
1. 데이터는 하드디스크 등 물리적으로 존재해야한다.
읽기쓰기 특정한 메모리에 있는 값을 프로그래머가 코드를 통해서 읽고쓰고할 수 있어야됨
프로그래머가 메모리에 접근(읽기, 쓰기)할 수 있는 요소
2. 데이터를 저장하기 위해 프로그램에 할당받은 메모리 공간

데이터타입 = 자료형
1. 문자 = char

문자자료형이란?
일체형 타입으로, 기본값이 정수(+-자연수와 0포함하는 것)로 저장되고, 크기가 1Byte로
보장되는 것을 의미
부울값(bool사용 true, false)을 해석하는 방법과 유사하게, 문자 값(char)은
ASCII문자로 해석
문자 리터럴은 항상 작은 따옴표를 사용하여 표현
문자열 리터럴은 큰 따옴표를 사용하여 표현
문자와 문자열의 차이는?
문자 = char
1개의 문자로 제한
ex) char a ='a'
변수 안에 'a'가 있다
문자열 = string
제한 없이 문자담음
ex) strig a = 'a'
'a'라는 텍스트가 위치한 좌표를 가집니다.
정수(+자연수 || -자연수 || 0) = int<4Byte>
정수(+자연수 || -자연수 || 0) = long<4Byte>
? int나 long이나 데이터 크기가 같은데 왜 굳이 구분해서 쓰지
정수(+자연수 || -자연수 || 0) = long long<8Byte>

실수(무리수 || 유리수) = float <4Byte>
실수(무리수 || 유리수) = double <8Byte>

여기서 그래서 '자료형'이 뭔데 설명해봐
= 선언할 변수의 특징을 나타내기 위한 키워드

키워드
c++에서 예약한 단어

  • 식별자로 사용 불가능

식별자
PG을 만들 때 여러가지 대상을 구분하기 위해 이름을 만드는 것
-식별자의 규칙
1. 숫자로 시작하지 못한다
2. 특수기호는 언더바만 사용가능하다(특수문자는 포함할 수 없다)
3. 알파벳 대, 소문자를 구별한다(EX) int a != int A) =false

컴파일러(Compiler)
고급언어(인간의 언어)로 작성된 소스코드를 저급 언어(기계어)로 변역하는 프로그램

레퍼런스(Referencce,참조)
다른 변수나 상수(읽기만 가능한 것)를 가르키는 방법

연산자란?
PG에서 다양한 연산(계산)을 수행하기 위해 사용하는 기호 또는 키워드
연산자의 종류
1. 산술 연산자 - 결합방향(왼쪽에서 오른쪽)

  • /
    %(나머지 값)
    대입 연산자 - 결합방향(왼쪽에서 오른쪽)
    +=
    _=
    *=
    /=
    %=
    ?산술연산자와 대입연산자의 차이가 뭐지?
    =의 차이인가? 같다포함?

비교 연산자 - 결합방향(왼쪽에서 오른쪽)
== 같다
!= 다르다
왼쪽이 크다
= 왼쪽이 크거나 오른쪽이랑 같다
< 오른쪽이 크다
<= 오른쪽이 크거나 같다

논리 연산자(왼쪽에서 오른쪽)
true, false을 이용하여 연산(계산)
&& and
|| or
! not(0=true, 1=false 반환(동작시킬 시 그 결과로서 돌려받게 되는 값))
변수의 초기화?
메모리 공간에 값을 채우는 것
처음에 선언을 하는 것

증강 연산자
++ 증가연산자 = 변수값을 1 증가시킴
-- 감소연산자 = 변수값을 1 감소시킴
ex) n++ = ++n
(n = n +1) = (n+=1)
증감 연산자가 전위냐 후위냐에 따라서 연산 결과값이 달라지고 헷갈린다.
전위 (++n)
후위 (n++)
참고자료 : [https://codingadinga.tistory.com/11]

형변환(casting, 명시적 또는 암시적으로 자료의 형식을 변환하는 것을 말한다.)
암시적 : 프로그래머가 형변환을 하지 않는 경우 자동으로 형변환 되는 것
명시적 : 프로그래머가 형변환을 위한 코드를 직접 작성하는 것

double은 %lf 사용

unsigned 최대값 = 255
unsigned(할당 연산자)
할당연산자란?
사칙연산과 같은 연산의 결과를 저장하기 위해 사용되는 연산자
할당 연산자를 대입 연사자라고도 부릅니다.

실수를 int로 하면 소수점이하안나오겠지

정수(양과음의 자연수와 0을)를 실수로 형변환하면 정확도가 손실된다
이유는 근사치를 손실하기 때문에
이유: 실수는 부동소수점(실수를 표현하기 위한 방식 중 하나로 소수점의 위치를 고정하지않고 부동하게 다양한 크기의 수 표현 가능) 방식으로 표현되는데 부동소수점 표현방식 자체가 근사값을 사용하기 때문이다.

상수는 읽기만 가능하다
++x는 하나의 연산자다, 피연산자 1개 단항 연산자

bool = true, false

단항연산자
하나의 연산자(예약어)만 필요하는 연산자
이항연산자
두 개의 피연산자(예약어)를 필요로 하는 연산자

연산자 우선순위, 결합방식
참조: 링크텍스트
링크텍스트

scanf
입력받는 것
scanf("%d%d", &a,&b);

이스케이프 시퀀시
참조: 링크텍스트

메인함수 - PG시작점과 동시에 끝나는점

함수만드는 이유는 쓸려고
함수는 소괄호()도 연산자다

scanf("%d%d", &a,&b);

제어문
실제의 입력이나 출력이 표현되는 데이터의 이상화된 흐름

스크립트
기존에 존재하는 소프트웨어를 제어하는 용도로 사용되는 언어
ex) 자바스크립트, 파이썬

코드블럭?
시각적 스크립팅 환경 내에 문자 스크립팅 인터페이스
(다른 두개 의 시스템 장치사이에서 정보나 신호 주고받는 겨웅의 접점)

if문에 온 순간 조건식을 실행한다
true = 실행
false = 스킵

자료형 변수는 여러개 선언할 수 있다

[입력]scanf("%d%d%d", &a,&b,&C);

& = 어드레스

상수 = 변하지 않는 것, 읽기만 가능한 것

int 정수
float 실수

피연산자가 재료라면
연산자는 도구이다

피연산자는 변수와 상수가 있다
변수는 선언해서 쓰는 것

scanf 계획문자를 넣을 때까지 대기한다

switch(흐름제어문)
소괄호안에 변수가 와야한다
case문 = n개 올 수 있다
순서가 영향을 미친다
defalut는 옵션이다 넣거나 말거나 상관없다
case문에는 :(콜론)이 와야한다
break는 옵션이다 만나면 통째로 종료한다

참조: 링크텍스트

상수 = 읽기만 가능 한 것
리터럴 상수가 오고
리터럴이 뭐여
상수와 리터럴 둘 다, 변화지 않는 값(데이터)를 의미한다.
리터럴은 데이터 그 자체를 의미한다
상수는 변하지않는 변수를 의미 하며
리터럴은 변수의 값이 변하지 않는 데이터를 의미한다

문장하나만 있어도 중괄호 쳐라

go to문 쓰지마 코드 에러떠

  • scanf가 들어가면 무조건 넣기
    위에다가 #define _CRT_SECURE_NO_WARNINGS.

char은 아스키코트표

alt + 방향키누르면 문장 그대로 가져옴

% 나머지

아스키코드 a 101
아스키코드 변환식
암호문처럼 사과라면 a라는 문자다

case 상수만 비교만 한다
조건은 넣을 수 있다

bit 최소단위(불켰을때 껏을 떄)

8진법 16진법 쓰는 이유는
2진법 데이터를 가독있게할 수 있어서
2진수랑 맵핑이 되면서
맵핑이 뭐여
직관적으로 쓸 수 있어서

맵핑: 소스 위치에서 대상 위치로 데이터를 복사하고, 동시에 한 데이터 형식 유형에서 다른 유형으로 데이터를 변화하하는 프로세스
어떤값을 다른 값에 대응시키는 과정

진법은 동일한 데이터를 통해서 모양이달라지는 것
존재하는 정수(+-자연수와 0)들이 그대로 읽고 쓰고할 수 있는 것

2진법으로 하지 않으면 컴퓨터언어를 알아들을 수 없다

픽셀은 비트들의 집합으로 표현된다

연산자
연산(계산)을 수행하는 기호
피연산자
연산의 대상

프로그래밍 언어의 구성요소
참고: 링크텍스트

연산자마다 그룹별로 우선순위라 결합방향이 있는데
삭울 쭉 펼쳐봤을 떄 먼저약속되어 있는게 우선순위다

연산자는 순서가 약속되어있다

제어문은 프로그램 흐름의 제어문

흐름제어문은 흐름을 어떻게 제어하는 거냐
메인함수 첫번째부터
실행하고 다음줄
실행하고 다음줄

프로그램의 흐름에 영향을 미치는게
1. 제어문
2. 함수호출
3. 예외처리문 = 정상적인 상황에서 벗어난 모든 예외적인 상황
4. 멀티 쓰레드 = 하나의 프로세스(연속적 실행 프로그램) 내에서 둘 이상의 스레드가 동시에 작업을 수행하는 것

if문 흐름제어문에는 보통 어떤 때에 쓰이나면 조건식에 쓰인다

c언어에서는 불량이 따로 없다

bool
정수중에서는 0은 false
0이 아닌 것은 true라고 쓴다

조건식의 정의
참조: 특정 조건에 따라 다른 코드 블록이 실행되게 하는데 사용
링크텍스트

if프로그램흐름에 영향을 주는 방법은
조건식의 결과가 뭐든 true false
if문에 딸려 있는 문자이 있다.
조건식을 테스트하고 true or false

profile
코딩

0개의 댓글