dalam barisan berikut, bilangan manakah yang harus dihilangkan atau diganti, agar menjadi barisan bilangan?
barisan tersebut merupakan barisan aritmetika bertingkat. perhatikan aturan pembentukan dari barisan tersebut.





pada tingat pertama, aturan pembentukannya untuk suku ke-1 sampai suku ke-5 adalah tambahkan bilangan asli mulai dari 2. ada perbedaan aturan pembentukan di suku ke-6.

hal ini juga terlihat pada tingkat kedua, aturan pembentukannya adalah tambahkan 1 untuk suku berikutnya, namun pada beda terakhir adalah 0.

seharusnya suku ke-6 adalah:





barisannya akan menjadi seperti ini:





jadi bilangan yang harus diganti adalah suku ke-6, yaitu bilangan 20 diganti menjadi bilangan 21. barisannya akan menjadi .
<p>semuanya sesuai dengan standar ansi:</p><p> <a href="http://support.microsoft.com/kb/316626">trailing blank menjelaskan</a> :</p><blockquote> <p>sql server mengikuti spesifikasi ansi/iso sql-92 (bagian 8.2, aturan umum # 3) tentang cara membandingkan string dengan spasi. standar ansi membutuhkan padding untuk string karakter yang digunakan dalam perbandingan sehingga panjangnya cocok sebelum membandingkannya. padding secara langsung mempengaruhi semantik predikat klausa where dan having dan perbandingan string transact-sql lainnya. sebagai contoh, transact-sql menganggap string 'abc' dan 'abc' setara untuk sebagian besar operasi perbandingan.</p> <p>satu-satunya pengecualian untuk aturan ini adalah predikat like. ketika sisi kanan dari ekspresi predikat like fitur nilai dengan spasi tambahan, sql server tidak memadatkan dua nilai dengan panjang yang sama sebelum perbandingan terjadi. karena tujuan dari predikat like, menurut definisi, adalah untuk memfasilitasi pencarian pola daripada tes persamaan string sederhana, ini tidak melanggar bagian dari spesifikasi ansi sql-92 yang disebutkan sebelumnya.</p> </blockquote><p>berikut adalah contoh umum dari semua kasus yang disebutkan di atas:</p><pre><code>declare @a varchar(10) declare @b varchar(10) set @a = '1' set @b = '1 ' --with trailing blank select 1 where @a = @b and @a not like @b and @b like @a </code></pre><p>inilah beberapa detail lebih lanjut tentang <a href="http://msdn.microsoft.com/en-us/library/ms179859.aspx">mengeklik kosong dan klausa <code>like</code></a> .</p><p><strong> [~ # ~] tetapi [~ # ~] </strong> jika anda ingin membuatnya berbeda - anda dapat memutuskan untuk menggunakan fungsi <code>datalength</code> alih-alih <code>len</code>, karena</p><pre><code>select 1 where len('john ') = len('john') </code></pre><p>akan menempatkan anda 1 sebagai gantinya</p><pre><code>select 1 where datalength('john ') = datalength('john') </code></pre><p><strong> solusinya </strong> adalah</p><ul> <li>untuk menggunakan fungsi datalength untuk membedakan antara string</li> <li>untuk memasukkan string ke dalam tipe nvarchar - mungkin lebih baik menyatakan tipe ini ke parameter sp</li> </ul> <p>tidak yakin tetapi gunakan ekstensi joomla rereplacer ini</p><p>lihat tautan ini,</p><p> <a href="http://www.nonumber.nl/extensions/rereplacer">http://www.nonumber.nl/extensions/rereplacer</a> </p><p>jika tidak, template override adalah satu-satunya cara untuk melakukan ini.</p> <p>anda bisa mengurutkan kolom ke dalam format menurun dan kemudian hanya mendapatkan nilai dari baris ke-n.</p><p>edit ::</p><p>diperbarui sesuai permintaan komentar.<strong> <em>peringatan</em> </strong>benar-benar belum diuji!</p><pre><code>select dob from (select dob from users order by dob desc) where rowid = 6 </code></pre><p>sesuatu seperti di atas seharusnya bekerja untuk oracle ... anda mungkin harus mendapatkan sintaksnya terlebih dahulu!</p> <p>anda bisa mengatur variabel <a href="http://en.wikipedia.org/wiki/internal\_field\_separator">bidang pemisah internal</a> (ifs) variabel, dan kemudian membiarkannya mengurai menjadi array. ketika ini terjadi dalam suatu perintah, maka penugasan ke <code>ifs</code> hanya terjadi pada lingkungan perintah tunggal itu (ke <code>read</code>). ini kemudian mem-parsing input sesuai dengan nilai variabel <code>ifs</code> ke dalam array, yang kemudian dapat kita iterate.</p><pre><code>ifs=';' read -ra addr &lt;&lt;&lt; "$in" for i in "${addr[@]}"; do # process "$i" done </code></pre><p>ini akan mengurai satu baris item yang dipisahkan oleh <code>;</code>, mendorongnya ke dalam array. hal-hal untuk memproses seluruh <code>$in</code>, setiap kali satu baris input dipisahkan oleh <code>;</code>:</p><pre><code> while ifs=';' read -ra addr; do for i in "${addr[@]}"; do # process "$i" done done &lt;&lt;&lt; "$in" </code></pre> <p>perintah <kbd>d</kbd><kbd>w</kbd> akan menghapus dari posisi kursor saat ini ke awal karakter word berikutnya. perintah <kbd>d</kbd><kbd>$</kbd> (perhatikan, itu tanda dolar, bukan tanda 's') akan dihapus dari posisi kursor saat ini ke akhir baris saat ini. <kbd>d</kbd> adalah sinonim untuk <kbd>d</kbd><kbd>$</kbd>.</p> <p>shmuel613, akan lebih baik untuk memperbarui pertanyaan awal anda daripada menjawab. lebih baik jika ada satu tempat yang berisi pertanyaan lengkap daripada menyebar dalam diskusi.</p><p>jawaban ben masuk akal, kecuali ia tampaknya memiliki 'tidak' di mana ia tidak menginginkannya. menjatuhkan tabel hanya jika<strong> tidak </strong>ada tidak tepat.</p><p>anda memang membutuhkan banyak pernyataan. buat dengan kondisional lalu isi:</p><ol> <li>buat tabel sementara jika tidak ada fubar (id int, name varchar (80))</li> <li>truncate table fubar</li> <li>masukkan ke dalam fubar pilih * dari barfu</li> </ol><p>atau cukup jatuhkan dan buat ulang</p><ol> <li>drop tabel jika ada fubar</li> <li>buat tabel sementara id select fubar, nama dari barfu</li> </ol><p>dengan sql murni itu adalah dua kelas solusi nyata anda. saya suka yang kedua lebih baik.</p><p>(dengan prosedur tersimpan anda bisa menguranginya menjadi satu pernyataan. sesuatu seperti: truncateandpopulate (fubar) tetapi pada saat anda menulis kode untuk truncateandpopulate () anda akan menghabiskan lebih banyak waktu daripada hanya menggunakan sql di atas.)</p> <pre><code>select id, name, score, find\_in\_set( score, ( select group\_concat( score order by score desc ) from scores ) ) as rank from scores </code></pre><p>berikan daftar ini:</p><pre><code>id name score rank 1 ida 100 2 2 boo 58 5 3 lala 88 4 4 bash 102 1 5 assem 99 3 </code></pre><p>mendapatkan skor satu orang:</p><pre><code>select id, name, score, find\_in\_set( score, ( select group\_concat( score order by score desc ) from scores ) ) as rank from scores where name = 'assem' </code></pre><p>memberikan hasil ini:</p><pre><code>id name score rank 5 assem 99 3 </code></pre><p>anda akan memiliki satu pemindaian untuk mendapatkan daftar skor, dan pemindaian lainnya atau berusaha melakukan sesuatu yang bermanfaat dengannya. indeks pada kolom <code>score</code> akan membantu kinerja pada tabel besar.</p> <p>pertimbangkan untuk membuat tabel baru dengan skema yang sama ditambah kolom versi baris, dan tambahkan tampilan di atas kedua tabel yang melakukan gabungan semua. mintalah orang lain menggunakan tampilan, dan menulis alih-alih pemicu terhadap tabel &amp; tampilan yang mendasarinya.</p><p>sisipan harus dikirim ke tabel baru, pembaruan harus memindahkan data ke tabel baru, dan penghapusan harus diterapkan ke kedua tabel.</p><p>kemudian lakukan gerakan batch di latar belakang, pindahkan sebanyak mungkin catatan sekaligus ke tabel yang baru. anda masih dapat memiliki masalah konkurensi saat ini sedang berlangsung, dan beberapa rencana eksekusi craptacular, tetapi ini memungkinkan anda tetap online saat gerakan sedang berlangsung.</p><p>idealnya, anda memulai proses pada hari jumat sore untuk meminimalkan efek pada pengguna akhir, dan mencoba menyelesaikannya sebelum senin pagi. setelah siap, anda dapat mengubah tampilan menjadi hanya tabel baru, dan rencana eksekusi craptacular hilang. idealnya.</p><p>untuk menghindari pemicu pemicu saat data dimigrasi dalam kumpulan, lihat jumlah baris dalam tabel yang dihapus/dimasukkan dalam pemicu, dan lewati aktivitas jika mendekati jumlah baris dalam kumpulan anda.</p><hr><p>pada akhirnya, michael memutuskan untuk melewatkan tampilan (dan tidak menghapus dari tabel asli) untuk mendapatkan rencana yang lebih stabil. trade off pada dasarnya memegang dua salinan tabel. dia mengubahnya menjadi <a href="http://michaeljswart.com/2012/04/modifying-tables-online-part-1-migration-strategy/">serangkaian posting blog</a> .</p> <p>dengan asumsi anda ingin menimpa nilai sebelumnya dari objek yang dirujuk oleh <code>a</code>, maka fungsi anggota harus dipanggil.</p><pre><code>complex a, b, c; // ... a = b.add(c); </code></pre><p>dalam c++, ekspresi ini memberitahu kompiler untuk membuat tiga (3) objek pada stack, melakukan penambahan, dan<em> menyalin </em>nilai yang dihasilkan dari objek sementara ke objek yang ada <code>a</code>.</p><p>namun, di java, <code>operator=</code> tidak melakukan penyalinan nilai untuk tipe referensi, dan pengguna hanya dapat membuat tipe referensi baru, bukan tipe nilai. jadi untuk jenis yang ditentukan pengguna bernama <code>complex</code>, penugasan berarti menyalin referensi ke nilai yang ada.</p><p>pertimbangkan sebagai gantinya:</p><pre><code>b.set(1, 0); // initialize to real number '1' a = b; b.set(2, 0); assert( !a.equals(b) ); // this assertion will fail </code></pre><p>dalam c++, ini menyalin nilainya, sehingga perbandingannya akan menghasilkan tidak sama. di jawa, <code>operator=</code> melakukan salinan referensi, jadi <code>a</code> dan <code>b</code> sekarang merujuk pada nilai yang sama. akibatnya, perbandingan akan menghasilkan 'sama', karena objek akan dibandingkan dengan dirinya sendiri.</p><p>perbedaan antara salinan dan referensi hanya menambah kebingungan kelebihan operator. seperti yang disebutkan @sebastian, java dan c # keduanya harus berurusan dengan nilai dan persamaan referensi secara terpisah - <code>operator+</code> kemungkinan akan berurusan dengan nilai dan objek, tetapi <code>operator=</code> sudah diterapkan untuk menangani referensi.</p><p>di c++, anda hanya harus berurusan dengan satu jenis perbandingan pada satu waktu, sehingga bisa kurang membingungkan. misalnya, pada <code>complex</code>, <code>operator=</code> dan <code>operator==</code> keduanya bekerja pada nilai - nilai penyalinan dan nilai masing-masing membandingkan.</p> <p>dua arah. simbol (notasi <code>:foo</code>) atau konstanta (notasi <code>foo</code>).</p><p>simbol sesuai ketika anda ingin meningkatkan keterbacaan tanpa mengotori kode dengan string literal.</p><pre><code>postal\_code[:minnesota] = "mn" postal\_code[:new\_york] = "ny" </code></pre><p>konstanta sesuai ketika anda memiliki nilai dasar yang penting. hanya mendeklarasikan modul untuk memegang konstanta anda dan kemudian mendeklarasikan konstanta di dalamnya.</p><pre><code>module foo bar = 1 baz = 2 biz = 4 end flags = foo::bar | foo::baz # flags = 3 </code></pre>