Dalam matematik, jujukan "lihat-dan-kata" ialah jujukan integer yang bermula seperti berikut -
1, 11, 21, 1211, 111221, 312211, …
Untuk menjana ahli jujukan daripada ahli sebelumnya, kita membaca nombor tersebut daripada ahli sebelumnya dan mengira sama Bilangan digit dalam kumpulan digit.
Sebagai contoh, nombor seterusnya kepada 1211 ialah -
111221
Sebab jika kita membaca nombor 1211 dengan kuat, ia akan menjadi -
One one, one two, two one which gives us 111221
Kita perlu menulis fungsi JavaScript yang menerima nombor n dan mengembalikan "look thelook and katakan" N item pertama bagi jujukan.
Berikut ialah kod-
Demonstrasi langsung
const num = 12; const generateSequence = (num = 1) => { const lookAndSay = (val) => { let res = ''; let chars = (val + ' ').split(''); let last = chars[0]; let count = 0; chars.forEach(c => { if(c === last){ count++; }else{ res += (count + '') + last; last = c; count = 1; }; }); return res; } let start = 1; const res = []; for(let i = 0; i < num; i++){ res.push(String(start)); start = lookAndSay(start); }; return res; }; console.log(generateSequence(num));
Berikut ialah output konsol-
[ '1', '11', '21', '1211', '111221', '312211', '13112221', '1113213211', '31131211131221', '13211311123113112211', '11131221133112132113212221', '3113112221232112111312211312113211' ]
Atas ialah kandungan terperinci Hasilkan jujukan n pertama melihat dan menyebut nombor dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!