목록도서관 책 종류 (104)
컴퓨터공학 💻 도서관📚
브론즈 3 랭크의 1247번을 우연히 풀게 되었다.그런데 아주 흥미로운 지식들을 수집할 수 있었다.문제를 풀고 별거 아니네 하고 채점 버튼을 누른 순간아주 불길한 "채점중" 문구가 사라지지 않았고 역시나 시간초과가 떴다.시간제한이 2초이고 입력값의 최댓값도 100,000까지여서 "왜 시간초과가 뜨지???" 라고 생각했다.순간 당황한 나는 바로 구글 형님들에게 달려가 도움을 요청했다.검색 결과...sys.stdin.readline()을 이용하여 입력을 받으라고 했다.input 함수가 sys.stdin.readline()보다 느려서 시간초과가 떴던 것이었다.이건 또 뭔 소린가??? input함수가 느리다고?몇몇 구글 형님들이 왜 input함수가 더 느린지에 대한 자세한 설명은 생략하시기에조금 더 검색을..
생성자를 만들 때 매개변수가 있으면 편할 때가 있다. 이 때 클래스의 멤버변수와 생성자의 매개변수가 서로 이름이 같을 때도 있고 다를 때도 있다. 그럼 각각의 경우는 무엇이 다를까? 를 정확히 짚고 넘어가려 한다. 먼저 다를 때 1. 멤버변수와 매개변수의 변수명이 다를 때 public class Student { int studentID; String studentName; Subject korea; Subject math; public Student(int id, String name) { studentID = id; //멤버변수와 매개변수의 변수명이 다를 때 studentName = name; //멤버변수와 매개변수의 변수명이 다를 때 korea = new Subject(); math = new Su..
C언어 복습이 조금 필요하다는 것을 염두에 두고 있었는데 오늘 C언어를 포인터부터 복습하기 시작했다. 문제 : 포인터 px, py, pz에 있는 주소들을 pz, px, py 처럼 오른쪽으로 이동시킨 후 출력하라. 이 문제를 오랜만에 풀어보았는데 그동안 복습을 게을리 한 것이 바로 들어났다. 그 쉬운 "tmp 임시변수를 이용한 값 교환"을 까먹고 버벅였다. tmp = px; px = pz; pz = py; py = tmp; 이를 그림으로 단순화하면 이렇다. 코딩하다 만난 오류는 하나였다.(다행히... 💣😝 ) 경고C4700 C 및 C++에서는 기본적으로 지역 변수가 초기화되지 않습니다. 초기화되지 않은 변수는 모든 값을 포함할 수 있으며, 변수를 사용하면 정의되지 않은 동작이 발생합니다. 경고 C4700은..
주의!!! 이 글은 오류투성이이다. 내일의 내가 수정할 수도 있는 글이다. 객체를 구성하는 대표 3요소 (예시는 자바 기준) - 멤버벼수 (ex. int studentScore; ) 보통 2개 - 생성자 (ex. public Student(String studentName){ } ) 보통 2개 - 메서드 (ex. public void addSubject(String name, int score){ } ) 보통 3개
Employee.java (Employee 클래스) package ch16; public class Employee { public static int serialNum = 1000; //static 변수 //Employee 객체의 멤버변수(특성) private int employeeId; //직원 번호 private String employeeName;//직원 이름 private String department;//직원 근무지 public Employee() //생성자 선언 { serialNum++; //회사원이 입사할 때마다 새로운 사번 부여하기 employeeId = serialNum; //static 변수는 공공재이므로 회사원마다 다른 사번을 부여하기 위해 } //인스턴스 변수를 생성할 때 그때의..
더보기 조건문 : 조건에 따라 실행되는 코드가 달라지게 할 때 사용하는 제어문 조건문의 종류 : if문, switch문 if 문 : 소괄호 안에 있는 조건식이 참이면 중괄호로 둘러 쌓여 있는 실행문이 실행되는 조건문 실행문이 한 개일 때는 중괄호를 생략할 수 있다. 실행문들은 모두 가독성을 위해 들여쓰기를 한다 if (조건식) {실행문; 실행문; } if - else 문 : if 문의 조건식이 참이면 if 문의 실행문을 , 거짓이면 else 문의 실행문이 실행되는 조건문 if (조건식) {실행문; 실행문; } else {실행문; 실행문; } if - else if - else 문 : if 문의 조건식이 참이면 if 문의 실행하고 , 거짓일 때는 else if 문의 조건식이 참인지 확인하고 어느 조 건에도..
관계연산자 : 대소관계를 비교하는 연산자 연산의 결과가 참이면 1이고 거짓이면 0 == : 같다 != : 같지 않다 , = : 부등호 논리 연산자 : 논리 연산 값이 참이면 1이고 거짓이면 0 ! : 논리 부정(NOT) ex) !x : x가 참이면 거짓, 거짓이면 참 && : 논리곱(AND) ex) x&&y : x, y가 둘 다 참이면 참, 그렇지 않으면 거짓 || : 논리합(OR) ex) x||y : x,y 중 하나라도 참이면 참, 그렇지 않으면 거짓 조건 연산자 : 조건문을 대신하여 사용할 수 있는 연산자 (피연산자 수가 3개인 삼항 연산자) 조건 ? A : B : 조건이 참인 경우, 결과 값은 A 조건이 거짓인 경우, 결과 값은 B ex) z = x > y ? 3 : 2 그 외 연산자 콤..
산술 연산자 : + , - , * , / , % C언어에는 제곱 연산자가 없다. 함수나 반복문을 사용해야 한다. 산술 연산과 자료형 정수형과 정수형 --> 정수형 부동소수형과 부동소수형 --> 부동소수형 정수형과 부동소수형 --> 부동소수형( 정보 손실 방지 ) 대입연산자 : ' = ' ex) a = 2; (O) b + 2 = c; (X) //오른쪽부터 수행함에 주의 복합대입연산자 : += , -= , *= , /= , %= ex) a += 2 // a = a + 2 와 같은 표현이다 증감 연산자 : 변수의 값을 1씩 증가(++) 혹은 감소(--)시키는 단항 연산자 변수의 앞에 오느냐 뒤에 오느냐에 따라 수식의 해석이 달라진다. ex) ++a , --a , a++ , a-- ++a; // a의 값 1증가..