Home » Power!

Power!

Solving Power challenge by Power Query, Power BI, Excel, Python and R

Create the given table for the continuous values of power and bases. Highlighted cell is 2^3. Note: try to use as short code as possible

📌 Challenge Details and Links
Challenge Number: 121
Challenge Difficulty: ⭐⭐
Designed by: Konrad Gryczan, PhD
📥Download Sample File
📥Link to the solutions on LinkedIn

Solving the challenge of Power! with Power Query

Power Query solution 1 for Power!, proposed by Zoran Milokanović:
let
  Source = {1 .. 6}, 
  S = Table.FromRows(
    List.Transform(Source, (i) => List.Transform(Source, each List.Product(List.Repeat({i}, _))))
  )
in
  S
Power Query solution 2 for Power!, proposed by Zoran Milokanović:
let
  Source = {1 .. 6}, 
  S = Table.FromRows(
    List.TransformMany(Source, each {Source}, (i, _) => List.Transform(_, each Number.Power(i, _)))
  )
in
  S
Power Query solution 3 for Power!, proposed by Ramiro Ayala Chávez:
let
a = {1..6},
b = List.TransformMany(a,(x)=>a,(x,y)=>Number.Power(x,y)),
Sol = Table.FromRows(List.Split(b,6))
in
Sol
Power Query solution 4 for Power!, proposed by Alejandro Simón 🇵🇦 🇪🇸:
let
  Source = {1 .. 6}, 
  Sol = Table.FromRows(
    List.Split(
      List.TransformMany(Source, (a) => Source, (a, b) => Number.Power(a, b)), 
      List.Count(Source)
    )
  )
in
  Sol
Power Query solution 5 for Power!, proposed by Abdallah Ally:
let
  Result = Table.FromList({1 .. 6}, each List.Transform({1 .. 6}, (x) => Number.Power(_, x)))
in
  Result
Power Query solution 6 for Power!, proposed by 🇮🇷 Navid Esmaeilzadeh اسماعیل زاده:
let
  S = Table.FromColumns({{1 .. 6}}, {"N"}), 
  A = List.Accumulate(
    {2 .. 6}, 
    S, 
    (s, c) => Table.AddColumn(s, "N^" & Text.From(c), each Number.Power([N], c))
  )
in
  A
Power Query solution 7 for Power!, proposed by Peter Krkos:
= List.Accumulate(
 {1..6},
 Table.FromList({1..6}, (x)=> {x}),
 (s,c)=> Table.AddColumn(s, "P" & Text.From(c), (x)=> Number.Power(x[Column1], c)) )

https://docs.google.com/spreadsheets/d/1zR5IZLz8OT76vhaPEHfsPrw8-RDKnLyyqS49IJjdhFk/edit?usp=sharing
Power Query solution 8 for Power!, proposed by Alexandre Garcia:
let
  Source = {1 .. 6}, 
  Sol = Table.FromList(
    Source, 
    Expression.Evaluate(
      "(x)=> {"
        & Text.Combine(
          List.TransformMany({"x"}, (x) => Source, (x, y) => Text.Combine(List.Repeat({x}, y), "*")), 
          ","
        )
        & "}"
    )
  )
in
  Sol

Solving the challenge of Power! with Excel

Excel solution 1 for Power!, proposed by Aditya Kumar Darak 🇮🇳:
=MAKEARRAY(
    6,
     6,
     POWER
)
Excel solution 2 for Power!, proposed by Oscar Mendez Roca Farell:
=ROW(
    1:6
)^TOROW(
    ROW(
    1:6
)
)
Excel solution 3 for Power!, proposed by Julian Poeltl:
=SEQUENCE(
    6
)^SEQUENCE(
    ,
    6
)
Excel solution 4 for Power!, proposed by Abdallah Ally:
=MAKEARRAY(
    6,
    6,
    LAMBDA(
        x,
        y,
        x^y
    )
)
Excel solution 5 for Power!, proposed by Kris Jaganah:
=MAKEARRAY(
    6,
    6,
    LAMBDA(
        x,
        y,
        x^y
    )
)
Excel solution 6 for Power!, proposed by Imam Hambali:
=LET(
    a,
     IF(
         SEQUENCE(
             ,
             6
         ),
          SEQUENCE(
              6
          )
     ),
     a^ TRANSPOSE(
         a
     )
)
Excel solution 7 for Power!, proposed by Sunny Baggu:
=ROW(A1:A6)^TOROW(ROW(A1:A6))
Excel solution 8 for Power!, proposed by Sunny Baggu:
=ROW(
    1:6
)^TOROW(
    ROW(
    1:6
)
)
Excel solution 9 for Power!, proposed by Sunny Baggu:
=MAKEARRAY(6,6,LAMBDA(r,c,r^c))+N("🌼")
Excel solution 10 for Power!, proposed by Andy Heybruch:
=SEQUENCE(
    6
)^SEQUENCE(
    ,
    6
)

originally i had =LET(
    x,
    SEQUENCE(
    6
),
    x^TOROW(
        x
    )
)
Excel solution 11 for Power!, proposed by Bilal Mahmoud kh.:
=MAKEARRAY(
    6,
    6,
    LAMBDA(
        r,
        c,
        r^c
    )
)
Excel solution 12 for Power!, proposed by Eddy Wijaya:
=MAKEARRAY(
    6,
    6,
    LAMBDA(
        r,
        c,
        POWER(
            r,
            c
        )
    )
)
Excel solution 13 for Power!, proposed by El Badlis Mohd Marzudin:
=SEQUENCE(
    6
)^SEQUENCE(
    ,
    6
)
Excel solution 14 for Power!, proposed by Hussein SATOUR:
=ROW(
    1:6
)^COLUMN(
    A:F
)
Excel solution 15 for Power!, proposed by Pierluigi Stallone:
=SEQUENCE(
    6
)^COLUMN(
    A3:F3
)
Excel solution 16 for Power!, proposed by Rick Rothstein:
=SEQUENCE(
    6
)^SEQUENCE(
    ,
    6
)

Shorter,
     but subject to change if rows or columns are inserted at either Row 1 or Column A...

=ROW(
    1:6
)^COLUMN(
    A:F
)
Excel solution 17 for Power!, proposed by Songglod Petchamras:
=MAKEARRAY(
    6,
    6,
    LAMBDA(
        r,
        c,
        r^c
    )
)

Solving the challenge of Power! with Python in Excel

Python in Excel solution 1 for Power!, proposed by Abdallah Ally:
df = pd.DataFrame(data=values)

# Display the final results
df
Python in Excel solution 2 for Power!, proposed by Ümit Barış Köse, MSc:
df = pd.DataFrame(np.power(np.arange(1, 7)[:, None], np.arange(1, 7)))

Solving the challenge of Power! with Office Script

Office Script solution 1 for Power!, proposed by Sergei Baklan:
OfficeScript:
function main(workbook: ExcelScript.Workbook) {
 workbook
 .getActiveWorksheet()
 .getRange("C3:H8")
 .setValues(
 Array.from( { length: 6 }, (_, i) =>
 Array.from( { length: 6 }, (_, j) =>
 (i + 1) ** (j + 1))
 ) )
}

Leave a Reply