Saturday, February 10, 2007
Perl/펄] 배열 합계, 산술 평균 구하기; Array Sum, Average (Mean)
펄에서 숫자로 된 배열의 합계와 평균을 구하는 함수입니다.
sum() 과 average() 라는 함수가 다른 모듈 속의 같은 이름의 함수와 충돌하지 않게끔, 함수명 뒤에 밑줄(_; 언더스코어)을 넣어 주었습니다. 적당한 다른 이름으로 변경하여 사용해도 됩니다.
파일명: example.pl
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
펄의 기본 모듈인 List::Util 을 사용하여, 다음과 같이 합계를 구할 수도 있습니다. 그렇지만 평균을 구하는 함수는 내장되어 있지 않더군요.
▶▶ Perl/펄] 표준 편차 구하기/계산 함수; Standard Deviation Function
sum() 과 average() 라는 함수가 다른 모듈 속의 같은 이름의 함수와 충돌하지 않게끔, 함수명 뒤에 밑줄(_; 언더스코어)을 넣어 주었습니다. 적당한 다른 이름으로 변경하여 사용해도 됩니다.
펄에서, 합계와 평균 계산 함수 사용 예제 소스
파일명: example.pl
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
#!/usr/bin/perl
use strict; use warnings;
# 숫자 배열 정의
my @a = qw( 22 5 46 6 0 1 55 );
print sum_(@a), "\n"; # 합계 구하기
# 출력 결과: 135
print average_(@a), "\n"; # 평균 구하기
# 출력 결과: 19.2857142857143
# 합계 구하기 함수
sub sum_ {
my $result = 0.0;
for (my $i = 0; $i <= $#_; $i++) {
$result += $_[$i];
}
return $result;
}
# 평균 구하기 함수
sub average_ {
return "NaN" if ($#_ < 0); # 빈 배열일 경우의 에러 처리
my $result = 0.0;
for (my $i = 0; $i <= $#_; $i++) {
$result += $_[$i];
}
return $result / ($#_ + 1);
}
use strict; use warnings;
# 숫자 배열 정의
my @a = qw( 22 5 46 6 0 1 55 );
print sum_(@a), "\n"; # 합계 구하기
# 출력 결과: 135
print average_(@a), "\n"; # 평균 구하기
# 출력 결과: 19.2857142857143
# 합계 구하기 함수
sub sum_ {
my $result = 0.0;
for (my $i = 0; $i <= $#_; $i++) {
$result += $_[$i];
}
return $result;
}
# 평균 구하기 함수
sub average_ {
return "NaN" if ($#_ < 0); # 빈 배열일 경우의 에러 처리
my $result = 0.0;
for (my $i = 0; $i <= $#_; $i++) {
$result += $_[$i];
}
return $result / ($#_ + 1);
}
펄의 기본 모듈인 List::Util 을 사용하여, 다음과 같이 합계를 구할 수도 있습니다. 그렇지만 평균을 구하는 함수는 내장되어 있지 않더군요.
#!/usr/bin/perl
use strict; use warnings;
use List::Util qw( sum );
# 숫자 배열 정의
my @a = qw( 22 5 46 6 0 1 55 );
print sum @a;
use strict; use warnings;
use List::Util qw( sum );
# 숫자 배열 정의
my @a = qw( 22 5 46 6 0 1 55 );
print sum @a;
▶▶ Perl/펄] 표준 편차 구하기/계산 함수; Standard Deviation Function
tag: perl
Perl | 펄
<< Home