1. 문제
과제를 하던 중에 변수 2개를 이용하여
50% 라고 출력을 하고 싶어서 연산을 했는데 0만 나왔다.
1
2
3
4
5
|
//50% 출력하기
int a=5;
int b=10;
Console.WriteLine(a/b*100+"%");
|
2. 해결
두 int형식 변수 중 하나를 float로 바꾼다.
1
2
3
4
5
|
//50% 출력하기
int a=5;
float b=10f;
Console.WriteLine(a/b*100+"%");;
|
5/10 의 값은 0.5가 나오는데
둘다 정수형일 경우 0.5가 0이 되어서 0만 출력된다.
Ms Docs에 따르면 정수형식과 float, double, decimal은 혼합하여 연산이 가능하다.
float, double은 정수와 연산할 경우 암시적으로 부동 소수점 형식 중 하나로 변환된다.
따라서 두 변수 중 하나만 float나 double형식으로 변환하면
소수점 형식으로 변환되어 원하는 값 50%가 나온다.
참고: 부동 소수점 숫자형식, MS Docs
'C# > Problems' 카테고리의 다른 글
6. 문자열에 특정 문자열이 포홤되는 지 확인하기( Contains( ) ) (0) | 2020.04.21 |
---|---|
5. 한 줄 출력시 ( Console.Write( ); ) 입력을 다음 줄로 넘기기, 마지막 쉼표 없애기 (0) | 2020.04.21 |
4. 숫자 앞에 0 과 공백 채우기 (0) | 2020.04.08 |
3. 입력받은 문자열을 부동소수점으로 변환하기(string to float) (0) | 2020.04.08 |
2. 소수점 자리 나타내기 (0) | 2020.04.07 |