2017-04-06 2 views
1

변수가 (< 0 또는 0>) 있습니다. 값 (1)이> 0 일 때 그 값은 다른 값 (2)에 더 해져야합니다. 그러나 값 (2)은 값이 0 일 때 값 (1)을 뺍니다. 물론 값 . 내 코드는 다음과 같습니다.값이 음수 일 때 빼기, 값이 양수 일 때 더하기

positionRandomButton = CGPoint(x: CGFloat(randomXValue) + card.position.x, y: CGFloat(randomYValue) + card.position.y) 

여기서 randomXValue 및 randomYValue는 그 값일 수 있습니다 (1). 이제는 항상 괄시 할만한 가치가 있습니다. (1)은 < 일 수 있습니다.이 경우 네 가지를 만들면 해결할 수 있지만 더 나은 방법이 있어야한다고 생각합니다. 코드에서 볼 수있는 +가 그에 따라 변경되어야합니다. 그렇지 않으면 다른 것이 발생해야합니다. 감사.

+0

귀하의 질문이 명확하지 않다. 변수 1이 양수이고 음수 인 경우 입력을 표시하는 값 표와 두 경우의 출력을 표시하는 값 표를 추가하십시오. – vacawama

답변

1

음수를 뺀 것은 양수를 더하는 것과 같습니다. 그래서 절대 값을 더하면됩니다.

positionRandomButton = CGPoint(x: CGFloat(abs(randomXValue)) + card.position.x, y: CGFloat(abs(randomYValue)) + card.position.y) 
+0

이렇게하면 card.position.x와 y는 항상 증가합니다. randomXValue와 YValue는 음수 일 수 있습니다. 그런 식으로, card.position.x 및/또는 y는 주어진 (음의) X 또는 YValue에 의해 변형 될 필요가 있습니다. X 또는 Y의 음수 값을 뺄 때 양의 값으로 변환해야합니다. –

+1

@ J.Doe 귀하의 의견이 무엇을 의미하는지 모르겠습니다. 내 대답은 당신이 필요로하는 것이거나 아닙니다. – rmaddy

0

당신은 단지 음의 값을 추가 할 수 있습니다

var name1 = 10 
var name2 = -2 
var name3 = name1 + name2 // 10 + (-2) = 8 
관련 문제