题目描述
掷了n次硬币,如果这n次硬币全部朝上或者全部朝下的概率是多少?(每次掷硬币朝上的概率与朝下的概率相同)
import java.util.*;
public class Solution {
/**
* 返回一个严格四舍五入保留两位小数的字符串
* @param n int整型 n
* @return string字符串
*/
public String Probability (int n) {
// write code here
double res = 2 * Math.pow(0.5,n);
//StringBuilder s = new StringBuilder(res);
String r = res+"";
StringBuilder s1 = new StringBuilder(r);
if(s1.length()==3){
s1.append('0');
}
if(s1.length() <5){
return s1.toString();
}
if(Integer.parseInt(s1.charAt(4)+"") >= 5){
s1.replace(3,3,Integer.parseInt(r.charAt(3)+"")+1+"");
}
return s1.substring(0,4);
//方法二简洁:
// double m = Math.pow(2,n);
// double result =(double) Math.round((2/m)*100)/100;
// return String.format("%.2f",result);
}
}