TIL 24/7/11

성민·2024년 7월 11일

1. 유니코드란 무엇인가?

  • 유니코드는 전 세계의 거의 모든 문자를 일관되게 표현하고 처리할 수 있도록 설계된 문자 인코딩 표준이다. 유니코드는 다양한 문자 세트를 하나의 통일된 표준으로 통합하여 서로 다른 시스템 간의 문서 교환과 호환성을 개선한다.

2. 2의 보수법이란?

  • 2의 보수법은 컴퓨터 과학에서 이진수를 이용해 정수를 표현하고, 특히 부호 있는 정수의 덧셈과 뺄셈을 쉽게 처리하기 위해 사용되는 방법이다. 2의 보수 표현을 사용하면 양수와 음수를 동일한 방식으로 연산할 수 있다.

3. 컴퓨터에서 음의정수 표현방법에 대하여 설명하시오

  • 컴퓨터에서 음의 정수를 표현하는 방법에는 여러 가지가 있지만, 대표적인 세 가지 방법은 부호와 절대값, 1의 보수, 2의 보수이다. 이 중에서 2의 보수법이 가장 널리 사용된다.

4. 실수의 표현법(고정소수법, 부동소수법)을 설명하시오

  • 고정소수법 표현법: 고정소수점 표현법에서는 소수점의 위치가 고정되어 있는 숫자 표현 방식을 사용한다. 정수 부분과 소수 부분의 비트 수가 정해져 있으며, 소수점의 위치는 미리 정의된다.

  • 부동소수점 표현법: 부동소수점 표현법에서는 소수점의 위치가 가변적이다. 숫자는 기본적으로 가수와 지수로 구성됩니다. 부동소수점 표준으로는 IEEE 754가 널리 사용된다.

5. 상수란 무엇이며 변수와의 차이는?

  • 상수는 프로그램이 실행되는 동안 변경되지 않는 값을 의미한다. 상수는 초기화된 후에는 그 값을 바꿀 수 없다. 상수를 사용하는 주요 이유는 프로그램의 가독성을 높이고, 의도치 않은 값의 변경을 방지하며, 코드의 유지 보수성을 향상시키기 위함이다.
    차이점은 상수는 값을 변경할 수 없다. 한 번 초기화되면 영원히 그 값을 유지한다. 변수는 값을 자유롭게 변경할 수 있다.

6. 초기화란 무엇인가?

  • 초기화(initialization)는 변수나 객체에 처음으로 값을 설정하는 과정을 의미한다. 프로그래밍에서 초기화는 매우 중요한 단계이며, 변수나 객체를 사용하기 전에 반드시 초기화해야 한다. 초기화되지 않은 변수나 객체를 사용하면 예기치 않은 결과가 발생하거나 프로그램이 오류를 일으킬 수 있다.

7. 아래의 출력에 올바른 값이 나오지 않는 이유는?

int a = 21000000000; //21억
int b = 21000000000;//21억
int c = a + b;
System.out.print(c)

  • int는 4byte(32bit)크기로 최대 2의31승(약 21억) 값을 저장할 수 있다.
    하지만 위의 코드에서 변수 c가 받는 값은 42억으로 최대로 저장할 수 있는 값을 넘기면서 오버플로우가 발생했다.

8. 아래를 코딩하시오

가로가 12.5
세로가 13.1

인 사각형의 넓이를 구하는 프로그램을 짜시오.

단)
변수 3개
RecatangleArea

가로:
세로:
넓이:

==========================
TriangleArea
삼각형 넓이를 구하는 프로그램 짜시오

가로가 10
세로가 10

만약 넓이가 20 보다 크면
true 가 나오록 하시오.

20보다 큽니까?
true

==============================
반지름이 10인 원의 넓이를 구하시오.

출력:
반지름 : 10 넓이 314.0
넓이가 100 미만 입니까?
False

  • 사각형넓이 구하기 코드
package java_hello4;

public class RectangleArea {

	public static void main(String[] args) {
		double width = 12.5;
		double height = 13.1;
		double Area = width * height;

		System.out.println("가로: " + width);
		System.out.println("세로: " + height);
		System.out.println("넓이: " + Area);

	}

}
  • 삼각형넓이 구하기 코드
package java_hello4;

public class TriangleArea {

	public static void main(String[] args) {
		double width = 10;
		double height = 10;
		double Area = (width * height)/2;
		
		System.out.println("20보다 큽니까?");
		System.out.println(Area>20);
		

	}

}
  • 원의넓이 구하기 코드
package java_hello4;

public class 원의넓이 {

	public static void main(String[] args) {
		double r =10;
		final double pi = 3.14;
		double Area = pi*r*r;
		
		System.out.println("반지름:" + r + " " + "넓이:" + Area);
		System.out.println("넓이가 100 미만입니까?");
		System.out.println(Area<100);
		
	}

}

9. 아래의 표기법에 대해 설명하시오

  • Camel Case: Camel Case는 프로그래밍에서 여러 단어로 이루어진 식별자를 작성할 때 사용하는 표기법 중 하나이다. Camel Case에서는 첫 단어는 소문자로 시작하고, 이후 단어의 첫 글자는 대문자로 작성한다. 이 방식은 가독성을 높이고, 식별자가 여러 단어로 이루어진 경우 이를 쉽게 구분할 수 있도록 한다.

  • Snake Case: Snake Case는 프로그래밍에서 여러 단어로 이루어진 식별자를 작성할 때 사용하는 또 다른 표기법이다. Snake Case에서는 모든 단어를 소문자로 작성하고, 단어 사이를 언더스코어(_)로 구분한다. 이 방식은 가독성을 높이고, 여러 단어로 이루어진 식별자를 쉽게 읽을 수 있도록 한다.

10. -5의 컴퓨터에서 2진수 값을 나타내시오

  • 8비트 2의 보수 표현을 사용하여 -5를 이진수로 나타내면 11111011이다.

11. 32 비트 시스템에서 최대 사용 할수 있는 메모리 양과 그이유는?

  • 32비트 시스템은 메모리에서 cpu로 연결된 선의 개수가 32개이다. 따라서 한 번에 전달할 수 있는 양은 32비트이다.
    하지만 한 번에 전달할 수 있는 양이 32비트인 것이지 메모리에 저장할 수 있는 양은 상관없다.(나눠서 보내면 되기 때문)

12. 형변환이란?

  • 자바에서 형변환이란 변수의 데이터 타입을 다른 데이터 타입으로 변환하는 과정을 의미한다. 형변환은 주로 기본 데이터 타입(primitive type)과 참조 데이터 타입 간에 이루어지며, 명시적 형변환과 암시적 형변환으로 나뉜다.
profile
공부중

0개의 댓글