C, C++ 구구단 단 옮기기 질문드립니다.

조회수 790회

먼저 몇 단까지 출력할 지에 대한 수를 입력받고 입력받은 수의 단만큼 출력하는 문제인데 만약 3을 입력받으면

1 x 1 =1     2 x 1 = 2    3 x 1 = 3 
             2 x 2 = 4    3 x 2 = 6
                          3 x 3 = 9

의 형태로 출력되어야 하고 가로로 단의 갯수가 5개가 될 때마다 아랫칸으로 내려서 출력해야 하는 형식입니다. c언어로 커서 이동 함수를 사용해서 해보려고 했는데 도저히 감이 안잡힙니다. 만약 C++ 코드가 더 간단하면 c++ 코드도 좋습니다. 도와주세요

1 답변

  • 핵심은 "언제 공백을 찍어야 하느냐?"인데요, 예컨대 3행을 잘 보시면, 1열은 공백이고, 2열도 공백인데, 3열부터 공백이 아니게 되지요. m행 n열의 원소에 대하여 m>n일 경우 그 원소는 공백이어야 한다는 규칙을 따르고 있는 겁니다.

    그렇다면, C는 모르지만, 자바스크립트라면 대충 이런 루프를 돌면 됩니다.

    for (row = 1; row < 4; row++) {
        line = '';
        for (col = 1; col < 4; col++) {
            if (col < row) {
                line += '    '; // 이 길이는 적당히 가변해야 됨 그래야 정렬이 맞을것임
            } else {
                line += col + '*' + row + ' '; // "=숫자" 부분은 적당히 연산해야 됨
            }
        }
        console.log(line);
    }
    

    주석에 적어놓은 부분만 숙제로 하시면 됩니다. 화이팅~

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)