mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Sunday, April 20, 2008

Perl 펄] 2차원 배열 화면 출력 예제 소스 코드; 2D, 2Dimensional Array Print


펄에서 엑셀 시트와 같은 2차원 배열을 정의한 후에, 그 배열을 가나다 ABC순으로 소팅하고, 화면에 출력하는 예제입니다. 이차원 배열을 하나의 "표"처럼 출력하는 것입니다.

이차원 배열 정의한 후, 소트하고, 표 출력하기
예제 소스 파일명: example.pl
#!/usr/bin/perl
use strict; use warnings;

# 허접한 2차원 배열 정의
my @main_data = (

[   "ZZZ",   533,  "증권주",     "",        "" ],
[   "bbb",  -436,  "식품주", "05-31", "코스닥" ],
["하하하",   111,    "잡주",      "",       "" ],
[   "TTT",   111,    "잡주",      "",       "" ],
[   "AAA",  1453,  "제약주", "03-31", "코스피" ],
[   "aaa", 64436,  "철강주",      "",       "" ],
["가나다", 64436,  "철강주",      "",       "" ],
[    "EE",   242,  "전력주",      "", "코스피" ],
[   "EEE",   242,  "전력주",      "", "코스피" ],
[   "eee",   242,  "전력주",      "", "코스피" ],
[   "BBB",   643,  "보험주", "05-31",       "" ],

);


print "2차원 배열의 행(Rows)의 개수 = ", $#main_data + 1, "\n";
print "2차원 배열의 열(Columns)의 개수 = ", $#{$main_data[0]} + 1, "\n";
print "-------------------------------------------\n\n";


# 2차원 배열의 1번째 칼럼을 기준으로 문자열을 대소문자 구분없이 정렬
@main_data = sort { lc($a->[0]) cmp lc($b->[0]) } @main_data;

# 2차원 배열 화면에 출력하기
for (my $i = 0; $i <= $#main_data; $i++) {
  print "\n";
  for (my $j = 0; $j <= $#{$main_data[$i]}; $j++) {
    print $main_data[$i][$j], "\t";
  }
}



위의 예제 실행 결과 화면:
D:\Z>example.pl
2차원 배열의 행(Rows)의 개수 = 11
2차원 배열의 열(Columns)의 개수 = 5
-------------------------------------------


AAA     1453    제약주  03-31   코스피
aaa     64436   철강주
bbb     -436    식품주  05-31   코스닥
BBB     643     보험주  05-31
EE      242     전력주          코스피
EEE     242     전력주          코스피
eee     242     전력주          코스피
TTT     111     잡주
ZZZ     533     증권주
가나다  64436   철강주
하하하  111     잡주
D:\Z>





tag: perl
Perl | 펄

3 Comments:
At April 21, 2008 at 11:08 AM, Anonymous Anonymous said...

Perl 에 관한 코드들은 잘 보고 있습니다. :-)
현재 irc.hanirc.org #perl에서 Perl 하는 분들이 여럿 몰려 있으므로, 혹시 관심이 있으시다면 한번 들러보시는 것은 어떨까요?

 
At April 21, 2008 at 11:18 AM, Anonymous Anonymous said...

트랙백을 못 찾아서 수동 트랙백 남김니다.
http://aero.dnip.net/blog/2008/04/perl-2-1.html

 
At April 21, 2008 at 11:40 AM, Blogger mwultong said...

JEEN님께: 고맙습니다. 그런데 요즘에 안타깝게도 Perl을 할 시간이 없더군요.^^;

aero님께: 고수의 솜씨이십니다. 저는 아직 초보 수준을 벗어나지 못하고 있습니다^^;

 

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top