2017-11-01 8 views
0

Java에서 변수의 변경 비율 (증가 또는 감소)을 얻으려고합니다.Java에서 변수의 증가율을 확인하는 방법은 무엇입니까?

예를 들어 중력과 마우스 버튼을 누르고있는 시간에 따라 객체의 속도를 변경하는 처리 프로그램이 있습니다.

지난 5 초 동안 속도 변수의 변화율을 얻고 싶습니다. 그런 다음 감소가 너무 느린 지 확인하십시오.

너무 낮 으면 더 빨리 떨어지기 위해 중력이 증가해야합니다. 그렇지 않으면 중력이 증가하여 속도가 감소해야합니다.

개체의 위치를 ​​어떻게 확인할 수 있습니까?

+0

좋은 숙제! – mrid

+0

궁금한 점이 있으시면 분화 (미적분의 주제)라고합니다. – byxor

답변

2

스택 오버플로는 일반적으로 "일반 텍스트 형식"을 위해 설계되지 않았습니다. 구체적으로 "나는 X를 시도했는데 예상 Y이지만 Z를 대신 입력"했습니다. 그러나 나는 일반적인 의미로 돕기 위해 노력할 것입니다.

마법의 기본 솔루션이 없습니다.

컴퓨터없이 종이와 연필로 어떻게 할 수 있습니까? 변수의 변경 비율을 알아낼 수있는 영어로 지침을 작성하십시오.

한 가지 해결책은 마지막 X 값을 배열 또는 ArrayList에 추가 한 다음이를 사용하여 변경되는 양을 계산하는 것입니다. 또는 X 프레임 전의 값을 저장 한 다음 현재 값과 비교합니다.

요점은이 작업을 수행하는 한 가지 방법이 없다는 것입니다.

0

java.awt.event.MouseEvent는 마우스를 눌렀을 때와 마우스를 놓은 경우 모두 트리거됩니다. MouseEvent는 InputEvent를 확장하므로 getWhen() 메서드는 밀리 초 단위로 시스템 시간을 제공하므로 MouseEvent는 마우스 위치를 가져 오는 메서드를 제공합니다. 따라서 마우스가 눌려진 시간과 마우스가 놓은 시간을 기억하는 마우스 수신기를 등록하십시오. 그러면 마우스를 얼마나 길게 눌렀는지 알 수 있습니다. 마우스 청취자가 카운트를 시작하고 중지하는지, 카운트 속도가 중력 변수에 의존하는지, 경과 시간 동안 얼마나 많은 카운트가 발생했는지 쉽게 알 수 있습니다.

+0

[tag : processing] 태그에 주목하십시오. 질문은 순수 Java 또는 스윙이 아닙니다. 처리에는 자체 입력 기능이 있으며 AWT 또는 스윙 항목은 사용하지 않아야합니다. –

+0

@KevinWorkman 당신 말이 맞지만 자바 태그, 마우스 버튼에 대한 참조 및 포인터 위치에 대한 참조가 나에게 윈도우 도구 키트를 상기시켜줍니다. 내가 자바에서 아는 유일한 것은 AWT이며 그러므로 스윙이다. 다른 구현은 바퀴를 다시 발명하는 것과 같습니다. – ugo

+0

처리 방법에 대해 이해 해주십시오. 처리는 뒤에서 Swing과 AWT를 사용합니다. 그러나 Processing 위에 Swing과 AWT를 사용하면 안됩니다. –