Here is how I would approach the problem. I intially thought you could use an apply operator however the union approach is the easiest to work with. The main difference between my answer and Eray's (kudos I really liked the approach) is that I'm using uncorrelated sub queries in line the generate the sum values and to maintain the unique number going down each of the columns.
I would argue that this COULD be achieved using dynamic SQL for an unknown number of columns but I don't have the time or resource to try and work that out now. Please see below code, I hope it helps.
declare @numbers table
(
numberid int
);
insert into @numbers (numberid)
values
(1),
(2),
(4),
(6),
(8),
(16),
(32);
select numberid as [1], null as [2], null as [3], null as [4], null as [5], null as
[6], (select sum(numberid) from @numbers where numberid=1) as [sum] from @numbers
where numberid =1
union
select (select numberid from @numbers where numberid=1), numberid, null, null, null,
null, (select sum(numberid) from @numbers where numberid in (1, 2)) from @numbers
where numberid =2
union
select (select numberid from @numbers where numberid=1), (select numberid from
@numbers where numberid=2), numberid, null, null, null, (select sum(numberid) from
@numbers where numberid in (1, 2, 4)) from @numbers where numberid =4
union
select (select numberid from @numbers where numberid=1), (select numberid from
@numbers where numberid=2), (select numberid from @numbers where numberid=4),
numberid, null, null, (select sum(numberid) from @numbers where numberid in (1, 2, 4,
8)) from @numbers where numberid =8
union
select (select numberid from @numbers where numberid=1), (select numberid from
@numbers where numberid=2), (select numberid from @numbers where numberid=4), (select
numberid from @numbers where numberid=8), numberid, null, (select sum(numberid) from
@numbers where numberid in (1, 2, 4, 8, 16)) from @numbers where numberid =16
union
select (select numberid from @numbers where numberid=1), (select numberid from
@numbers where numberid=2), (select numberid from @numbers where numberid=4), (select
numberid from @numbers where numberid=8), (select numberid from @numbers where
numberid=16), numberid, (select sum(numberid) from @numbers where numberid in (1, 2,
4, 8, 16, 32)) from @numbers where numberid =32;