묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
if문 관련 문의
2003.10.23 21:27
입력된 수치($number)를 정수형인지 양수인지 자릿수가 8자리인지 확인하여 진실이면 최고, 거짓이면 몰라가 출력되게 해봤는데요. 자꾸 에러가 뜨네요 --;;; 조언 부탁드립니다.
<?
$number = 34141234;
if(is_int($number) and ($number > 0) and (strlen($number) == 8)) {
echo("최고");
}
else {
echo("몰라");
}
?>
<?
$number = 34141234;
if(is_int($number) and ($number > 0) and (strlen($number) == 8)) {
echo("최고");
}
else {
echo("몰라");
}
?>
댓글 8
-
TheMics
2003.10.23 23:18
제가 답변드린 거군요;;에러 전혀 없습니다만; -
불량새꼼
2003.10.23 23:26
흠.. 제가 작성한 것중 일부인데요.. 위에서 보면.. is_int($number)을 빼면 정상적으로 작동하는데 그거만 넣으면.. 오작동합니다. -
&zeo
2003.10.24 00:51
8자리 양수라면 숫자가 10,000,000 이상이어야하죠?
또한 100,000,000 미만이어야합니다.
소수점은 길이가 8자리가 아니라면 소수점이 있다는 뜻이 되구요. -
&zeo
2003.10.24 00:49
에러 없는데요 ;;
정 바꾸고 싶으시다면
if문을
if($number >= 10000000 & $number < 100000000 & strlen($number) == 8)
위에처럼 바꿔보세요. -
행복한고니
2003.10.24 00:54
& : 비트연산자입니다.
&& : 이게 조건연산자 and 입니다. 쩝... -_-;; -
&zeo
2003.10.24 00:58
풉풉풉 -_-a 요즘 너무 많은 언어를 다루다보니 ;;
근데 저렇게 해도 제대로 작동되는데요 -_-a 왜 그럴까~요? -
행복한고니
2003.10.24 01:07
비트연산자를 잘 모르시나보네요. 음... ㅡ.ㅡ;;
& 0 = 0
1 & 0 = 0
1 & 1 = 1
이게 기본입니다. true, false일 경우에는 AND와 같죠. 하지만...
4 & 0 = 0, 4 & 1 = 0, 4 & 2 = 0 등과 같은 결과가 나오게 됩니다.(이진수로 생각해보시길)
연산자는 정확하게 쓰는게 좋습니다.
그런데, 어느 언어에서 &를 and로 쓰나요?
그런 언어가 거의 없을텐데? 만약 있다면 비트연산자가 없는 언어일 것 같은데 어떤 언어인가요? -
TheMics
2003.10.24 08:27
에;버전이 낮아서 is_int가 작동이 안되는 문제랍니다'ㅡ')>