以下分别给出C++、Java和JavaScript三种常见的计算圆周率的程序示例:
1. C++示例代码:
#include <iostream>
#include <cmath>
int main() {
int numTerms;
double pi = 0;
std::cout << "请输入要计算的项数: ";
std::cin >> numTerms;
for (int i = 0; i < numTerms; i++) {
double term = 1.0 / (2 * i + 1);
if (i % 2 == 0) {
pi += term;
} else {
pi -= term;
}
}
pi *= 4;
std::cout << "计算得到的圆周率值为: " << pi << std::endl;
return 0;
}
2. Java示例代码:
import java.util.Scanner;
public class CalculatePi {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int numTerms;
double pi = 0;
System.out.print("请输入要计算的项数: ");
numTerms = scanner.nextInt();
for (int i = 0; i < numTerms; i++) {
double term = 1.0 / (2 * i + 1);
if (i % 2 == 0) {
pi += term;
} else {
pi -= term;
}
}
pi *= 4;
System.out.println("计算得到的圆周率值为: " + pi);
}
}
3. JavaScript示例代码:
let readlineSync = require('readline-sync');
let numTerms = parseInt(readlineSync.question('请输入要计算的项数: '));
let pi = 0;
for (let i = 0; i < numTerms; i++) {
let term = 1.0 / (2 * i + 1);
if (i % 2 === 0) {
pi += term;
} else {
pi -= term;
}
}
pi *= 4;
console.log('计算得到的圆周率值为: ' + pi);
这些程序通过近似的方法计算圆周率,即著名的莱布尼茨级数公式。它利用了级数的特性,随着项数的增加,可以越来越接近圆周率的真实值。这里的示例代码只是一种简单的计算方法,并不是精确到无限小数位的计算,但在实际应用中足够使用了。