Java硬幣翻轉(zhuǎn)倍數(shù)遞增試算實(shí)例
//有何不足或者問題希望能夠得到各位的多多指正,不勝感激
import java.util.Scanner;
/**
*
* @author cc 舉例 100枚硬幣,最初全部朝下,第一次將所有硬幣反轉(zhuǎn)過(guò)來(lái), 第二次反轉(zhuǎn)位置是2的倍數(shù)的硬幣,
* 第三次反轉(zhuǎn)3的倍數(shù),.....執(zhí)行一百次,問最終共有多少個(gè)硬幣面朝上?
*
* 1.硬幣正反使用數(shù)組 1、0表示,1表示正面,0表示反面;
*
*
* 100枚硬幣的結(jié)果
int[] == 1100100001000000100000000100000000001000000000000100000000000000100000000000000001000000000000000000
result coin about 1 nums = 10
*/
public class CoinTurn {
private static int[] intCoins;
public static void main(String[] args) {
// TODO Auto-generated method stub
int coinNum = inputNum();
intCoins = new int[coinNum];
/*
* 初始化
*/
for (int i = 0; i < intCoins.length; i++) {
intCoins[i] = 0;// 初始化全部朝下,即背面0
}
doTurnCoin();
int resutltCoin = getCoinNum();
System.out.println("result coin about 1 nums = " + resutltCoin);// 輸出最終正面朝上的個(gè)數(shù)
}
private static void doTurnCoin() {
/*
* 翻轉(zhuǎn)操作
*/
for (int i = 1; i < intCoins.length; i++) {// 確定倍數(shù)
for (int j = i - 1; j < intCoins.length; j++) {// 循環(huán)翻轉(zhuǎn)
if (j % i == 0) { // 硬幣序列數(shù)是當(dāng)前次數(shù)的倍數(shù),則翻轉(zhuǎn)
if (intCoins[j] == 0) {
intCoins[j] = 1;
} else {
intCoins[j] = 0;
}
}
}
}
}
private static int getCoinNum() {
int countNum = 0;// 記錄最終硬幣正面?zhèn)€數(shù)
StringBuffer strB = new StringBuffer();
for (int a : intCoins) {
strB.append(a + "");
if (1 == a)
countNum++;
}
System.out.println("int[] == " + strB);// 輸出數(shù)組的結(jié)果
return countNum;
}
/*
* coin number
*/
private static int inputNum() {
System.out.println("input coin num: ");
Scanner input = new Scanner(System.in);
return input.nextInt();
}
}
- Java實(shí)現(xiàn)圖片翻轉(zhuǎn)以及任意角度旋轉(zhuǎn)
- java實(shí)現(xiàn)圖片縮放、旋轉(zhuǎn)和馬賽克化
- Java實(shí)現(xiàn)數(shù)組反轉(zhuǎn)翻轉(zhuǎn)的方法實(shí)例
- javafx實(shí)現(xiàn)圖片3D翻轉(zhuǎn)效果方法實(shí)例
- Java 其中翻轉(zhuǎn)字符串的實(shí)現(xiàn)方法
- Java實(shí)現(xiàn)單鏈表翻轉(zhuǎn)實(shí)例代碼
- java實(shí)現(xiàn)圖片水平和垂直翻轉(zhuǎn)效果
- Java實(shí)現(xiàn)圖片旋轉(zhuǎn)、指定圖像大小和水平翻轉(zhuǎn)
相關(guān)文章
詳解Java正則表達(dá)式中Pattern類和Matcher類
java.util.regex是一個(gè)用正則表達(dá)式所訂制的模式來(lái)對(duì)字符串進(jìn)行匹配工作的類庫(kù)包。包括兩個(gè)類Pattern和Matcher Pattern,Pattern是一個(gè)正則表達(dá)式經(jīng)編譯后的表現(xiàn)模式。Matcher對(duì)象是一個(gè)狀態(tài)機(jī)器,它依據(jù)Pattern對(duì)象做為匹配模式對(duì)字符串展開匹配檢查。2016-12-12Spring零基礎(chǔ)入門WebFlux響應(yīng)式編程
Spring 提供了兩個(gè)并行堆棧,一種是基于帶有 Spring MVC 和 Spring Data 結(jié)構(gòu)的 Servlet API,另一個(gè)是完全反應(yīng)式堆棧,它利用了 Spring WebFlux 和 Spring Data 的反應(yīng)式存儲(chǔ)庫(kù),這篇文章主要介紹了Spring-webflux 響應(yīng)式編程,需要的朋友可以參考下2022-10-10實(shí)例詳解Java中如何對(duì)方法進(jìn)行調(diào)用
這篇文章主要介紹了實(shí)例詳解Java中如何對(duì)方法進(jìn)行調(diào)用,是Java入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-10-10詳解Java中ExceptionInInitializer錯(cuò)誤的解決方法
ExceptionInInitializerError 是 Java 中的未經(jīng)檢查的異常,它是 Error 類的子類, 它屬于運(yùn)行時(shí)異常的類別,下面我們就來(lái)看看它的具體解決方法吧2024-02-02在IDEA中搭建最小可用SpringMVC項(xiàng)目(純Java配置)
這篇文章主要介紹了在IDEA中搭建最小可用SpringMVC項(xiàng)目(純Java配置),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之線上水果超市商城的實(shí)現(xiàn)
這是一個(gè)使用了java+SSM+springboot+redis開發(fā)的網(wǎng)上水果超市商城,是一個(gè)畢業(yè)設(shè)計(jì)的實(shí)戰(zhàn)練習(xí),具有水果超市商城該有的所有功能,感興趣的朋友快來(lái)看看吧2022-01-01