Dengan asumsi kolom muncul dalam urutan waktu, baris pertama (misalnya) menunjukkan bahwa total konstruksi melalui setiap periode berjalan
0, 0+45 = 45, 45+135 = 180, 180+405 = 585, 585+1010 = 1595, ..., 2230+0 = 2230.
Konstruksi setengah jalan pada 2230/2 = 1115. Ini terjadi selama periode 4, karena pada akhir periode 3 totalnya adalah 585, pada akhir periode 4 totalnya adalah 1595, dan 585 <= 1115 <1595.
Ini tampaknya merupakan hasil yang dilaporkan oleh kolom [Median], yang memberikan indeks periode (mulai dari 1 di sebelah kiri).
Anda dapat mengkodekan ini dalam bahasa favorit Anda . Tabelnya sangat kecil (100 baris), sehingga spreadsheet akan nyaman, jika hanya untuk memeriksa apa yang Anda lakukan secara lebih formal dengan Python atau apa pun. Begini tampilannya:
Tiga baris data pertama memiliki nilai yang sama dengan milik Anda. Dua baris data berikutnya (dikelilingi oleh baris kosong) dipilih lebih jauh di tabel Anda. Lima baris data terakhir menggunakan algoritme sedikit.
(Perhatikan, seperti yang ditunjukkan dalam dua baris terakhir spreadsheet, bagaimana Excel memilih periode berikutnya setiap kali bagian tengah jatuh tepat di antara dua periode. Ini tidak selalu merupakan jawaban yang "benar", tetapi itu adalah yang valid.)
Berikut adalah rumus di kolom H: R:
Anda tidak harus mengetik semuanya. Satu-satunya pengetikan yang dibutuhkan adalah:
=H2+A2
di I2. Seret ini melalui O2. Ini menghitung jumlah kumulatif. Ini mensyaratkan bahwa kolom A: G berada dalam urutan kronologis.
=O2/2
dalam P2. Ini menemukan setengah dari total.
=Match(P2,H2:O2,1)
di Q2. Ini mengindeks kolom di mana konstruksi setengah selesai.
=Offset($A$1:$G$1,0 0, Q2-1, 1, 1)
dalam R2. Ini mendapatkan judul kolom yang sesuai dengan indeks.
Kemudian tempel 0
di semua kolom H dan seret I2: R2 ke baris sebanyak yang diperlukan.
Ini secara efektif berfungsi sebagai pseudocode untuk algoritma. Bagian tersulit akan menjadi pencarian untuk mengimplementasikan MATCH
fungsi Excel . Tapi itu tidak memerlukan keahlian apa pun: tidak efisien untuk mencari setiap array jumlah kumulatif secara berurutan (daripada dengan algoritma pencarian biner yang disukai) karena array ini sangat pendek.