第九届蓝桥杯 Java B组 第三题 复数幂 (详解)
生活随笔
收集整理的這篇文章主要介紹了
第九届蓝桥杯 Java B组 第三题 复数幂 (详解)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
藍(lán)橋杯 加油 (? ?_?)?
標(biāo)題:復(fù)數(shù)冪
設(shè)i為虛數(shù)單位。對于任意正整數(shù)n,(2+3i)^n 的實部和虛部都是整數(shù)。
求 (2+3i)^123456 等于多少? 即(2+3i)的123456次冪,這個數(shù)字很大,要求精確表示。
答案寫成 “實部±虛部i” 的形式,實部和虛部都是整數(shù)(不能用科學(xué)計數(shù)法表示),中間任何地方都不加空格,實部為正時前面不加正號。(2+3i)^2 寫成: -5+12i,
(2+3i)^5 的寫成: 122-597i
注意:需要提交的是一個很龐大的復(fù)數(shù),不要填寫任何多余內(nèi)容。
- 條件運算符 : (b > 0) ? “+” : “”
- 2次冪: 循環(huán)一次 ???;??? 23456次冪: 123455
- 每一次累乘,x與y的值 都要更新(需要臨時值t, 保留上一次循環(huán)的x值)。
BigInteger t = x; //保留上一次循環(huán)的x值??? ----- ???給y用
x = xa - yb;
y = tb + ya; - 驗證算法正確性:
(2+3i)^2:-5+12i
(2+3i)^3:-46+9i
(2+3i)^4:-119-120i
(2+3i)^5:122-597i
(2+3i)^6:2035-828i - 運行上面的程序,在控制臺看不到任何輸出—標(biāo)準(zhǔn)輸出不再輸出到屏幕,
而是輸出到了相應(yīng)的文件中。 - System類里提供了如下三個重定向標(biāo)準(zhǔn)輸入/輸出的方法:
1、static void setErr(PrintStream err) : 重定向“標(biāo)準(zhǔn)”錯誤輸出流
2、static void setIn(InputStream in) : 重定向“標(biāo)準(zhǔn)”輸入流
3、static void setOut(PrintStream out) : 重定向“標(biāo)準(zhǔn)”輸出流 - (1)程序有時需要處理大整數(shù),java.math.BigInteger提供任意精度的整數(shù)運算:
(2)BigInteger類的常用方法:
??????????加法:public BigInteger add(BigInteger val)
??????????減法:public BigInteger subtract(BigInteger val)
??????????乘法:public BigInteger multiply(BigInteger val)
??????????除法:public BigInteger devide(BigInteger val)
??????????取余:public BigInteger remainder(BigInteger val)
??????????比較:public int compareTo(BigInteger val) 返回比較結(jié)果(1、-1、0)
- 錯誤解法示例:
- 代碼運行截圖1:
- 代碼運行截圖2:
- 將 核心代碼 放入 try{}代碼塊 中,運行效果 與 上圖 一致:
Java PrintStream 示例 :
package JB第09屆省賽;import java.io.FileOutputStream; import java.io.PrintStream;public class A03_PrintStream { // Redirectoutpublic static void main(String[] args) {try {//一次性創(chuàng)建PrintStream輸出流PrintStream ps = new PrintStream(new FileOutputStream("G:\\a.txt"));{//將標(biāo)準(zhǔn)輸出重定向到ps輸出流System.setOut(ps);//向標(biāo)準(zhǔn)輸出輸出一個字符串System.out.println("普通字符串");//向標(biāo)準(zhǔn)輸出輸出一個對象System.out.println(new A03_PrintStream()); }} catch (Exception e) {e.printStackTrace();}}}- Java PrintStream 示例 ----- 程序運行截圖1:
- Java PrintStream 示例 ----- 程序運行截圖2:
參考 BLOG:
客官,點個贊再走啊,謝謝您嘞~
總結(jié)
以上是生活随笔為你收集整理的第九届蓝桥杯 Java B组 第三题 复数幂 (详解)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: http协议 和 https
- 下一篇: 四则运算---Java、C语言 写法