Hasilkan jujukan aritmetik serta-merta. Masukkan sebutan pertama, perbezaan biasa, dan bilangan sebutan untuk mencipta corak nombor untuk matematik, kewangan, dan pengaturcaraan.
Jujukan aritmetik (juga dipanggil progressi aritmetik) adalah jujukan nombor di mana perbezaan antara sebutan berturutan adalah tetap. Nilai tetap ini dipanggil perbezaan biasa. Bayangkan seperti mendaki tangga—setiap langkah naik adalah tepat sama tinggi. Dalam jujukan 2, 5, 8, 11, 14, anda menambah 3 setiap kali, jadi 3 adalah perbezaan biasa anda.
Apabila bekerja dengan jujukan aritmetik dalam analisis hamparan atau pengaturcaraan, anda akan cepat menyedari betapa kerap ia muncul—dari pengindeksan tatasusunan hingga unjuran kewangan. Ia adalah salah satu corak asas yang muncul di mana-mana sekali anda tahu apa yang dicari.
Penjana jujukan aritmetik membolehkan anda membuat jujukan dengan menentukan tiga parameter utama:
Bentuk am jujukan aritmetik adalah: a₁, a₁+d, a₁+2d, a₁+3d, ..., a₁+(n-1)d
Petua pro: Apabila menyahpepijat operasi tatasusunan, mulakan dengan jujukan mudah seperti istilah pertama = 0, perbezaan biasa = 1 untuk mengesahkan logik pengindeksan anda sebelum menggunakan corak yang lebih kompleks.
Kalkulator menyemak input anda untuk mencegah ralat:
Kesilapan biasa adalah cuba menjana jujukan dengan bilangan istilah pecahan seperti "10.5 istilah"—ia tidak masuk akal dari segi matematik. Kalkulator akan menangkap ini dan meminta anda menggunakan nombor bulat sahaja. Begitu juga, jujukan yang sangat besar (melebihi 10,000 istilah) boleh memperlahankan rendering pelayar, jadi terdapat had atas yang munasabah.
Formula untuk sebarang sebutan dalam jujukan aritmetik adalah elegan dalam kesederhanaannya:
Di mana:
Mengapa (n-1) dan bukan sekadar n? Kerana apabila anda berada pada kedudukan 1, anda belum menambah perbezaan biasa—anda masih berada pada sebutan pertama. Pada kedudukan 2, anda telah menambahnya sekali. Pada kedudukan 3, dua kali. Jadi untuk kedudukan n, anda telah menambahnya (n-1) kali. Ini adalah sumber kerap ralat off-by-one semasa melaksanakan jujukan dalam kod.
Perlu menambah semua sebutan? Terdapat formula untuk itu:
Atau lebih intuitif:
Di mana:
Bentuk kedua ini mendedahkan keanggunan: anda mengambil purata sebutan pertama dan terakhir, kemudian mendarabkan dengan bilangan sebutan yang anda miliki. Carl Friedrich Gauss yang terkenal menggunakan pandangan ini semasa dia masih di sekolah untuk serta-merta menjumlahkan 1 hingga 100 dengan mengenali bahawa pasangan sebutan (1+100, 2+99, 3+98...) masing-masing bersamaan 101, dengan 50 pasangan—memberikan jumlah 5,050.
Berikut adalah yang berlaku di sebalik tabir apabila anda menjana urutan:
Contoh penerokaan dengan a₁ = 5, d = 3, dan n = 6:
Keputusan: 5, 8, 11, 14, 17, 20
Kalkulator menggunakan aritmetik titik perpuluhan dwi-presisi, yang bermaksud ia mengendalikan nombor bulat dan perpuluhan dengan tepat. Walau bagaimanapun, berhati-hati dengan potensi isu presisi titik perpuluhan apabila bekerja dengan perbezaan perpuluhan yang sangat kecil dalam banyak istilah—satu had dari cara komputer mewakili nombor perpuluhan.
Penjana berfungsi dengan nombor tulen—tiada unit yang dilampirkan. Input integer menghasilkan output integer, manakala input perpuluhan mengekalkan tahap presisi mereka. Urutan dengan ribuan istilah disokong, walaupun pelayar anda mungkin mengambil masa untuk memaparkan senarai yang sangat besar (sebab lain untuk had 10,000 istilah).
Pendidikan dan bantuan kerja rumah kekal sebagai kes penggunaan yang paling biasa. Pelajar menggunakan alat ini untuk mengesahkan kerja mereka dan memahami pembentukan corak. Yang sangat membantu ialah melihat urutan lengkap—ia menjadikan pengecaman corak jauh lebih jelas daripada menyelesaikan masalah secara manual.
Pemodelan kewangan adalah tempat urutan aritmetik cemerlang dalam senario praktikal. Bayangkan merancang untuk menyimpan 25 setiap bulan. Urutan (100, 125, 150, 175...) menunjukkan trajektori simpanan anda sekilas mata. Begitu juga, jadual pelunasan pinjaman tertentu mengikuti corak aritmetik apabila pengiraan faedah kekal malar.
Analisis data dan kawalan kualiti sering melibatkan perbandingan pengukuran yang diperhatikan dengan corak linear yang dijangka. Apabila penderia kilang merekod bacaan suhu setiap 30 saat, anda menjangkakan urutan aritmetik bagi cap masa. Sebarang sisihan menandakan masalah pengukuran.
Pembangunan perisian menggunakan urutan aritmetik secara berterusan—pengindeksan tatasusunan, lelaran gelung, pengiraan alamat memori, dan penjanaan data ujian semuanya bergantung pada corak ini. Semasa menulis ujian prestasi, menjana urutan aritmetik saiz input (10, 20, 30, 40...) membantu mengenal pasti kompleksiti masa linear lwn kuadratik.
Penjadualan projek menjadi lebih mudah dengan urutan aritmetik. Perlu menjadualkan mesyuarat status setiap 2 minggu? Penyelenggaraan peralatan setiap 90 hari? Ini adalah progressi aritmetik dalam masa. Urutan ini memudahkan perancangan beberapa bulan lebih awal.
Yang menarik tentang semua aplikasi ini ialah ia mewakili pertumbuhan atau penurunan linear—situasi di mana sesuatu berubah dengan jumlah tetap berulang kali. Ini berbeza dengan corak eksponen (seperti faedah kompaun) di mana anda memerlukan urutan geometri sebaliknya.
Apabila urutan aritmetik tidak sesuai dengan corak anda, pertimbangkan:
Urutan geometri untuk pertumbuhan eksponen—setiap sebutan mendarab dengan nisbah malar (2, 6, 18, 54...). Inilah yang anda perlukan untuk faedah kompaun, pertumbuhan penduduk, atau model penyebaran viral.
Urutan Fibonacci di mana setiap sebutan sama dengan jumlah dua sebutan sebelumnya (1, 1, 2, 3, 5, 8, 13...). Ini muncul mengejutkan kerap dalam algoritma sains komputer dan alam semula jadi.
Urutan kuadratik apabila perbezaan kedua kekal malar. Jika data anda menunjukkan pecutan dan bukannya perubahan malar, urutan kuadratik dapat memodelkan pertumbuhan melengkung dengan lebih baik daripada urutan aritmetik.
Jujukan aritmetik termasuk antara penemuan matematik tertua manusia. Papirus Matematik Rhind (sekitar 1650 BCE) menunjukkan orang Mesir kuno menggunakan progressi aritmetik untuk mengagihkan barang dan mengira kawasan. Orang Babilonia telah bekerja dengan corak ini lebih awal lagi, sekitar 2000 BCE.
Ahli matematik Greek, terutamanya Pythagoras (abad ke-6 BCE), menjadi terpikat dengan sifat nombor dan mengkaji progressi aritmetik secara meluas. Elemen Euclid (sekitar 300 BCE) mengandungi beberapa proposisi tentang jujukan aritmetik yang masih fundamental sehingga hari ini.
Kisah terkenal Gauss yang disebutkan sebelum ini—di mana Carl Friedrich Gauss muda dengan serta-merta menjumlahkan 1 hingga 100—menunjukkan mengapa corak ini memikat ahli matematik. Keanggunan formula jumlahan mewakili berabad-abad pemahaman matematik yang dipadatkan dalam satu persamaan.
Semasa Zaman Keemasan Islam, ahli matematik seperti Al-Karaji (abad ke-10) membangunkan formula am untuk siri aritmetik yang maju melepasi apa yang telah dicapai dalam matematika Greek. Sumbangan ini menjadi asas penting untuk matematika zaman Renaissance dan pembangunan kalkulus.
Dalam sains komputer moden, jujukan aritmetik menjadi asas konsep asas seperti pengindeksan tatasusunan dan analisis kompleksiti algoritma. Apa yang digunakan orang Mesir kuno untuk perakaunan praktikal kini membantu kita menganalisis betapa cekap perisian berfungsi.
Perlu mengimplementasikan pembangkitan jujukan aritmetik dalam kod anda sendiri? Berikut adalah contoh dalam bahasa yang biasa:
1' Fungsi Excel VBA untuk Pembangkitan Jujukan Aritmetik
2Function ArithmeticSequence(firstTerm As Double, commonDiff As Double, numTerms As Integer) As String
3 Dim sequence As String
4 Dim term As Double
5 Dim i As Integer
6
7 sequence = ""
8 For i = 1 To numTerms
9 term = firstTerm + (i - 1) * commonDiff
10 sequence = sequence & "Term " & i & ": " & term & vbCrLf
11 Next i
12
13 ArithmeticSequence = sequence
14End Function
15
16' Penggunaan dalam sel Excel:
17' =ArithmeticSequence(5, 3, 10)
18'
19' Atau untuk mendapatkan hanya term ke-n:
20Function NthTerm(firstTerm As Double, commonDiff As Double, n As Integer) As Double
21 NthTerm = firstTerm + (n - 1) * commonDiff
22End Function
23' =NthTerm(5, 3, 10)
241def generate_arithmetic_sequence(first_term, common_difference, num_terms):
2 """
3 Hasilkan jujukan aritmetik.
4
5 Args:
6 first_term: Term pertama jujukan
7 common_difference: Perbezaan malar antara term berturutan
8 num_terms: Bilangan term untuk dijana
9
10 Returns:
11 Senarai yang mengandungi jujukan aritmetik
12 """
13 sequence = []
14 for n in range(1, num_terms + 1):
15 term = first_term + (n - 1) * common_difference
16 sequence.append(term)
17 return sequence
18
19def nth_term(first_term, common_difference, n):
20 """Kira term ke-n dari jujukan aritmetik."""
21 return first_term + (n - 1) * common_difference
22
23# Contoh penggunaan:
24first_term = 5
25common_diff = 3
26num_terms = 10
27
28sequence = generate_arithmetic_sequence(first_term, common_diff, num_terms)
29print("Jujukan Aritmetik:")
30for i, term in enumerate(sequence, 1):
31 print(f"Term {i}: {term}")
32
33# Kira term tertentu
34term_10 = nth_term(first_term, common_diff, 10)
35print(f"\nTerm ke-10 adalah: {term_10}")
361function generateArithmeticSequence(firstTerm, commonDifference, numTerms) {
2 /**
3 * Hasilkan jujukan aritmetik.
4 * @param {number} firstTerm - Term pertama jujukan
5 * @param {number} commonDifference - Perbezaan malar antara term
6 * @param {number} numTerms - Bilangan term untuk dijana
7 * @returns {Array} Senarai yang mengandungi jujukan aritmetik
8 */
9 const sequence = [];
10 for (let n = 1; n <= numTerms; n++) {
11 const term = firstTerm + (n - 1) * commonDifference;
12 sequence.push(term);
13 }
14 return sequence;
15}
16
17function nthTerm(firstTerm, commonDifference, n) {
18 /**
19 * Kira term ke-n dari jujukan aritmetik.
20 */
21 return firstTerm + (n - 1) * commonDifference;
22}
23
24// Contoh penggunaan:
25const firstTerm = 5;
26const commonDiff = 3;
27const numTerms = 10;
28
29const sequence = generateArithmeticSequence(firstTerm, commonDiff, numTerms);
30console.log("Jujukan Aritmetik:");
31sequence.forEach((term, index) => {
32 console.log(`Term ${index + 1}: ${term}`);
33});
34
35// Kira term tertentu
36const term10 = nthTerm(firstTerm, commonDiff, 10);
37console.log(`\nTerm ke-10 adalah: ${term10}`);
381public class ArithmeticSequenceGenerator {
2
3 /**
4 * Hasilkan jujukan aritmetik.
5 * @param firstTerm Term pertama jujukan
6 * @param commonDifference Perbezaan malar antara term berturutan
7 * @param numTerms Bilangan term untuk dijana
8 * @return Senarai yang mengandungi jujukan aritmetik
9 */
10 public static double[] generateArithmeticSequence(double firstTerm,
11 double commonDifference,
12 int numTerms) {
13 double[] sequence = new double[numTerms];
14 for (int n = 1; n <= numTerms; n++) {
15 sequence[n - 1] = firstTerm + (n - 1) * commonDifference;
16 }
17 return sequence;
18 }
19
20 /**
21 * Kira term ke-n dari jujukan aritmetik.
22 */
23 public static double nthTerm(double firstTerm, double commonDifference, int n) {
24 return firstTerm + (n - 1) * commonDifference;
25 }
26
27 public static void main(String[] args) {
28 double firstTerm = 5.0;
29 double commonDiff = 3.0;
30 int numTerms = 10;
31
32 double[] sequence = generateArithmeticSequence(firstTerm, commonDiff, numTerms);
33
34 System.out.println("Jujukan Aritmetik:");
35 for (int i = 0; i < sequence.length; i++) {
36 System.out.printf("Term %d: %.2f%n", i + 1, sequence[i]);
37 }
38
39 // Kira term tertentu
40 double term10 = nthTerm(firstTerm, commonDiff, 10);
41 System.out.printf("%nTerm ke-10 adalah: %.2f%n", term10);
42 }
43}
44Contoh-contoh ini menunjukkan cara menghasilkan jujukan aritmetik dan mengira term tertentu menggunakan pelbagai bahasa pengaturcaraan. Setiap implementasi mengikuti formula matematik yang sama dan boleh disesuaikan dengan keperluan khusus anda atau diintegrasikan ke dalam aplikasi yang lebih besar.
Mengira satu per satu: a₁ = 1, d = 1, n = 10 → Hasil: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Pengiraan melompat: a₁ = 5, d = 3, n = 8 → Hasil: 5, 8, 11, 14, 17, 20, 23, 26
Urutan kauntan balik: a₁ = 50, d = -5, n = 10 → Hasil: 50, 45, 40, 35, 30, 25, 20, 15, 10, 5 (Berguna untuk paparan pemasa atau pengurangan inventori)
Melintasi sifar: a₁ = -10, d = 4, n = 7 → Hasil: -10, -6, -2, 2, 6, 10, 14 (Perubahan suhu, perubahan ketinggian di bawah/di atas paras laut)
Ketepatan perpuluhan: a₁ = 2.5, d = 0.5, n = 6 → Hasil: 2.5, 3.0, 3.5, 4.0, 4.5, 5.0 (Pengukuran saintifik, pengiraan mata wang)
Jujukan malar: a₁ = 7, d = 0, n = 5 → Hasil: 7, 7, 7, 7, 7 (Secara teknikal sah—perbezaan sentiasa sifar)
Pelan simpanan bulanan: a₁ = 100, d = 25, n = 12 → Hasil: 100, 125, 150, 175, 200, 225, 250, 275, 300, 325, 350, 375 (Bulan pertama simpan 25 sebulan)
Jadual mesyuarat: a₁ = 9.0, d = 1.5, n = 5 → Hasil: 9.0, 10.5, 12.0, 13.5, 15.0 (Mesyuarat pada 9:00 pagi, 10:30 pagi, 12:00 tengah hari, 1:30 petang, 3:00 petang)
Nombor genap: a₁ = 2, d = 2, n = 10 → Hasil: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20
Nombor ganjil: a₁ = 1, d = 2, n = 10 → Hasil: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19
Senarai nombor di mana anda menambah (atau menolak) jumlah yang sama setiap kali. Dalam jujukan 2, 5, 8, 11, anda menambah 3 berulang kali—itulah perbezaan biasa anda.
Gunakan rumus a_n = a₁ + (n-1) × d. Mahu sebutan ke-50 dalam jujukan yang bermula pada 3 dengan perbezaan 7? Itu adalah 3 + (49 × 7) = 346. Tiada keperluan untuk menulis kesemua 50 sebutan.
Jujukan aritmetik menambah nilai yang sama setiap kali (2, 5, 8, 11...). Jujukan geometri mendarab dengan nilai yang sama setiap kali (2, 6, 18, 54...). Fikirkan ia sebagai penambahan lwn. pendaraban—pertumbuhan linear lwn. eksponen.
Sudah tentu. Kedua-dua nilai permulaan negatif dan perbezaan biasa negatif berfungsi dengan baik. Jujukan -10, -6, -2, 2, 6 mempunyai d = 4. Kira menurun seperti 100, 90, 80, 70 mempunyai d = -10.
Gunakan S_n = n/2 × (a₁ + a_n)—iaitu bilangan sebutan didarab dengan purata sebutan pertama dan terakhir. Untuk jujukan 1 hingga 100, itu adalah 100/2 × (1 + 100) = 5,050. Inilah helah yang digunakan Gauss semasa kecil.
Sentiasa. Sebarang situasi dengan perubahan tetap dan seragam: menjimatkan tambahan $50 setiap bulan, menjadualkan acara setiap 2 jam, mengukur suhu setiap 30 minit, atau merancang pembayaran yang meningkat dengan jumlah tetap.
Ya, kedua-dua sebutan pertama dan perbezaan biasa menerima perpuluhan. Jujukan 2.5, 3.0, 3.5, 4.0 (d = 0.5) adalah sah sepenuhnya. Ini sering berlaku dalam pengukuran saintifik dan pengiraan kewangan.
Tolak mana-mana sebutan daripada sebutan seterusnya: d = a₂ - a₁. Dalam jujukan 7, 12, 17, 22, anda mendapat 12 - 7 = 5, jadi d = 5. Semak dengan mengesahkan bahawa 17 - 12 juga bersamaan dengan 5.
Kalkulator menyokong sehingga 10,000 sebutan. Melebihi itu, prestasi rendering pelayar menjadi isu. Untuk kebanyakan aplikasi praktikal, anda jarang memerlukan lebih daripada beberapa ratus sebutan.
Temui lebih banyak alat yang mungkin berguna untuk aliran kerja anda