강의자료

시험 형식 예시

질문·참고자료·답안 작성 방식을 보여주는 공통 예시이며, 예상문제가 아닙니다. 실제 출제 범위와 제공 자료는 각 과목의 시험 안내를 따릅니다.

문제풀이

예시 1

제공 참고자료

물의 양을 V(t)V(t) [L], 분당 유입량·유출량을 qin,qoutq_{\mathrm{in}},q_{\mathrm{out}} [L/min]이라 하면 dVdt=qin−qout\frac{dV}{dt}=q_{\mathrm{in}}-q_{\mathrm{out}}입니다.

문제

물 4 L가 든 물통에 매분 3 L가 들어오고 1 L가 빠져나갑니다. 2분 동안 이 유입·유출량은 일정하며 물이 넘치지 않습니다. 시작 시각을 t=0으로 둡니다.

  1. V(t)V(t)의 식을 구하고, 2분 후 물의 양을 계산하세요. 초기값을 적용한 과정과 단위를 함께 쓰세요.
답안 작성 예시
  1. dVdt=3−1=2L/min\frac{dV}{dt}=3-1=2\,\mathrm{L/min}이므로 V(t)=2t+CV(t)=2t+C입니다. V(0)=4V(0)=4에서 C=4C=4이므로 V(t)=4+2tV(t)=4+2t [L]입니다. 따라서 V(2)=4+2×2=8LV(2)=4+2\times2=8\,\mathrm L입니다.

예시 2

제공 참고자료

Accuracy=올바르게 판정한 기록 수전체 기록 수\mathrm{Accuracy}=\frac{\text{올바르게 판정한 기록 수}}{\text{전체 기록 수}}입니다.

문제

장비 측정 기록 20개 중 실제 고장은 4개, 정상은 16개입니다. 두 모델의 판정 결과는 다음과 같습니다. 각 숫자는 해당하는 기록의 개수입니다.

실제 상태모델의 판정AB
고장고장03
고장정상41
정상고장05
정상정상1611
  1. 두 모델의 Accuracy를 계산 과정과 함께 쓰세요.
  2. 고장을 정상으로 판정해 놓치면 건당 10, 정상을 고장으로 판정해 잘못 경보하면 건당 1의 비용이 듭니다. 두 모델의 총 오류 비용을 계산하고, 비용이 작은 모델과 선택 이유를 쓰세요.
답안 작성 예시
  1. A는 0+1620=0.8\frac{0+16}{20}=0.8, B는 3+1120=0.7\frac{3+11}{20}=0.7입니다.
  2. A의 비용은 4×10+0×1=404\times10+0\times1=40, B는 1×10+5×1=151\times10+5\times1=15입니다. 비용 기준으로 B를 고릅니다. B는 잘못된 경보가 더 많지만, 비용이 큰 고장 누락을 줄입니다.

예시 3

제공 참고자료

두 시점 사이의 평균변화율은 측정값의 변화량시간 간격\frac{\text{측정값의 변화량}}{\text{시간 간격}}입니다.

문제

시간에 따른 전압 측정값이 다음과 같습니다. 측정 시점 사이의 값은 두 점을 직선으로 연결해 나타냅니다.

시간 [s]전압 [V]
00
12
22
32
  1. 가로축을 시간 [s], 세로축을 전압 [V]으로 하여 네 측정점을 연결한 그래프를 그리세요. 축 이름·단위와 측정점을 표시하세요.
  2. 0초부터 1초까지 전압의 평균변화율을 계산하고 단위를 쓰세요.
답안 작성 예시
  1. 0초의 0 V에서 1초의 2 V까지 직선으로 올라간 뒤, 3초까지 2 V로 일정합니다.
  2. 2−01−0=2V/s\frac{2-0}{1-0}=2\,\mathrm{V/s}입니다.
시간에 따른 전압 측정값0123012Time [s]Voltage [V]

MATLAB

예시 1

제공 참고자료

mean(v): v가 행벡터이면 원소 전체의 산술평균을 스칼라로 반환합니다.

문제

아래 MATLAB 코드에서 x의 첫 번째와 세 번째 원소를 골라 평균을 구합니다.

x = [2 4 6];
picked = x([1 3]);
a = mean(picked);
  1. picked와 a의 값·배열 크기를 각각 쓰세요. 배열 크기는 행×열로 표시하세요.
답안 작성 예시
  1. picked=[2 6], 크기 1×2입니다. a=2+62=4a=\frac{2+6}{2}=4, 크기 1×1입니다.

예시 2

제공 참고자료

numel(v): 배열 v에 들어 있는 원소의 개수를 반환합니다.

문제

아래 MATLAB 코드는 x에서 양수인 값만 더합니다.

x = [1 -1 2];
total = 0;
for k = 1:numel(x)
    if x(k) > 0
        total = total + ____;
    end
