Mẫu tích lũy JavaScript

Các ngôn ngữ lập trình bắt buộc, chẳng hạn như C, C#, Java, C++ và nhiều ngôn ngữ khác cho phép sửa đổi giá trị của một biến. Chúng tôi sử dụng khả năng thay đổi này trong mẫu bộ tích lũy, để bắt đầu một biến, bộ tích lũy, tại một giá trị và sửa đổi nó nếu cần, để câu trả lời mà chúng tôi đang tìm kiếm xuất hiện sau khi mẫu bộ tích lũy hoàn thành

Khi chúng ta cần xác định trạng thái hoặc giá trị của một thứ gì đó bằng logic có điều kiện hoặc tìm kiếm lặp lại, chúng ta có thể sử dụng mẫu tích lũy

Mô hình tích lũy có hai phần cơ bản

  • Khai báo một biến đóng vai trò là bộ tích lũy — và khởi tạo bộ tích lũy với một giá trị mặc định có ý nghĩa,

  • Kiểm tra một số điều kiện — và thay đổi bộ tích lũy dựa trên điều kiện mong muốn

Trong quá trình thực hiện hai phần này, bộ tích lũy đang trong quá trình nhận câu trả lời đúng — nó không nhất thiết phải đúng của con dơi, nhưng nó sẽ thay đổi để khi các phần này hoàn thành, biến bộ tích lũy sẽ giữ câu trả lời cho chúng ta.

Dưới đây là một số ví dụ

Một ví dụ đơn giản là xác định xem một trong các điều kiện có đúng hay không

bool answer = false;
if [ condition ] answer = true;
else if [ otherCondition ] answer = true;

Trong quá trình thực hiện các phần, biến tích lũy [ở đây là answer] bắt đầu là sai, được cập nhật trong phần điều kiện và cuối cùng giữ câu trả lời quan tâm

Ok, đó là một ví dụ đơn giản, đây là một số ví dụ dễ nhận biết hơn

TỔNG

Để tính TỔNG của một chuỗi giống như một mảng, chúng ta khởi tạo một bộ tích lũy thành 0, là giá trị nhận dạng cộng và sau đó, đối với mỗi phần tử trong chuỗi, chúng ta thêm vào bộ tích lũy [ở đây đã cho mảng A và độ dài N]

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
PHÚT

Để tính toán MIN của một chuỗi giống như một mảng, chúng ta khởi tạo một bộ tích lũy thành MAX_INT, đây là số nguyên lớn nhất có thể, sau đó, đối với mỗi phần tử trong chuỗi, chúng ta sẽ nắm bắt nó nếu nó nhỏ hơn những gì chúng ta có hiện tại

int min = MAX_INT;
for [ int i = 0; i < N; i++ ]
    if [ A [ i ] < min ]
        min = A [ i ];
MAX

Để tính TỐI ĐA của một chuỗi giống như một mảng, chúng ta khởi tạo một bộ tích lũy thành

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
0, đây là số nguyên lớn nhất có thể, sau đó, đối với mỗi phần tử trong chuỗi, chúng ta sẽ xem nếu nó lớn hơn những gì chúng ta có hiện tại

int max = MIN_INT;
for [ int i = 0; i < N; i++ ]
    if [ A [ i ] > max ]
        max = A [ i ];
AVG

Để tính trung bình [AVG], chúng tôi thực hiện SUM và chia cho số lượng

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
double avg = sum / N;

Mẫu tích lũy có thể được áp dụng cho nhiều tính toán. Điều quan trọng cần nhận ra là bộ tích lũy không "đúng" cho đến khi cả hai phần kết thúc

thuật toánCAssembly

Bài báo cáo

Thưởng thức bài viết này?

2

2

Chia sẻ

Erik Eidt

Hợp ngữ, Mã máy, Kiến trúc bộ xử lý

Tôi là một chuyên gia về ngôn ngữ lắp ráp, gần đây đã được cố vấn về MIPS, LC-3&4, MARIE, PEP/8&9, các ngôn ngữ khác. Tôi sẽ giải thích các khái niệm và nguyên tắc cơ bản mà bạn cần biết. Ví dụ. cách thức hoạt động của bộ xử lý;

Kết hợp toán tử

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
1 với phép nối chuỗi bằng cách sử dụng
int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
2 và mẫu bộ tích lũy, chúng ta có thể viết một hàm loại bỏ tất cả các nguyên âm khỏi một chuỗi. Ý tưởng là bắt đầu bằng một chuỗi và lặp lại từng ký tự, kiểm tra xem ký tự đó có phải là nguyên âm không. Khi chúng tôi xử lý các ký tự, chúng tôi sẽ xây dựng một chuỗi mới chỉ bao gồm các ký tự không nguyên âm. Để làm điều này, chúng tôi sử dụng mẫu tích lũy

