이 과제에서는 특정 방식으로 해결해야하는 4 가지의 서로 관련이 있지만 다소 관련된 작업이 있습니다. 먼저 작업을 설명하고 어떻게 해결해야하는지 설명합니다.
코드는 네 작업은 입력으로 두 개의 양의 정수를 취해야한다 위해 : n,m
여기서 n<m
. 모든 작업은 동일한 언어로 해결해야합니다. 행렬의 방향은 선택 사항입니다 (n-m-m은 "n 행, m 열"또는 "n 열, m 행"으로 해석 될 수 있음).
작업 1 :
다음 요소로 구성된 벡터 / 목록을 생성 (및 출력 / 인쇄)합니다 n, n+1 ... m-1, m
. 따라서에 대해 n=4, m=9
다음을 출력해야합니다 4,5,6,7,8,9
..
작업 2 :
다음과 같이 행렬 / 배열 / 목록 목록 (또는 동등한 항목)을 생성 (및 출력 / 인쇄)하십시오.
n, n+1, ... m-1, m
n+1, n+2, ... m-1, m+1
...
n+m, n+m+1, ... 2*m-1, 2*m
들어 n=4, m=9
당신이 출력해야한다 :
4, 5, 6, 7, 8, 9
5, 6, 7, 8, 9, 10
...
13, 14, 15, 16, 17, 18
작업 3 :
nxm 곱셈 테이블을 작성하고 (출력 / 인쇄) 적절한 형식으로 작성하십시오. 예 n=4, m=9
:
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
5 10 15 20
6 12 18 24
7 14 21 28
8 16 24 32
9 18 27 36
작업 4 :
작업 3의 곱셈표의 요소로 구성된 벡터 / 목록을 오름차순으로 정렬하여 중복 값을 유지하면서 벡터 / 목록을 출력 / 인쇄하십시오. 의 경우 n=4, m=9
다음을 출력해야합니다 1, 2, 2, 3, 3, 4, 4, 4, 5, 6, 6, 6, 7, 8, 8, 8, 9, 9, 10, 12, 12, 12, 14, 15, 16, 16, 18, 18, 20, 21, 24, 24, 27, 28, 32, 36
..
도전 과제 :
이제 위의 모든 작업은 매우 간단합니다. 여기서 과제는 태스크 2의 코드가 태스크 1의 코드로 시작해야하고 태스크 3의 코드는 태스크 2의 코드로 시작해야하고 태스크 4의 코드는 태스크 3의 코드로 시작해야한다는 것입니다.
더 명확하게하려면 :
작업 1 의 코드가 다음과 같다고 가정합니다 (옥타브에서 작동).
@(n,m)(n:m)
그런 다음 작업 2 의 코드는 다음과 같습니다 (옥타브에서 작동).
@(n,m)(n:m)+(0:m)'
작업 3 의 코드 는 옥타브에서 작동하지 않아야합니다.
@(n,m)(n:m)+(0:m)'"Code_for_task_3"
마지막으로 작업 4 의 코드 는 옥타브에서 작동하지 않아야합니다.
@(n,m)(n:m)+(0:m)'"Code_for_task_3""Code_for_task_4"
이것은 code-golf 이므로 각 언어에서 작업 4에 대해 가장 짧은 코드로 제출하면 승리합니다. 항상 그렇듯이 : 설명은 적극 권장됩니다.
0<n<m
또는 의미 0<=n<m
합니까?
>2;
이전 작업 코드가 본질적으로 작동하지 않도록 STDERR로 리디렉션하여 다음 작업 코드를 시작할 수 있습니까?