programing

음수를 양수로 만드는 방법

bestcode 2022. 9. 30. 11:13
반응형

음수를 양수로 만드는 방법

음의 부동 소수점 숫자가 다음과 같습니다.

a = -0.340515;

이를 양수로 변환하기 위해 다음과 같이 abs() 메서드를 사용했습니다.

a = abs(a);

결과는a = 0.000000;

하지만 그 결과는0.340515.

이거 어떻게 하는지 누가 좀 알려줄래?

abs()정수 전용입니다.부동 소수점일 경우 사용fabs()(또는 다음 중 하나)fabs()a가 실제로 무엇이든지 정확한 정밀도에 맞춰야 합니다.)

다음을 사용해야 합니다.

int의 abs()
더블의 경우 fabs()
플로트용 fabsf()

위의 기능도 사용할 수 있지만, 이와 같은 기능을 사용해 볼 수도 있습니다.

    if(a<0)
    {
         a=-a;
    }

수학에서 음수를 양수로 변환하려면 음수에 -1을 곱하면 됩니다.

솔루션은 다음과 같습니다.

a = a * -1;

이하:

a *= -1;

사용하다float fabsf (float n)위해서float가치.

사용하다double fabs (double n)위해서double가치.

사용하다long double fabsl(long double)위해서long double가치.

사용하다abs(int)위해서int가치.

a *= (-1);

문제는 해결됐습니다.문제에 대한 작은 해결책이 있다면, 왜 복잡한 해결책을 찾으십니까?기본 논리를 사용하도록 지시해 주십시오. 그래야 프로그래밍 논리를 훈련시킬 수 있기 때문입니다.

다음 명령을 사용할 수 있는데 이상한 하드 명령을 사용하는 이유는 무엇입니까?

if(a < 0)
    a -= 2a;

if 문장은 숫자가 양수인지 음수인지 확실하지 않은 경우에만 적용됩니다.

그렇지 않으면 다음 코드를 사용해야 합니다.

a = abs(a) // a is an integer
a = fabs(a) // a is declared as a double
a = fabsf(a) // a is declared as a float (C++ 11 is able to use fabs(a) for floats instead of fabs)

C++ 11을 활성화하려면(코드를 사용하는 경우:블록, 다음 작업을 수행해야 합니다.

  1. 코드 열기:블록(권장 버전: 13.12)
  2. [설정] > [컴파일러]
  3. 사용하는 컴파일러가 GNU GCC 컴파일러인지 확인합니다.
  4. [ Compiler Settings ](컴파일러 설정)을 클릭하여 탭 내에서 [Compiler Flags](컴파일러 플래그)
  5. 아래쪽으로 스크롤하여 다음 항목을 찾습니다.G++가 C++ 11 ISO C++ 언어 표준 [-std=c++11]을 따르도록 합니다.그것을 확인하고 OK 버튼을 누릅니다.
  6. 재기동 코드:블록만 가면 갈 수 있어!

이 절차를 따르면 C99 이하에서만 사용되던 fabsf(a) 대신 fabsf(a)를 플로트에 사용할 수 있게 됩니다.(C++98에서도 fabsf:P 대신 fabsf:P를 사용할 수 있습니다.)

floor a;
floor b;
a = -0.340515;

그럼 어떻게 해야 하죠?

b = 65565 +a;
a = 65565 -b;

또는

if(a < 0){
a = 65565-(65565+a);}

내가 생각할 수 있는 유일한 방법이야

//positive to minus
int a = 5; // starting with 5 to become -5
int b = int a * 2; // b = 10
int c = a - b; // c = - 5;
std::cout << c << endl;
//outputs - 5


 //minus to positive
int a = -5; starting with -5 to become 5
int b = a * 2; 
// b = -10
int c = a + b 
// c = 5
std::cout << c << endl;
//outputs 5

기능 예시

int b = 0;
int c = 0;


int positiveToNegative (int a) {
    int b = a * 2;
    int c = a - b;
    return c;
}

int negativeToPositive (int a) { 
    int b = a * 2;
    int c = a + b;
    return c; 
}

언급URL : https://stackoverflow.com/questions/4745617/how-to-make-negative-numbers-into-positive

반응형