프로그래밍

    [자바] 숫자의 표현

    숫자의 표현 수학을 공부하던 민지는 재미있는 사실을 발견하였습니다. 그 사실은 바로 연속된 자연수의 합으로 어떤 숫자를 표현하는 방법이 여러 가지라는 것입니다. 예를 들어, 15를 표현하는 방법은 (1+2+3+4+5) (4+5+6) (7+8) (15) 로 총 4가지가 존재합니다. 숫자를 입력받아 연속된 수로 표현하는 방법을 반환하는 expressions 함수를 만들어 민지를 도와주세요. 예를 들어 15가 입력된다면 4를 반환해 주면 됩니다. public class Expressions { public int expressions(int num) { int answer = 0; int sum=0; for(int i=1; i

    [자바] 하노이의 탑

    [자바] 하노이의 탑

    하노이의 탑 하노이의 탑은 대표적인 퍼즐의 일종입니다. 세 개의 기둥이 있고 맨 왼쪽의 기둥에는 원판의 크기 순서대로 N개가 쌓여 있습니다. 이렇게 쌓여 있는 원판을 가장 오른쪽 기둥으로 모두 옮겨야 합니다. 단, 한 번에 원판을 하나씩 이동시킬 수 있고, 큰 원판을 작은 원판 위에 쌓을 수 없습니다. N개의 원판은 총 2N -1 번의 과정을 거쳐 이동할 수 있습니다. 하지만 어떠한 과정으로 원판을 옮겨야 2N -1 번만에 옮길 수 있는지는 아직 모릅니다. 원판이 N개 있을 때, Hanoi 함수에서 어떠한 과정으로 2N -1 번만에 옮길 수 있는지 과정을 리턴하세요. 리턴값의 표기 방법은 다음과 같습니다. 3개의 기둥은 순서대로 각각 1, 2, 3번으로 표기합니다. 원판을 기둥1에서 기둥3으로 이동했다면..

    [자바] 시저 암호

    시저암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. A를 3만큼 밀면 D가 되고 z를 1만큼 밀면 a가 됩니다. 공백은 수정하지 않습니다. 보낼 문자열 s와 얼마나 밀지 알려주는 n을 입력받아 암호문을 만드는 caesar 함수를 완성해 보세요. “a B z”,4를 입력받았다면 “e F d”를 리턴합니다. class Caesar { String caesar(String s, int n) { String result = ""; int num=0; char[] arr = new char[s.length()]; while(n>26) { n=n-26; } for(int i=0; i= 'A' && s.charAt(i) 'Z') num = (int)s..

    안드로이드 인터페이스를 이용한 버튼 처리

    일단 인터페이스 선언을 합니다. public class MainActivity extends AppCompatActivity implements View.OnClickListener 인터페이스 선언을 하면 에러가 날텐데 그리고 OnCreate() 밖에다 public void onClick(View v) { switch(v.getId()) { case R.id.btn1 : 버튼클릭시 작동내용 break; case R.id.btn2 : 버튼클릭시 작동내용 break; . . . 하시면 에러가 사라져요! 그리고 OnCreate() 안에다가 btn1.setOnClickListener(this); 쓰시면 됩니다 ㅎㅎ 이러면 장점이 버튼 일일이 리스너를 안 만들어도 되서 코드가 간결해져요~ 더 간단하게 한다면 ((..

    안드로이드 암시적 인텐트(Intent)

    인텐트란 안드로이드 4대 컴포넌트(액티비티, 서비스, 브로드캐스트 리시버, 콘텐트 프로바이더) 가 상호 간에 데이터를 주고받기 위한 메시지 객체이다. 인텐트에는 명시적 인텐트와 암시적 인텐트가 있는데 명시적 인텐트란 Intent(getApplicationContext(), SecondActivity.class); 와 같이 자신이 만든 다른 액티비티의 이름을 명확히 지정할 때 명시적 인텐트라 한다. 암시적 인텐트란 약속된 액션을 주어 안드로이드에서 제공하는 기존 응용프로그램을 실행하는 것이다. Uri uri = Uri.parse("tel:"+edt.getText().toString()); Intent it = new Intent(Intent.ACTION_DIAL, uri); startActivity(it)..

    [유니티] 뷰포리아(Vuforia) SDK를 이용한 오브젝트 트레킹 체크

    using UnityEngine;using Vuforia; public class TrackingObject : MonoBehaviour, ITrackableEventHandler { private TrackableBehaviour mTrackableBehaviour;public bool is_detected = false; // Use this for initializationvoid Start () {mTrackableBehaviour = GetComponent ();if (mTrackableBehaviour) {mTrackableBehaviour.RegisterTrackableEventHandler (this);}} public void OnTrackableStateChanged(TrackableB..