MModuloSprig
Không gian lập trình với AI

Lũy thừa môđun số nguyên

Tính lũy thừa nguyên theo môđun nguyên dương bằng bình phương lặp.

● ● ●ModuloSprig●
Quy trình · Lũy thừa môđun số nguyên ×
def mod_power(base, exponent, modulus):
    if any(type(v) is not int for v in (base, exponent, modulus)):
        raise ValueError("operand.integer")
    if exponent < 0 or modulus <= 0:
        raise ValueError("operand.range")
    result = 1 % modulus
    base %= modulus
    while exponent:
        if exponent & 1:
            result = result * base % modulus
        base = base * base % modulus
        exponent >>= 1
    return result
✳Tính lũy thừa nguyên theo môđun nguyên dương bằng bình phương lặp.
✓ Thay đổiKiểm tra trước khi áp dụng ↗
Minh họa không gian làm việc
01

Kiểm tra trước khi áp dụng

So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.

02

Mô hình

Cấu hình endpoint tương thích OpenAI hoặc Anthropic bằng URL cơ sở và khóa API nếu cần. Kiểm tra kết nối. Máy chủ mô hình cục bộ phải đang chạy; công cụ từ xa có thể truyền dữ liệu riêng.

03

Dự án

Kiểm tra cơ số âm, số mũ không và môđun một, từ chối số mũ âm và toán hạng không nguyên hoặc Boolean trước khi nhân.

Quy trình

Lũy thừa môđun số nguyên

Quy trình ↗
Quy trình
def mod_power(base, exponent, modulus):
    if any(type(v) is not int for v in (base, exponent, modulus)):
        raise ValueError("operand.integer")
    if exponent < 0 or modulus <= 0:
        raise ValueError("operand.range")
    result = 1 % modulus
    base %= modulus
    while exponent:
        if exponent & 1:
            result = result * base % modulus
        base = base * base % modulus
        exponent >>= 1
    return result
Không gian lập trình với AI

Xác định rõ vai trò hàm hỗ trợ số học trong ứng dụng

ModuloSprig là không gian lập trình Windows cho nhà phát triển cần thay đổi số học phù hợp chương trình hiện có. Bắt đầu từ thư mục nguồn và kỳ vọng mã gọi: toán hạng nào đến, kết quả nào là thành công và cách báo giá trị không hợp lệ. Ngữ cảnh đó cho mô hình mục tiêu hữu ích hơn việc viết lại hàm ngắn.

Trong tác vụ với mod_power.py, bạn có thể yêu cầu rà soát số mũ không âm và mô-đun dương trước khi cân nhắc tái cấu trúc. Cung cấp ví dụ số mũ không và kết quả mong đợi khi mô-đun bằng một. Sau đó xem đề xuất giữ cả quy ước trả về lẫn hành vi từ chối được dùng nơi khác trong dự án không.

Dùng trao đổi để tìm giả định cần kiểm thử độc lập. Chạy chỉnh sửa đề xuất với các kiểm tra của dự án và so sánh ca nhỏ với kết quả đã biết. Nếu mã gọi cần quy tắc toán hạng khác, chủ động rà soát thay đổi đó thay vì để tái cấu trúc vô tình mở rộng quy ước. Cả tính hợp lý toán học và tương thích ứng dụng đều quan trọng.

Bạn chọn mô hình qua kết nối tương thích OpenAI hoặc Anthropic được hỗ trợ, với thông tin xác thực nếu dịch vụ cần. Có thể có mô hình AI không kiểm duyệt, nhưng nhà cung cấp quyết định hạn chế thực tế. Công cụ và dung lượng ngữ cảnh tùy mô hình và máy chủ; quy trình phần mềm vẫn kết thúc bằng việc bạn rà soát mã và kết quả.

Câu hỏi về bảo trì mã số học

Hàm này có nên nhận số mũ âm không?

Chỉ sau khi ứng dụng xác định ý nghĩa và ràng buộc cần thiết. Ví dụ hiện có từ chối số mũ âm. Yêu cầu mô hình xác định mã gọi trước khi đề xuất mở rộng quy ước, và tách yêu cầu tính năng đó khỏi tái cấu trúc nhằm giữ kết quả hiện tại.

Vì sao kiểm thử mô-đun bằng một?

Nó kiểm tra ranh giới hợp lệ trong quy ước đã cho và có thể lộ kết quả khởi tạo sai. Xác định đầu ra mong đợi độc lập rồi chạy trên triển khai đề xuất. Riêng ca số mũ không với mô-đun thông thường không bao phủ ranh giới này.

Ví dụ có chứng minh tính phù hợp cho mật mã không?

Không. Ví dụ số học có giới hạn và đầu ra nhỏ đúng không chứng minh thuộc tính bảo mật. Giữ tác vụ lập trình tập trung vào yêu cầu ứng dụng đã ghi nhận. Mọi ứng dụng mật mã cần lựa chọn triển khai và rà soát phù hợp riêng, ngoài trao đổi về hàm này.

Ngoài hàm, yêu cầu rà soát nên gồm gì?

Cung cấp mã gọi, quy tắc toán hạng hợp lệ và lỗi mà mã gọi xử lý. Thêm vài kết quả mong đợi độc lập và lệnh kiểm thử. Như vậy có thể đánh giá đơn giản hóa đề xuất giữ giao diện hay chỉ giữ phép tính bên trong.

Tải cho Windows ↗

ModuloSprig · Cập nhật 2026-10-25