どのように私はPerlで整数の除算を行う必要がありますか?

StackOverflow https://stackoverflow.com/questions/539797

  •  22-08-2019
  •  | 
  •  

質問

のいつものはPerlで整数除算を行うための良い方法は何ですか?

たとえば、私が欲しいます:

real / int = int

int / real = int

int / int = int
役に立ちましたか?

解決 2

あなたはPerlでint型にキャストすることができます:

int(5/1.5) = 3;

他のヒント

レキシカルスコープ integerプラグマには、その範囲内の整数演算を使用するPerlを強制的に

print 3.0/2.1 . "\n";    # => 1.42857142857143
{
  use integer;
  print 3.0/2.1 . "\n";  # => 1
}
print 3.0/2.1 . "\n";    # => 1.42857142857143

int(x+.5)は、最も近い整数に向かっての正の値を丸めます。切り上げすることは困難です。

ゼロに向かって丸めるするには:

int($x)

は、以下の解決策については、次のステートメントを含めます

use POSIX;

切り捨てするには:POSIX::floor($x)

切り上げる:POSIX::ceil($x)

ゼロから離れてのラウンドに:POSIX::floor($x) - int($x) + POSIX::ceil($x)

最も近い整数に四捨五入するには:POSIX::floor($x+.5)

int($x+.5)が負の値のためにひどく失敗することに注意してください。 int(-2.1+.5)は-1 int(-1.6)、です。

のことができます:

use integer;

それはマイケルRatanapinthaによって説明または他の手動で使用されます:

$a=3.7;
$b=2.1;

$c=int(int($a)/int($b));

の通知、 'INT' は、鋳造されていません。これは、整数形式に番号を変換するための機能です。 Perl 5のは、別の整数の除算を持っていないためです。あなたは「整数を使用する」場合は例外です。そして、あなたは本当の分裂を失うことになる。

それが動作ホープ

INT(9/4)= 2。

のおかげで Manojkumar

例: 9月4日= 2.25

INT(9)/ INT(4)= 2

9月4日 - 余り/ deniminator = 2

4分の9〜9 4%/ 4 = 2

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top