![2의 거듭제곱을 삼각형 형태로 인쇄하는 방법은 무엇입니까?](https://linux55.com/image/93820/2%EC%9D%98%20%EA%B1%B0%EB%93%AD%EC%A0%9C%EA%B3%B1%EC%9D%84%20%EC%82%BC%EA%B0%81%ED%98%95%20%ED%98%95%ED%83%9C%EB%A1%9C%20%EC%9D%B8%EC%87%84%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
답변1
몇 가지 질문이 있습니다:
- 인쇄하는 내용은 2의 j제곱이 아니라 j제곱입니다.
- 0과 같은 2의 거듭제곱은 없습니다.
- 숫자를 구분하려면 공백을 인쇄해야 합니다.
- 완전성을 위해 2**0을 인쇄하려면 루프의 초기 값은 1이 아니라 0이어야 합니다.
그러므로
for (( i=0; i<=5; i++ ))
do
for (( j=0; j<=i; j++ ))
do
echo -n "$((2 ** j)) "
done
echo ""
done
생산하다
1
1 2
1 2 4
1 2 4 8
1 2 4 8 16
1 2 4 8 16 32