Simple Task Solved Thrice
J, 16 bytes
Function 1, 5 bytes
p:^i.
Function 2, 6 bytes
+p:^i.
Function 3, 5 bytes
>:^i.
How it works
Function 1
p:^i. Right argument: y
i. Compute (0 ... y-1).
p: Compute P, the prime at index y (zero-indexed).
^ Return all powers P^e, where e belongs to (0 ... y-1).
Since P is prime and P > y, y cannot divide Pe.
Function 2
+p:^i. Right argument: y
p:^i. As before.
+ Add y to all results.
If y divided Pe + y, it would also divide Pe + y - y = Pe.
Function 3
>:^i. Right argument: y
i. Compute (0 ... y-1).
>: Compute y+1.
^ Return all powers (y+1)^e, where e belongs to (0 ... y-1).
If y divided (y+1)e some prime factor Q of y would have to divide (y+1)e.
But then, Q would divide both y and y+1 and, therefore, y + 1 - y = 1.
Pyth, 17 16 bytes
5 bytes:
^LhQQ
Outputs:
2: [1, 3]
3: [1, 4, 16]
4: [1, 5, 25, 125]
6 bytes:
mh*QdQ
Outputs:
2: [1, 3]
3: [1, 4, 7]
4: [1, 5, 9, 13]
5 bytes:
|RhQQ
Outputs:
2: [3, 1]
3: [4, 1, 2]
4: [5, 1, 2, 3]
Alternate version, in increasing order: -ShQQ
Dyalog APL, 16 17 bytes
1+⊢×⍳
⊢+1+⊢×⍳
1+⊢*⍳