>> Read No. 170 article  
초가 33 ☞ 초보용 Perl 스크립트 4

등록 1999-07-15 02:58:00     조회 4
이름 쉬이이    

5. 흐름의 조절  많은 CGI는 대부분 선형적인 프로그램 구조를 가진다. 하지만, Perl은 많은 
제어 명령어를 포함, 여러 조건을 제어 할 수 있으므로 제어 언어라 불린다. 5.1 if 와 while  
   Perl 의 if 문은 C의 if 문과 비슷하다. ☞간단한 예 [root@chongnux perl]# cat if#!/usr/bin/perl$count =
 0 ;$sum = 0; while(1){ $sum += $count; $count += 5;  if($count >51){exit(0);} if(($count% 5)== 0){ print "$count 
는 5의 배수 입니다.";}}                     [root@chongnux perl]# chmod +x if[root@chongnux perl]# ./if
5 는 5의 배수 입니다.10 는 5의 배수 입니다.15 는 5의 배수 입니다.20 는 5의 배수 입니다.25 
는 5의 배수 입니다.30 는 5의 배수 입니다.35 는 5의 배수 입니다.40 는 5의 배수 입니다.45 는 
5의 배수 입니다.50 는 5의 배수 입니다.☞예제로 배우기#!/usr/bin/perl @city = ("A_city", "B_city","C
_city");  # 배열 while(1)  # 무한 반복 명령.. 참이면 계속 실행이 되것지요..{print "Enter_one_City
_(A_,_B_,_C_,Q_is_to_quit)_:_";new_enter:$choice = <STDIN>;    # 표준 입력 <STDIN> 이며 입력 받은 것     
                  # 은 $choice 에 입력됨..chop $choice ;    # 개행 문자를 삭제함...왜 반드시
 개행 문자                  # 를 지워서 입력 시켜야 함.           # chop는 마지막 문제
를 제거하는데 쓰이는 명령어. if($choice eq "A" || $choice eq "a") { print "$city[0] is a wonderful country."
;}elsif($choice eq "B" || $choice eq "b") { print "$city[1] is big.";}elsif($choide eq "C" || $choice eq "c") { print "$
city[2],The City of God, is heaven.";}elsif($chioce eq "Q" || $choice eq "q") { exit(0);}else  { print "You enter a val
id word. Enter new word: " ; goto new enter;}}                                    [root@chongnux perl]
# chmod +x Jogun[root@chongnux perl]# ./Jogun Enter one City (A , B , C ,Q is to quit) : a A_city is a wonderful count
ry. Enter one City (A , B , C ,Q is to quit) : b B_city is big. Enter one City (A , B , C ,Q is to quit) : c C_city,
The City of God,is heaven. Enter one City (A , B , C ,Q is to quit) : d You enter a valid word. Enter new word: a A_c
ity is a wonderful country. Enter one City (A , B , C ,Q is to quit) : q[root@chongnux perl]#           C 언어
와 많이 유사하는 것을 느끼실 겁니다. ☞ while에 관한 이야기   조건이 참이면 계속해서 
반복을 하다가 거짓이 되면 루프를 빠져 나갑니다. 위의 예제를 이용 주소록도 가능하지 
않을까 하는 생각 이 듭니다. 파일 입출력만 된다면 말이지요... 후후 .. 다음은 바로 라인
을 읽어서 조건을 판단하는 예제입니다. #!/usr/bin/perl  while($stdin = <STDIN>){  print $stdin;}혹은 
#!/usr/bin/perlwhile(<STDIN>){  print $_;}은 같은 역할을 한다. 즉 에코의 역할을 한다. perl 에서는 
표준입력에서 읽은 것은 $_로 값을 할당 할 수 있다. 그리고 next ,last 키워드를 가지고 있어
서 루프를 겉너 뛰거나 그 루프를 종료 할 수 있다. 다음은 간단한 모양 출력 스크립트이다
. [root@chongnux perl]# vi mountain#!/usr/bin/perl print "Enter number : ";$input = <STDIN>;chop $input;print "";{ for
($num1 = 1 ;$num1 < $input+1 ;$num1++)     {      for($num2 = 1;$num2 < $num1+1;$num2++)        {         p
rint "*";        }      print "";      } for($num1 = $input ;$num1 > 0;$num1--)     {      for($num2 = $
num1;$num2>0;$num2--)        {         print "*";        }      print "";      }}[root@chongnux perl]#
chmod +x mountain[root@chongnux perl]# ./mountainEnter number : 10 ****************************************************
**********************************************************              ☞ last & nextwhile(1){  $num ++;  if(
$num ==100) {next;}  #$num 이 100이면 반복을 점프한다.   if($num >1000) {last;}   #$num 이 1000이면 루
프를 종료한다.   print "$num";          #번호 하나씩 찍끼...}내일은 더 잼있는 거 도전해볼
 생각유....근데 난 언제 스크리트 멋찌게 짜나..
이름
암호
  목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.29 초 ] 작업시간: [ 0 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1791018298
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.