end
  1. 양수인 값만 더하도록 빈칸을 채우세요.
  2. 각 반복이 끝난 직후의 total을 k별로 표에 정리하세요.
답안 작성 예시
  1. 빈칸은 x(k)입니다.
  2. k=2에서는 x(2)=-1이므로 if 내부를 실행하지 않고 total이 1로 남습니다.
    kx(k)total
    111
    2-11
    323

예시 3

제공 참고자료

a:b: a부터 b까지 1씩 증가하는 행벡터를 만듭니다.

plot(x,y): x와 y의 같은 위치에 있는 값을 좌표로 삼고, 그 점들을 순서대로 직선으로 연결합니다.

문제

아래 MATLAB 코드에서 t는 시간 [s], y는 전압 [V]을 나타냅니다.

t = 0:2;
y = 2*t;
plot(t,y);
  1. t와 y의 값을 쓰고, plot이 그리는 그래프를 개략적으로 그리세요. 축 이름·단위와 세 점을 표시하세요.
답안 작성 예시
  1. t=[0 1 2], y=[0 2 4]입니다. 세 점을 연결하면 원점을 지나는 직선이 됩니다.
MATLAB plot의 출력01201234Time [s]Voltage [V]

Python

예시 1

제공 참고자료

NumPy 배열에 스칼라를 곱하거나 더하면 각 원소에 적용됩니다.

v[mask]: 같은 길이의 Boolean 배열 mask에서 True인 위치의 v 원소만 순서대로 고릅니다.

문제

아래 Python 코드는 배열 x에서 2 이상인 값에 대응하는 y의 원소를 고릅니다. np는 NumPy입니다.

x = np.array([1, 2, 3])
y = 2*x + 1
mask = x >= 2
selected = y[mask]
  1. y, mask, selected의 값을 실행 순서대로 쓰세요. x=2인 위치가 선택되는 이유도 설명하세요.
답안 작성 예시
  1. y=[3,5,7], mask=[False,True,True], selected=[5,7]입니다. >=는 경계값 2를 포함하므로 두 번째 위치도 선택됩니다.

예시 2

제공 참고자료

d.get(key,default): Dictionary d에 key가 있으면 저장된 값을 반환하고, 없으면 default를 반환합니다. Dictionary 자체를 바꾸지는 않습니다.

문제

아래 Python 코드는 목록에 각 문자가 몇 번 나오는지 셉니다.

counts = {}
for name in ["A", "B", "A"]:
    counts[name] = counts.get(name, 0) + ____
  1. 문자를 한 번 읽을 때 횟수가 1씩 늘어나도록 빈칸을 채우세요. 반복이 끝난 뒤 counts의 값을 쓰세요.
답안 작성 예시
  1. 빈칸은 1입니다. 첫 A에서 {"A":1}, B에서 {"A":1,"B":1}, 마지막 A에서 {"A":2,"B":1}이 됩니다. 최종값은 {"A":2,"B":1}이며 Key의 나열 순서는 달라도 됩니다.

예시 3

제공 참고자료

sum(v)는 원소의 합, len(v)는 원소 수를 반환합니다. 빈 목록 []의 합과 원소 수는 모두 0입니다.

문제

아래 Python 함수는 입력 목록의 평균을 반환합니다.

def average(values):
    return sum(values) / len(values)

result = average([2, 4])
  1. result의 값과 계산 과정을 쓰세요.
  2. average([])는 왜 평균을 반환하지 못하는지, 수행하려는 계산식과 함께 설명하세요.
답안 작성 예시
  1. result=3.0입니다. 입력 목록의 합 6을 원소 수 2로 나누므로 2+42=3\frac{2+4}{2}=3입니다.
  2. 빈 목록에서는 00\frac{0}{0}을 계산하려 하므로 0으로 나누는 오류가 발생합니다. 평균값 0을 반환하는 것은 아닙니다.

예시 4

제공 참고자료

x.mean(dim=k): 선택한 축을 평균으로 줄이고 결과에서 제거합니다. dim=0이면 같은 열의 원소들을 평균 내어 열마다 값 하나를, dim=1이면 같은 행의 원소들을 평균 내어 행마다 값 하나를 남깁니다.

문제

두 시점에 센서 두 개가 측정한 온도 [°C]입니다. x의 각 행은 한 시점, 각 열은 한 센서를 나타냅니다. torch는 PyTorch입니다.

x = torch.tensor([[1., 3.],
                  [5., 7.]])
m = x.mean(dim=0)
  1. m의 값과 shape를 쓰세요. m의 각 원소가 어느 센서의 어떤 측정값들을 평균 낸 것인지 설명하세요.
답안 작성 예시
  1. m=[3.,5.], shape (2,)입니다. 첫 원소는 센서 1의 두 시점 값 1+52=3\frac{1+5}{2}=3, 둘째는 센서 2의 3+72=5\frac{3+7}{2}=5입니다. 시점 축을 줄였으므로 센서별 평균 두 개가 남습니다.