Hướng dẫn how do i write a javascript array to add positive and negative numbers? - làm cách nào để viết một mảng javascript để thêm các số dương và âm?
Vấn đềChúng tôi được yêu cầu viết một hàm JavaScript có trong một loạt các số (dương và âm). Hàm của chúng tôi nên tính toán và trả về tổng của tất cả các số dương có trong mảng. Show Thí dụSau đây là mã - & nbsp; bản demo trực tiếp const arr = [5, -5, -3, -5, -7, -8, 1, 9]; const sumPositives = (arr = []) => { const isPositive = num => typeof num === 'number' && num > 0; const res = arr.reduce((acc, val) => { if(isPositive(val)){ acc += val; }; return acc; }, 0); return res; }; console.log(sumPositives(arr)); Đầu raSau đây là đầu ra bảng điều khiển - 15
Cập nhật vào ngày 17 tháng 4 năm 2021 11:54:20
Chúng ta phải viết một hàm có trong một mảng và trả về một đối tượng có hai thuộc tính là tích cực và tiêu cực. Cả hai nên là một mảng chứa tất cả các mục tích cực và tiêu cực tương ứng từ mảng. Cái này khá đơn giản, chúng ta sẽ sử dụng phương thức mảng.prototype.Reduce () để chọn các phần tử mong muốn và đưa chúng vào một đối tượng của hai mảng. Thí dụconst arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); } Đầu raĐầu ra trong bảng điều khiển sẽ là - { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }
Cập nhật vào ngày 21 tháng 8 năm 2020 14:48:57
Xem thảo luận Cải thiện bài viết Lưu bài viết Xem thảo luận Cải thiện bài viết Lưu bài viết Đọc Bàn luậnMột mảng chứa cả số dương và số âm theo thứ tự ngẫu nhiên. Sắp xếp lại các phần tử mảng để các số dương và âm được đặt thay thế. Số lượng số dương và âm không cần phải bằng nhau. Nếu có nhiều số tích cực hơn, chúng xuất hiện ở cuối mảng. Nếu có nhiều số âm hơn, chúng cũng xuất hiện ở cuối mảng. Ví dụ, nếu mảng đầu vào là [-1, 2, -3, 4, 5, 6, -7, 8, 9], thì Đầu ra phải là [9, -7, 8, -3, 5, -1, 2, 4, 6] Lưu ý: Quá trình phân vùng thay đổi thứ tự tương đối của các yếu tố. I E. Thứ tự xuất hiện của các yếu tố không được duy trì với phương pháp này. Xem điều này để duy trì thứ tự xuất hiện của các yếu tố trong vấn đề này. Giải pháp trước tiên là riêng biệt các số dương và âm sử dụng quá trình phân vùng của QuickSort. Trong quá trình phân vùng, hãy xem xét 0 là giá trị của phần tử trục để tất cả các số âm được đặt trước các số dương. Khi các số âm và dương được phân tách, chúng tôi bắt đầu từ số âm đầu tiên và số dương đầu tiên và hoán đổi mỗi số âm thay thế với số dương tiếp theo. & NBSP; & NBSP;
150 151 152 JavaScript 151 150
158 150 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }3 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }4 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }3 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }6 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }3 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }8 151 154 155 158 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }2 151 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }2 151 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }6 158 159 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }0 151 150 158 4 -3 5 -1 6 -7 2 8 93 158 4 -3 5 -1 6 -7 2 8 95 158 4 -3 5 -1 6 -7 2 8 97 158 4 -3 5 -1 6 -7 2 8 99 158 1151 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }2
{ positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }2 const arr = [ [12, -45, 65, 76, -76, 87, -98], [54, -65, -98, -23, 78, -9, 1, 3], [87, -98, 3, -2, 123, -877, 22, -5, 23, -67] ]; const splitArray = (arr) => { return arr.reduce((acc, val) => { if(val < 0){ acc['negative'].push(val); } else { acc['positive'].push(val); } return acc; }, { positive: [], negative: [] }) }; for(let i = 0; i < arr.length; i++){ console.log(splitArray(arr[i])); }3 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }0
150 151 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }8 { positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }9 158 5 6 7
{ positive: [ 12, 65, 76, 87 ], negative: [ -45, -76, -98 ] } { positive: [ 54, 78, 1, 3 ], negative: [ -65, -98, -23, -9 ] } { positive: [ 87, 3, 123, 22, 23 ], negative: [ -98, -2, -877, -5, -67 ] }2 151 function 1151 function 3
151 function 7
Output: 4 -3 5 -1 6 -7 2 8 9
151 function 5Làm thế nào để bạn thêm một số dương và một số âm?Thêm số dương và âm.. Quy tắc 1: Thêm các số dương vào các số dương, đó chỉ là bổ sung bình thường .. Quy tắc 2: Thêm các số dương vào các số âm. Quy tắc 3: Thêm số âm vào các số dương, có giá ngược, như thể bạn đang trừ .. Làm thế nào để bạn tổng hợp một mảng trong javascript?Để lấy tổng của một mảng số: Sử dụng phương thức mảng.Reduce () để lặp qua mảng. Đặt giá trị ban đầu trong phương thức giảm xuống 0. Trên mỗi lần lặp, hãy trả lại tổng của giá trị tích lũy và số hiện tại.Use the Array. reduce() method to iterate over the array. Set the initial value in the reduce method to 0 . On each iteration, return the sum of the accumulated value and the current number.
Làm thế nào để bạn sắp xếp một mảng với số âm và dương?Khai báo một mảng và nhập các phần tử mảng.Bắt đầu đi qua mảng và nếu phần tử hiện tại là dương, đi qua phần tử tiếp theo trong mảng.Nếu phần tử hiện tại là âm, hãy thay đổi các phần tử dương theo một vị trí và chèn số âm trong mảng chuỗi [0 sang N-1].If the current element is negative, right shift the positive elements by one position and insert the negative number in the sequence array[0 to n-1].
Bạn có thể đặt số âm trong một mảng không?Không, bạn không thể sử dụng một số nguyên âm làm kích thước, kích thước của một mảng đại diện cho số lượng phần tử trong đó, số phần tử của một mảng không có ý nghĩa gì., the size of an array represents the number of elements in it, –ve number of elements in an array makes no sense. |