4.6.1 두 점 사이의 거리
먼저 평면의 두 점 (x1, y1)과 (x2, y2) 사이의 거리
distance를 구하는 방법을 알아봅니다.
4.6.2 GetDistance() 메서드 만들기
먼저 코드를 완성한 다음에 분석을 하겠습니다.
HelloCode 스크립트의 Start()메서드에서 이전까지의 내용을 지우고,
다음과 같이 두 점 사이의 거리를 계산하는 코드를 작성합니다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class HelloCode : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
float distance = GetDistance(2, 2, 5, 6);
Debug.Log("(2,2)에서 (5,6) 까지의 거리 : " + distance);
float GetDistance(float x1, float y1, float x2, float y2)
{
float width = x2 - x1;
float height = y2 - y1;
float distance = width * width + height * height;
distance = Mathf.Sqrt(distance);
return distance;
}
}
// Update is called once per frame
void Update()
{
}
}
4.6.3 GetDistance() 메서드 만드는 과정
생략
4.6.4 스코프
프로그램 작성 시 다음과 같이
같은 이름의 변수를 두 개 이상 선언하면
에러가 발생합니다.
나중에 distance를 사용할 때
두 distance 중 어떤 것을 사용하려는 건지
컴퓨터가 알 수 없기 때문입니다.
하지만 앞선 HelloCode 스크립트 코드에서는
다음과 같이 Start () 메서드와 GetDistance() 메서드에
같은 이름의 변수 distance를 중복 선언했지만
에러가 나지 않았습니다.
변수 distance가 서로 다른 중괄호 안에 선언되어 있기 때문입니다.
코드에서 중괄호{}는 밖 에서 내부가 보이지 않게 감추는 껍데기입니다.
그러므로 메서드의 중괄호 밖에서는 메서드 내 부의 구현이 보이지 않습니다.
메서드 내부에서 선언한 변수는 해당 메서드 내부에서만 유효합 니다.
이러한 유효 범위를 스코프라고 합니다.
스코프는 선언된 변수나 메서드 등이 관측되는 유효 범위입니다.
'잡동사니 > [2022] 회로이론' 카테고리의 다른 글
[4.8] 배열 (0) | 2022.12.22 |
---|---|
[4.7] 제어문 (0) | 2022.12.22 |
[4.5] 변수 연습하기 (0) | 2022.12.22 |
[4.4] 코딩 기본 규칙 (0) | 2022.12.22 |
[4.3] 첫 스크립트 작성하기 (0) | 2022.12.22 |