20dbは何倍か?Perlソースコード
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[ハム関連]]
#!/usr/bin/perl
#デシベル計算
my $argv=$ARGV[0];
if($argv){
my $db = &calc_db($argv);
print " $argv db = $db 倍です\n";
exit;
}else{
print "\n Usage:Calc-DB db-num\n";
print " Calc-DB 13\n";
exit;
}
sub calc_db{
my $db=$_[0];
return(&round(10**($db/10),3));
}
sub calc_log{
my $log=$_[0];
my $r=&round(log(10),1);
return (10*(log($log)/$r));
}
sub round {
my $val = shift; # 四捨五入する数
my $col = shift; # 小数点以下のどこまで残すか
my $r = 10 ** $col;
my $a = ($val > 0) ? 0.5 : -0.5;
return int($val * $r + $a) / $r;
}
***これをAutomater [#g829cdae]
Macには自動化ソフト が付いている。こんな風にコーディング...
&ref(./calc.png,50%);
終了行:
[[ハム関連]]
#!/usr/bin/perl
#デシベル計算
my $argv=$ARGV[0];
if($argv){
my $db = &calc_db($argv);
print " $argv db = $db 倍です\n";
exit;
}else{
print "\n Usage:Calc-DB db-num\n";
print " Calc-DB 13\n";
exit;
}
sub calc_db{
my $db=$_[0];
return(&round(10**($db/10),3));
}
sub calc_log{
my $log=$_[0];
my $r=&round(log(10),1);
return (10*(log($log)/$r));
}
sub round {
my $val = shift; # 四捨五入する数
my $col = shift; # 小数点以下のどこまで残すか
my $r = 10 ** $col;
my $a = ($val > 0) ? 0.5 : -0.5;
return int($val * $r + $a) / $r;
}
***これをAutomater [#g829cdae]
Macには自動化ソフト が付いている。こんな風にコーディング...
&ref(./calc.png,50%);
ページ名: