프로그램 처음 배울때 만들어 보는 삼각형 > PHP
PHP

프로그램 처음 배울때 만들어 보는 삼각형

조회 48회 댓글 0건

처음 배울때 만들어 보는 것중 하나 입니다. 

삼각형은 중앙에 정렬된 별로 구성되어 있으며, 각 줄의 별의 수는 1, 3, 5로 증가합니다. 각 줄마다 양쪽에 적절한 수의 공백이 필요합니다. 이를 위해 다섯

가지 방법으로 구현된 메소드를 갖는 클래스를 작성의 예 입니다.  



  <?php

  class CenteredTrianglePrinter {
      // 첫 번째 방법: 중앙 정렬 반복문 사용
      public function printTriangle1() {
          for ($row = 1; $row <= 5; $row += 2) {
              echo str_repeat(' ', (5 - $row) / 2) . str_repeat('*', $row) . "\n";
          }
      }

      // 두 번째 방법: 배열과 중앙 정렬 사용
      public function printTriangle2() {
          $triangle = '';
          for ($row = 1; $row <= 5; $row += 2) {
              $triangle = str_repeat(' ', (5 - $row) / 2) . str_repeat('*', $row);
              echo $triangle . "\n";
          }
      }

      // 세 번째 방법: 중앙 정렬과 문자열 조작 사용
      public function printTriangle3() {
          for ($row = 1; $row <= 5; $row += 2) {
              echo str_pad(str_repeat('*', $row), 5, ' ', STR_PAD_BOTH) . "\n";
          }
      }

      // 네 번째 방법: 중앙 정렬된 배열 사용
      public function printTriangle4() {
          for ($row = 1; $row <= 5; $row += 2) {
              echo str_pad('', (5 - $row) / 2, ' ', STR_PAD_LEFT) . str_repeat('*', $row) . "\n";
          }
      }

      // 다섯 번째 방법: 재귀 함수와 중앙 정렬 사용
      public function printTriangle5($row = 1) {
          if ($row > 5) return;
          echo str_pad(str_repeat('*', $row), 5, ' ', STR_PAD_BOTH) . "\n";
          $this->printTriangle5($row + 2);
      }
  }

  // 클래스 인스턴스화 및 메소드 호출
  $trianglePrinter = new CenteredTrianglePrinter();
  echo "Triangle Method 1:\n";
  $trianglePrinter->printTriangle1();

  echo "\nTriangle Method 2:\n";
  $trianglePrinter->printTriangle2();

  echo "\nTriangle Method 3:\n";
  $trianglePrinter->printTriangle3();

  echo "\nTriangle Method 4:\n";
  $trianglePrinter->printTriangle4();

  echo "\nTriangle Method 5:\n";
  $trianglePrinter->printTriangle5();
  ?>
 


이 클래스는 정삼각형을 다섯 가지 다른 방식으로 출력 하는데 각 메소드는 고유한 방법을 사용하여 중앙 정렬된 삼각형을 만들고 클래스를 실행하면, 프로그램 시작 시 다양한 방법으로 삼각형을 그리는 예제를 볼 수 있습니다.

  • 페이스북으로 공유
  • 트위터로  공유
  • 구글플러스로 공유
전체 183건 1 페이지
  • profile_image 리눅스 환경에서 쉘에서 PHP를 실행하는 방법은 여러 가지가 있습니다.cron 스케줄에 넣어 사용해야 되는 경우 유용 하죠~선호 하는 방법은 php 전체 경로로 지정하는 첫번째 방식이 후에 php 버전이 변경 되었을때 대응하기가 더 편한 부분이 있습니다.● CLI(Command Line Interface) 방식 실행PHP CLI는 커맨드 라인에서 PHP 스크립트를 실행하기 위한 모드로서 직접 PHP를 실행하려면, 터미널에서 다음과 같이 명령어를…
  • profile_image 컴포저로 다운로드 받고 autoload 사용하기 위해서 설치 하려는데 잘 안되었던 부분 없애고 잘 된 부분만 정리해서 올립니다.최신 버전을 사용하시는 분은 이렇게 까지 할 필요는 없고 보통 기본으로 설치 되어 있습니다.여기서 php 경로를 지정해야 될 수 있습니다. 자신의 서버 환경에 맞게 지정하면 됩니다.1) 각 버전별 컴포저 다운로드 받기오래된 버전이라서 최근것을 사용하면 문제가 발생 할 수 있기 때문에 5.4 버전에 맞는 버전을 찾아 설치…
  • profile_image 파일은 없는데 아래와 같은 형태로 읽혀 들이는 것이 있다면 pear이 설치 되어 있는지 확인해 봐야 한다. 아래쪽에 보면 find명령으로 찾는것이 있으니 참고하면 된다. require_once 'PEAR.php';그래서 이 프로그램은 어떤 프로그램인가 궁금할 수도 있는데 예를 들면 아래와 같은 mime 처리 해주는 라이브러리가 있는데 PEAR.php 기반 위에 만들어진것이다.즉 PEAR.php 땅 위에 mime가 올라가 있는것이라 생각하면 된다…
  • profile_image 방문자의 출처 및 현재 페이지를 저장하기 위한 함수 입니다.페이지가 있는 페이지의 경우는 1페이만 저장해도 되는경우가 많습니다.방문자가 적은 사이트면 처리하는 부하가 많이 않으니 모두 저장하는것이 더 좋습니다. 생각보다 용량 많이 차지 하지 않습니다.단, 웨봇이나 클롤러의 경우는 필요하지 않으니 제외하는것이 좋겠습니다.아래는 출처와 키워드가 있을 경우 저장하는 함수 입니다.  /**   * user visit log write   *   * @…
  • profile_image "Malformed UTF-8 characters, possibly incorrectly encoded" 오류는 PHP가 JSON 데이터를 디코딩하려고 시도할 때, 그 데이터가 올바른 UTF-8 형식이 아니라고 판단했을 때 발생하는데 비 UTF-8 문자나 이진 데이터가 JSON 문자열에 포함되어 있을 때 일어난다. 웹에서 긁어서 복사해온 경우 2바이트로 처리 되거나 그런것들이 있는데 잘 보세요. 한글도 없는데 문제가 생기는 경우는 작은 따음…
  • profile_image PHP에서 "Cannot use a scalar value as an array"라는 오류 메시지는 스칼라 값(정수, 부동소수점 수, 문자열 또는 불리언)을 배열처럼 사용하려고 시도할 때 발생합니다. 아래에는 이 오류가 발생하는 두 가지 예시를 들어 보겠습니다.1. 일반적인 절차형 코드    $var = "Hello, World!";  $var[1] = "a"; // 이 라인에서 오류가 발생합니다.위의 코드에서는 문자열 $var에 배열 인덱스를…