import java.util.Scanner;

public class PowerCalculator { private int[] result;

public PowerCalculator() {
    result = new int[1000];
}

public void calculatePower(int m, int n) {
    result[0] = 1;

    for (int i = 1; i <= n; i++) {
        for (int j = 0; j <= m; j++) {
            result[j] *= m;
        }

        for (int j = 0; j <= m; j++) {
            if (result[j] >= 10) {
                result[j + 1] += result[j] / 10;
                result[j] %= 10;
            }
        }
    }
}

public int getResult(int index) {
    return result[index];
}

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    PowerCalculator calculator = new PowerCalculator();
    int m, n;

    do {
        System.out.println('计算M的N次方功能菜单:');
        System.out.println('1-计算M的N次方');
        System.out.println('2-退出');
        System.out.print('请输入操作编号:');
        int choice = scanner.nextInt();

        switch (choice) {
            case 1:
                System.out.print('请输入M的值(小于1000):');
                m = scanner.nextInt();
                System.out.print('请输入N的值(小于1000):');
                n = scanner.nextInt();
                calculator.calculatePower(m, n);
                System.out.println('计算结果:' + calculator.getResult(m));
                break;
            case 2:
                System.out.println('退出程序。');
                break;
            default:
                System.out.println('无效的操作编号,请重新输入。');
                break;
        }

        System.out.println();

    } while (true);

}

}

Java 高精度计算器:实现 M 的 N 次方

原文地址: https://www.cveoy.top/t/topic/QiU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录