• 締切済み

整数の表現について

もし、数字が整数だった場合はこのA処理を もし、数字が小数点を含む数字だった場合はB処理をというようなIF文を作りたいのですが”整数” ”小数点” をどのように表現するのか解りません。 どうか教えて頂けないでしょうか。 又、違う表現等があった場合もあるのでしょうかお願します。

みんなの回答

  • kawa-sin
  • ベストアンサー率0% (0/0)
回答No.4

if ( $data =~ /\.+/ ){ B処理 print "少数\n"; }else{ A処理 print "不少数\n"; } でどうですか?

noname#25358
noname#25358
回答No.3

 えーと、1つ確認していただきたいんですが、たとえば「4.0」は整数でしょうか?  もしそうであれば、 if (int($number) == $number) {} else {}  俺の経験上、これが一番確実です。

  • heather
  • ベストアンサー率0% (0/5)
回答No.2

$ perldoc -q integerで探したらありました。 以下抜粋。 How do I determine whether a scalar is a number/whole/integer/float? Assuming that you don't care about IEEE notations like "NaN" or "Infinity", you probably just want to use a regular expression. if (/\D/) { print "has nondigits\n" } if (/^\d+$/) { print "is a whole number\n" } if (/^-?\d+$/) { print "is an integer\n" } if (/^[+-]?\d+$/) { print "is a +/- integer\n" } if (/^-?\d+\.?\d*$/) { print "is a real number\n" } if (/^-?(?:\d+(?:\.\d*)?|\.\d+)$/) { print "is a decimal number" } if (/^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/) { print "a C float" } 抜粋終

  • yuizuian
  • ベストアンサー率42% (103/245)
回答No.1

if ($A =~ /\./) {…} else {…} という感じで、「小数点があるか」で判定してはどうでしょう?

関連するQ&A

専門家に質問してみよう