Hãy nhớ rằng mô hình tích lũy cho phép chúng tôi giữ “tổng số đang chạy”. Với các chuỗi, chúng tôi không tích lũy tổng số. Thay vào đó, chúng tôi đang tích lũy các ký tự vào một chuỗi

Dòng 5 sử dụng toán tử

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
3 để kiểm tra xem ký tự hiện tại không có trong chuỗi
int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
4. Cách thay thế cho việc sử dụng toán tử này là viết một câu lệnh
int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
5 rất lớn để kiểm tra từng ký tự nguyên âm riêng lẻ. Lưu ý rằng chúng tôi sẽ cần sử dụng logic
int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
6 để đảm bảo rằng ký tự không phải là bất kỳ nguyên âm nào

if eachChar != 'a'  and eachChar != 'e'  and eachChar != 'i'  and
   eachChar != 'o'  and eachChar != 'u'  and eachChar != 'A'  and
   eachChar != 'E'  and eachChar != 'I'  and eachChar != 'O'  and
   eachChar != 'U':

     sWithoutVowels = sWithoutVowels + eachChar

Xem kỹ dòng 6 trong chương trình trên [______17]. Chúng tôi sẽ làm điều này cho mọi ký tự không phải là nguyên âm. Điều này sẽ trông rất quen thuộc. Như chúng tôi đã mô tả trước đó, đây là một ví dụ về mẫu tích lũy, lần này sử dụng một chuỗi để “tích lũy” kết quả cuối cùng. Nói cách khác, nó nói rằng giá trị mới của

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
8 sẽ là giá trị cũ của
int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
8 được nối với giá trị của
s = "ball"
r = ""
for item in s:
    r = item.upper[] + r
print[r]
1. Chúng tôi đang xây dựng ký tự chuỗi kết quả theo ký tự

Hãy xem kỹ quá trình khởi tạo của

int sum = 0;
for [ int i = 0; i < N; i++ ]
    sum += A [ i ];
8. Chúng tôi bắt đầu với một chuỗi trống và sau đó bắt đầu thêm các ký tự mới vào cuối

Bước qua chức năng bằng cách sử dụng codelens để xem biến tích lũy tăng lên

Hoạt động. MãLens 9. 14. 2 [ch08_acc2]

Kiểm tra việc hiểu của bạn

    Những gì được in bởi các tuyên bố sau đây

    s = "ball"
    r = ""
    for item in s:
        r = item.upper[] + r
    print[r]
    

  • Trái bóng
  • Mỗi mục được chuyển đổi thành chữ hoa trước khi nối
  • TRÁI BÓNG
  • Mỗi ký tự được chuyển đổi thành chữ hoa nhưng thứ tự sai
  • LLAB
  • Có, thứ tự bị đảo ngược do thứ tự nối

Ghi chú

Không gian làm việc này được cung cấp để thuận tiện cho bạn. Bạn có thể sử dụng cửa sổ mã kích hoạt này để thử bất cứ thứ gì bạn thích

Mẫu tích lũy trong Javascript là gì?

Mô hình này khởi tạo một biến thành một số giá trị cơ bản hoặc giá trị trống và cập nhật biến đó trong một vòng lặp thường được gọi là bộ tích lũy . Chúng tôi gọi biến là bộ tích lũy. Trong ví dụ trên, tổng là bộ tích lũy và nó "tích lũy" từng số nguyên riêng lẻ.

Mô hình tích lũy là gì?

Một “mẫu” lập trình phổ biến là đi qua một chuỗi, tích lũy một giá trị khi chúng ta di chuyển, chẳng hạn như tổng cho đến nay hoặc giá trị lớn nhất cho đến nay. That way, at the end of the traversal we have accumulated a single value, such as the sum total of all the items or the largest item.

Mã hóa bộ tích lũy là gì?

Bộ tích lũy chủ yếu được sử dụng làm thanh ghi trong CPU để lưu trữ dữ liệu logic hoặc số học trung gian trong phép tính nhiều bước . Đối với các tính toán như vậy, nó hoạt động như một vị trí lưu trữ tạm thời.

Một mảng tích lũy là gì?

Mẫu bộ tích lũy là một cách xây dựng hoặc tích lũy dữ liệu . Ví dụ đơn giản nhất về bộ tích lũy là một vòng lặp trên Mảng số để tính tổng các giá trị của chúng. Ở đây chúng tôi đang giảm một Mảng các phần tử số thành một phần tử số duy nhất.

Chủ Đề