真男人就一定會玩雷電!全破不知道幾次了,但是就是喜歡玩!
雷電X
回味一下吧!
z: 普通武器
x: 加農砲/精靈炸彈
space/esc:暫停遊戲
第二個是雷電IIS part A
ctrl:普通武器
space:加農砲/精靈炸彈
這個版本的雷電吃哪一種武器都不會改變原有屬性,只會增加;假設三種武器都吃到了,那麼就同時擁有三種武器。
第三個是雷電IIS part B
shift:普通武器
z:加農砲/精靈炸彈
對於戰爭史詩的電影,我總是容易被其氣節所感動,無論是珍珠港事件、諾曼地登陸、市場花園戰役、硫磺島攻防戰等等;我們台灣終於有了一部屬於自己紀錄、自己追念、自己拍攝的戰爭史實電影--一八九五。十月,當時遇到了許許多多煩人的事情,我跟老婆一起去國賓看海角七號,當時只是瞥見一八九五的預告片段,那種風苦以及台灣精神便深深的感動了我身上的每個細胞;上個月終於如願以償跟老婆一起看了一八九五,那種久久不能自己的感動,我真的實在是以生為台灣而驕傲!今年過年跟全家一起再看一次一八九五的DVD,我只能記下我深深地感謝,作為這塊土地子孫對於祖先捍衛家園的感激與敬意。
====以下摘錄或擷取自維基百科====
中日甲午戰後,清廷兵敗議和,於光緒二十一年(1895)與日本簽訂馬關條約,將台灣、澎湖割讓給日本。消息傳出,全國震憤,台灣各地更紛紛自組義軍,誓死抗戰。徐驤時年三十八歲,首先號召生徒,糾結鄉人盡散家財,組成義軍,與吳湯興、姜紹祖,共同抵禦日寇,聯合作戰,人稱「客家三傑」。
徐驤(1858-1895,年三十八歲),字雲賢,俗稱徐昂。台灣苗栗縣頭份鎮客家子弟,台日乙未戰爭客家籍義勇軍領袖。近年獲台灣史學界肯定為「台灣抗日領袖第一人」。
1894年,日本勢力西進朝鮮,朝鮮之宗主國大清光緒帝決定對日宣戰。甲午戰爭結果,清國失利。1895年4月17日,清國全權代表李鴻章在日本脅迫下,簽約馬關條約,割讓台灣。消息傳至台灣,人心憤慨,台灣民主國成立。台灣民勇組織民軍,企求聯合全島志士,合力抵禦準備來接收台灣主權的日本軍隊。
日軍在艋舺士紳的引導下,首先入主台北城。惟當時台灣各地義軍群起合作,時年三十八歲的客家子弟徐驤散盡家財,號召鄉民組成「田賦軍」與吳湯興、姜紹祖共結義師抗日」。此後徐驤投身於台日乙未戰爭抗日先鋒的行列,全台南北轉戰數次,於吳湯興與姜紹祖壯烈戰死後,徐驤加入南台灣鄉勇,殲滅了許多日本軍人。徐驤最後同眾多民勇與日軍的纏鬥中如願就義。日本軍方對台灣民間如此激烈反抗大感震驚,因而日治時代日本教育談論台人時,時常否定客家子弟的「硬頸精神」。所以在當權者的貶抑下,客家人果敢仗義的原貌與英勇事蹟漸漸被忽略了。
2007年6月間,台灣苗栗地區多次傳聞徐驤等先烈「英魂猶存於世」的消息傳至官方[4],行政院客家委員會主任委員李永得親勘位在徐驤故鄉苗栗頭份鎮的仁愛公園,允諾儘速專案成立『徐驤紀念公園』,認為仁愛公園現址鄰近頭份市區,鎮民使用率高並兼具週圍環境的美化,十分有助苗栗縣民追思英烈徐驤的精神。
姜紹祖(1876年2月26日-1895年7月11日),幼名金韞,字纘堂。世居北埔,為北埔「金廣福大隘」第一代墾戶首姜秀鑾後人,家鉅富。
1895年,清日甲午戰爭,清廷失利,放棄朝鮮宗主權、割讓台灣主權予帝日。日軍依約登陸台灣,接收主權,引起全台士民之憤慨,各地民眾揭竿而起,組織義軍與「台灣民主國」正規軍共同對抗日軍史稱「乙未戰爭」。7月7日姜紹祖與吳湯興、徐驤率領義軍數百人、鍾石妹從竹東募義民軍二營駐紮二重埔,苗栗黃南球進入十八尖山,三支義軍互相呼應,伺機反攻新竹城,但不幸在7月10日於枕頭山被俘,7月11日吞食鴉片就義。姜紹祖殉難三十二天後,遺腹子出生,取名為振驤,即今之新竹國際商業銀行的前身「新竹區合會儲蓄公司」的創辦人之一,並擔任第一任董事長。
姜紹祖遺作《姜纘堂先生遺稿》,據王國璠《台灣先賢著作提要》,稱此書為1928年新竹姜樹人所輯,白報紙謄寫版(日語油印稱謄寫版,故此版為油印本),共收五、七言絕句24首,七律3首,聯語6則,清新可喜,國家圖書館藏有抄本,惟1977年鍾肇政寫《姜紹祖傳》時,想借閱《姜纘堂先生遺稿》已遍尋不著,未知此稿目前是否傳世?幸經鍾肇政搜羅,尚得七言絕句2首,第一首是〈出師贈同學〉:
書幃別出換戎衣,誓逐胡塵建義旂;傳達不願淪為異族統治,保衛家鄉的決心。第二首是〈自輓〉: 寫於被日人俘虜,從容就義前,彰顯臨危不懼,至死不渝的英勇精神。
士子何辜奔國難,匹夫有責安鄉畿。關於更多姜仙紹祖的照片,請詳見「姜紹祖與1895乙未戰爭」。
吳湯興曾為生員(秀才),亦學習武藝,以行俠仗義聞名於鄉里。1895年4月,清廷因甲午戰爭失敗而簽訂馬關條約,割讓台灣予日本。消息傳至台灣後,人心憤慨,於是台灣民主國成立,各地皆起兵響應。吳湯興亦召集鄉勇,籌備守衛鄉里。
5月29日,日軍近衛師團登陸澳底,乙未戰爭遂起。6月中旬,台北城失陷,吳湯興召集眾人祭旗,面向北方發誓:「是吾等效命之秋也。」眾人皆起而應和。當時,徐驤起義於苗栗,姜紹祖起義於北埔,簡精華起義於雲林,各率領數百至數千人,吳湯興皆派人送信邀請合作抗日[2]。
6月15日(陰曆5月23日),吳湯興領軍500名與姜紹祖部共同北上支援時,於楊梅壢遭遇日軍,兩軍合力攻擊,日軍稍有退卻。其後日軍攻下新竹,圖謀順勢南下。苗栗知縣李烇與吳湯興商議戰情後,派遣徐炳文赴台中告急,而徐驤力守頭份,日軍無法前進。
8月8日(陰曆6月18日),日軍大隊攻新竹,不久城陷。日軍乘勢攻苗栗,該地無城不易防守,吳湯興、徐驤俱退入彰化。8月24日(陰曆7月5日),日軍涉大甲溪,破葫蘆墩(今豐原市),次日攻破台中。 26日,幫辦軍務兼黑旗軍首領劉永福之幕僚吳彭年誓師後,分派各隊任務,以吳湯興、徐驤合守八卦山。28日黎明,日軍攻山,特別以一部隊直撲黑旗營。吳湯興拒戰,徐驤亦奮鬥,而炮火甚為猛烈,支持不下,吳湯興因而陣亡。其妻聞訊後,亦投水死。
黃賢妹,苗栗頭份人,一兄三姊妹,排行第二。父親黃阿龍在現今「六合國小」附近擁有一座靜雅的庭園—「稻香樓」(現今頭份六合國小),賢妹是17歲那年在「稻香樓」的塾房跟吳湯興相見的。當時湯興27歲,是秀才,身為長子,生父出走,必須協助母親、祖母管理家業,只好放棄科舉,在故鄉銅鑼兼職當塾師。 後來戰事急轉直下,吳湯興等眾不克東洋武器大砲攻擊而殉難,戰役之後,黃賢妹在確定吳湯興殉難的消息之後,退到彰化城,在城裡又聽聞銅鑼的家人都日軍殺害了,於是投井求死,後來被進城的日軍醫護兵救起,送回銅鑼樟樹林老家,看完家鄉殘破景象之後,黃賢妹堅決求死不吃不喝,8天後因絕食身亡,當時她才26歲,黃賢妹的殉情,為此這場戰役憑添一段可歌可泣的愛情故事。 關於黃賢妹以及更詳細的抗日細節,請參考:
不過,關於史實,我們還是必須正視一些說法;也許事實並不如電影所述,但是捍衛台灣的精神,仍然足以讓我們後代子孫感念萬分。
認識台灣入口網
1895乙未‧八卦山英魂‧吳湯興的故事
希望我們台灣的子弟能夠更團結一點,無論是客家人、閩南人、原住民或是從中國來的移民,現在都是台灣的子弟;請一起守護這塊土地,別讓其他國家拿去,也千萬別像從前的那些賣國賊一樣,為了幾個臭錢把國家拱手讓人;別像辜濂松這種敗類狗屁般的打開台北城門讓日軍不費吹灰之力的到手,到現在還是齷齪、弊案纏身;別像「十日總統」唐景嵩,日本人都還在基隆,就嚇得尿失禁,連忙化裝成平民,買通衛兵,漏夜開溜回中國;也別像丘逢甲這鼠輩,只會打嘴炮:
「臣等桑梓之地,義與存亡,願與撫臣誓死守禦。設戰而不勝,請俟臣等死後,再言割地。」「如日酋來收臺灣,臺民惟有開仗。」這麼義正言詞、慷慨激昂的話,當唐景嵩要求軍援時,丘式鼠輩噤聲;帶著軍糧落跑回他心愛的中國後,後來死於廣東,死時有六位同鄉的舉人作弔聯諷刺他。一位美濃出身的舉人林金城,也寫下這樣諷刺對聯:「盜臺軍餉,盜粵軍裝,軍法總能逃,事變兩番成大盜、非清人物,非漢人材,人言終不息,心甘一死莫知非。」至於劉永福算是好一點,起碼對於八卦山之役有所貢獻;不過最後也是在日軍還未攻入台南之前就逃了。抱著他心愛的寵物,化裝成老太婆躲在船上潛回中國。最後,感謝馬修連恩為這部影片作了如此淒美動人的旋律!無論這部電影如何催生出來,我很感謝作者以及所有工作人員讓我有機會認識自己國家的歷史,對台灣如此重要的事件我們卻因國民黨教育的關係,從來沒有機會觸碰自己土地的過去;更重要的是能夠吸取教訓--只有團結與氣節,才是捍衛國家與尊嚴的不二方法。
文字、照片、資料來源:
http://www.wretch.cc/album/album.php?id=themovie1895&book=1 維基百科
Share
我用opensuse的經驗尚淺,僅紀錄一些我自己的感覺。
1. skype無音效:
這個問題在討論串哀鴻遍野不絕於耳,至今仍然沒有好的解決方法,沒有聲音就是沒有聲音!我原本以為是這台電腦內建音效卡的問題,於是跟人家A了一片音效卡來裝,還是一樣;回到家裏用自己的電腦來裝,也是一樣,沒有聲音就是沒有聲音!這對於需要用skype網路電話來工作的我,是完全無法接受的。
幸好,問題已經解決了,請參考OpenSuSE skype 無音效問題解決。
2.安裝JDK會出現開機卡住的問題:
如果安裝了rpm版本,安裝完成會自動的幫使用者設定好環境變數,相當的方便;不過可怕的事情在後頭:當你重新啟動機器時,他會卡在一個訊息:
Starting jexec services
我也不知道他究竟會卡多久,即使我使用runlevel 1來開機也是一樣。網路上的的討論串認為是因為jdk所包成的rpm大致上是以redhat系列的linux為主,而opensuse有自己的spec,所以雖然是可以安裝,不過進到開機程序時會出現這樣不預期的問題。jexec daemon是每個runlevel都會啟動的,因此逃到single user mode還是難逃卡住的宿命。解決方法如下:
A. 找一片live cd或是用隨身碟開機進入另一套linux,把opensuse的root 分割區mount起來後,修改掉jexec的服務:
mv /etc/rc.d/rc5.d/S01jexec /etc/rc.d/rc5.d/xS01jexecB. 由於A步驟使開機時跳過了啟動jexec的服務,所以可以順利開機;請把先前安裝的jdk給移除,改安裝非rpm的版本。非rpm的版本只要解壓縮後放在一個固定位置,之後在手動去設定java的環境變數即可,可以成功的避掉這個問題。關於安裝jdk的問題,請參考在OpenSuSE上安裝JDK以及netbeans。
mv /etc/rc.d/rc5.d/K01jexec /etc/rc.d/rc5.d/xK01jexec
sync
init 6
3.桌面特效會不預期的自動消失:
工作到一半,畫面就會跳一下;各個桌面的視窗就會全部擠到第一個桌面來!好不熱鬧!後來乾脆不用,還不用被突如其來的閃爍給氣到拍桌。
4.X-window重新啟動的保護措施:
在一般的linux使用經驗裡,我們修改完一些設定需要重新登出時,我們通常都很懶,不喜歡還要點阿點阿再登出;我通常都是直接用crtl+alt+backsapce重新啟動X!不過在opensuse裡,這個方便的功能被拿掉了!為了避免使用者不小心就重新啟動x,opensuse 11以後就要按兩次組合鍵才會生效。
倘若你想要恢復一次就重新啟動x,你可以在xorg.conf裡新增一個option:
Option "ZapWarning" "on"
5.方便的桌面特效:
只要不是特別有名的顯示卡廠牌,安裝完opensuse就能啟動compiz特效;對於許多使用linux的新手實在是非常方便。
6.One Click Installation:
OpenSuSE非常神奇的有一個單鍵安裝的機制。當你找到一個想要的套件名稱,但是不知道如何安裝、下載、甚至不知道去哪裡加新的repo,這時友善的單鍵安裝就可以幫你很多忙。例如我家裡的nvidia顯卡需要安裝驅動程式,我決定用opensuse建議的安裝方式而不是去nvidia官方下載驅動程式自己裝,我只是在google上面輸入「nvidia opensuse」的關鍵字,第一筆就是引導我如何單鍵安裝nvidia的driver。
安裝的過程會要求root密碼,隨後會依據需求新增所需的repo、建立該repo的cache並且安裝起來。整個過程實在是俐落又方便,實在是非常值得推崇的一個linux發行版本。
7.強大而方便的yast
這有點像是大家都知道的優點。因此我才會認為suse以及redhat系列的linux真的是適合佈署在企業環境,使用者介面做得很俐落方便。
8.極為詳盡的設定檔說明:
suse的說明檔裡面的註解非常的詳盡,比起其他套linux而言真是非常的用心。要去編輯一個設定檔需要先去了解該參數的目的及用途,許多套linux有說明等於沒說明;suse的註解說明非常的清楚詳細,看了他的說明幾乎可以不用浪費時間上網google了。
今天下了一個決定。每次都只能在辦公室的xp上跑虛擬的linux,我覺得實在是很不過癮;一來是使用windows的時間跟機會本來就比較少,二來是沒有出現特效感覺怪怪的,因此檢查了一下硬碟空間的大小後,我決定把一部分的磁區用來安裝linux,再裝個虛擬的xp來跑非windows不可的程式。
我選了opensuse。在我先前的經驗裡面,OpenSuSE 11.0極不穩定,圖形跑一半會突然當機,還有許多大大小小的bugs。於是當時的我對opensuse 11.0的感覺是:除非真的很愛opensuse,否則這是一個白老鼠的版本。事實上我的經驗中,opensuse 10.1, 10.3都是很穩定的版本,似乎OpenSuSE的奇數版本號都是相對穩定的版本。然而這次已經出現了11.1,我除了期望可以有一個穩定的opensuse之外,好歹我也是個NCLP,對於suse linux也算是有一定程度的熟悉;因此我決定改用第二熟悉的linux:OpenSuSE 11.1。
在OpenSuSE上安裝VirtualBox基本上需要安裝pam, kernel headers, make以及gcc以供編譯適合kernel的模組。我的OpenSuSE裡的repos定義了6個,這些repos設定檔放在/etc/zypp/repos.d/裡:
repo-oss.repo -------------------------------- [repo-oss] name=openSUSE-11.1-Oss enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/distribution/11.1/repo/oss/ type=yast2 keeppackages=0 ------------------------------- repo-non-oss.repo ------------------------------- [repo-non-oss] name=openSUSE-11.1-Non-Oss enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/distribution/11.1/repo/non-oss/ type=yast2 keeppackages=0 -------------------------------- repo-update.repo -------------------------------- [repo-update] name=openSUSE-11.1-Update enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/update/11.1/ type=rpm-md keeppackages=0 -------------------------------- swyear.repo -------------------------------- [swyear] name=swyear enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/repositories/home:/swyear/openSUSE_11.1/ path=/ type=rpm-md -------------------------------- packman.repo -------------------------------- [Packman Repository] name=Packman Repository enabled=1 autorefresh=1 baseurl=http://packman.mirrors.skynet.be/pub/packman/suse/11.1 type=rpm-md keeppackages=0 -------------------------------- utility.repo -------------------------------- [utility] name=utility enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/repositories/network:/utilities/openSUSE_11.1 path=/ type=rpm-md keeppackages=0 ------------------------------- anubisg.repo ------------------------------- [anubisg] name=anubisg enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/repositories/home:/anubisg1/openSUSE_11.1/ path=/ type=rpm-md keeppackages=0 ------------------------------- JAVA.repo ------------------------------- [JAVA] name=JAVA enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/repositories/Java:/packages/openSUSE_11.1/ path=/ type=rpm-md keeppackages=0 ------------------------------- multimedia.repo ------------------------------ [multimedia] name=multimedia enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/repositories/multimedia:/audio/openSUSE_11.1/ type=rpm-md keeppackages=0 ------------------------------當然以上以可以用yast來作,而且我很建議用yast來作;一方面可以體會yast強大的能力,一方面可以方便你匯入gpg keys。 匯入之後,我的習慣是先讓整個系統升級:
zypper ref#更新repositories的cache
zypper update --auto-agree-with-licenses#進行更新
zypper in pam-devel kernel-source make gcc lsb#kernel-headers在suse/redhat系列的套件 都稱之為kernel-source,名稱不同,但是是一樣的東西。
然後我們下載最新版的VirtualBox(2.1.0)來安裝:
rpm -ivh --test VirtualBox-2.1.0_41146_openSUSE111-1.i586.rpm沒有錯誤的話,我們再真正進行安裝:
yast2 --install VirtualBox-2.1.0_41146_openSUSE111-1.i586.rpm## 例外狀況處理 ##
zypper se libpython結果訊息是:
S | Name | Summary | Type --+------------------+-----------------------------------+-------- i | libpython2_6-1_0 | Python Interpreter shared library | package原來我們的版本比要求的還新!@@竟然是因為這樣不給裝,真的很討厭。這個問題在opensuse的論壇上已經是哀鴻片野,解決的方式有兩種:第一種方法就是硬裝:
rpm -ivh --nodeps VirtualBox-2.1.0_41146_openSUSE11-1.i586.rpm很高興的把virtualbox安裝起來了。第二種方法,請詳見本文最後面。
2.不過當你要啟動VBox時還是會失敗,他會告訴你某個virtualbox函式Permission Denied的錯誤訊息。請你把自己加入vboxusers群組:
usermod -A vboxusers maxsolar記得要重新登入,就可以正常出現VBox了!
3.如果你執行VirtualBox卻沒反應,在終端機輸入VirtualBox卻出現如下訊息:
/usr/bin/VirtualBox: line 72: /usr/lib/virtualbox/VirtualBox: Permission denied /usr/bin/VirtualBox: line 72: exec: /usr/lib/virtualbox/VirtualBox: cannot execute: Success但是,由root執行VirtualBox卻可以成功執行。看看到底是甚麼權限問題:
ls -l /usr/lib/virtualbox/VirtualBox原來,有了suid,卻少了執行的權限。
chmod +x /usr/lib/virtualbox/VirtualBox就可以成功啟動執行。
4.或者你遇到的問題是:
WARNING: The vboxdrv kernel module is not loaded. Either there is no module available for the current kernel (2.6.27.7-9-default) or it failed to load. Please recompile the kernel module and install it by sudo /etc/init.d/vboxdrv setup You will not be able to start VMs until this problem is fixed.那麼依照指示,你應該重編一個virtualbox的模組:
/etc/init.d/vboxdrv setup
5.打開vbox後赫然發現,事情似乎沒有想像中順利: 查詢google大神的結果,我們似乎可以藉由修改fstab來解決:
/sys/bus/usb/drivers /proc/bus/usb usbfs devmod=664,devgid=1000 0 0其中的devgid可別照抄!你應該利用id指令來查看自己的gid。 然後手動掛載:
sudo mount /proc/bus/usb或是重開機以使設定生效。結果令人驚喜,usb設備無法存取的狀況解決了!
6.不過當我們對guest進行設定時,又出現了一個錯誤訊息: 怎會如此屋漏偏逢連夜雨呢?別擔心,問題的解決必須要靠詳細觀察。訊息上提示我們有存取/dev/sr0上的問題。sr0就是光碟機,許多套linux在啟動nero linux時也會出現相同的問題。我們看看/dev/sr0的權限設定: 可以發現光碟機可以存取的是root以及disk群組。可惜我們並不在disk群組。解決的方法很多,你可以利用groupmod -A maxsolar disk把自己加進disk群組裡(也可以直接修改/etc/group)、也可以利用chmod 666 /dev/sr0直接改變others權限。不過我個人並不建議上述作法。 我們可以發現權限後面有一個"+"號,這表示這個檔案具有Access Control List的權限,我們透過setfacl來解決問題才是最恰當的。首先,我們先檢視一下acl裡的權限:
sudo getfacl /dev/sr0由圖中可以發現user可以給出的最高權限為rw,gdm使用者也是rw。我們也來給使用者maxsolar一個rw的權限吧!
sudo setfacl -m u:maxsolar:rw /dev/sr0這時,使用者maxsolar已經對於/dev/sr0已經可以有rw的權限了。假設我要移除gdm使用者的權限又該如何作呢?
setfacl -x u:maxsolar /dev/sr0OK!快樂的在OpenSuSE上使用VirtualBox吧! 參考資料:ACL簡易設定筆記
P.S. 你也可以使用OpenSuSE的vbox套件庫來源:
VirtualBox.repo
-----------------------------
[VirtualBox]
name=VirtualBox
enabled=1
autorefresh=1
baseurl=http://download.opensuse.org/repositories/Virtualization:/VirtualBox/openSUSE_11.1/
path=/
type=rpm-md
keeppackages=0
----------------------------
refresh套件庫的cache之後,我們便可以略過libpython2.5的相依性要求。
yast -i virtualbox-ose
說真的,弄一個virtualbox來玩,在opensuse上真的蠻累的。相依性的問題,還是在debian上面方便解決多了。
假設你要在guest linux上使用文字終端(ctrl+alt+F1),會發現怎麼用都是切到host的文字終端。在vbox的熱鍵預設為right-ctrl,你可以使用熱鍵+F1~F6去切換guest的文字終端。我都是用這招自訂fedora系列的partitions,不然每次切好放在最前面的swap都會被硬塞到最後面,非常令人討厭;可以利用這招切換到文字終端,自訂fdisk切出想要的分割區在安裝就可以了!
I Love Debian !!!
網路上不免有許多喜歡到處try機器的傢伙,這樣的人實在是防不勝防。我維護的機器幸好只有一個服務,就是sshd。整體而言我只有安裝ssh加上denyhosts,想不到不到兩個月的時間,就已經有十幾個人來try我的機器了。公佈以下惡劣的ip,你可以把他加進/etc/hosts.deny,也可以把他加進你防火牆的規則裡。
ALL: 113.11.201.30 ALL: 116.114.18.250 ALL: 116.7.255.86 ALL: 117.135.9.34 ALL: 117.25.131.77 ALL: 118.122.178.131 ALL: 118.130.106.50 ALL: 118.219.232.213 ALL: 118.69.211.2 ALL: 121.134.243.7 ALL: 121.15.207.100 ALL: 121.246.104.219 ALL: 122.155.0.9 ALL: 122.160.8.195 ALL: 122.200.105.83 ALL: 122.224.238.154 ALL: 122.252.236.83 ALL: 122.255.101.188 ALL: 123.108.201.204 ALL: 123.233.245.226 ALL: 124.114.130.149 ALL: 124.115.212.2 ALL: 124.193.150.104 ALL: 124.247.197.212 ALL: 124.254.15.169 ALL: 124.7.228.36 ALL: 125.208.3.9 ALL: 125.74.120.243 ALL: 125.76.242.62 ALL: 130.156.178.66 ALL: 132.239.69.51 ALL: 133.5.154.147 ALL: 140.109.82.170 ALL: 140.113.212.144 ALL: 140.113.212.196 ALL: 140.113.214.87 ALL: 140.113.222.145 ALL: 140.113.225.205 ALL: 140.113.7.203 ALL: 140.115.126.10 ALL: 140.115.236.42 ALL: 140.115.52.74 ALL: 140.115.72.72 ALL: 140.116.241.80 ALL: 140.117.171.53 ALL: 140.122.194.167 ALL: 140.122.204.159 ALL: 140.122.66.228 ALL: 140.122.66.77 ALL: 140.123.106.231 ALL: 140.123.115.241 ALL: 140.126.143.206 ALL: 140.126.148.164 ALL: 140.127.198.18 ALL: 140.128.142.187 ALL: 140.134.140.31 ALL: 140.134.26.181 ALL: 140.134.32.92 ALL: 140.136.147.171 ALL: 141.108.38.203 ALL: 148.244.156.135 ALL: 155.230.23.52 ALL: 158.49.50.176 ALL: 159.226.142.172 ALL: 163.178.127.13 ALL: 163.23.227.141 ALL: 164.67.178.90 ALL: 173.45.67.210 ALL: 174.133.56.250 ALL: 189.114.224.36 ALL: 189.162.101.32 ALL: 189.62.127.5 ALL: 190.144.35.98 ALL: 192.248.90.1 ALL: 192.72.80.211 ALL: 193.205.160.180 ALL: 195.138.129.241 ALL: 195.28.66.87 ALL: 195.55.159.104 ALL: 195.7.89.2 ALL: 200.146.202.170 ALL: 200.27.167.50 ALL: 200.48.4.66 ALL: 201.117.193.110 ALL: 201.151.250.86 ALL: 201.48.64.220 ALL: 202.100.219.81 ALL: 202.100.72.253 ALL: 202.100.91.165 ALL: 202.108.29.9 ALL: 202.108.59.112 ALL: 202.115.80.180 ALL: 202.170.220.165 ALL: 202.171.212.13 ALL: 202.194.28.2 ALL: 202.44.47.125 ALL: 202.71.128.100 ALL: 202.75.217.175 ALL: 203.142.86.210 ALL: 203.152.221.106 ALL: 203.171.228.52 ALL: 203.187.177.4 ALL: 203.248.245.224 ALL: 203.255.39.137 ALL: 203.93.0.3 ALL: 204.215.65.203 ALL: 204.9.203.38 ALL: 206.196.113.238 ALL: 207.58.130.97 ALL: 208.100.56.142 ALL: 208.113.108.18 ALL: 210.17.246.25 ALL: 210.243.58.214 ALL: 210.34.48.120 ALL: 210.40.128.31 ALL: 210.43.24.37 ALL: 210.51.10.189 ALL: 210.51.184.105 ALL: 210.51.4.93 ALL: 210.83.79.69 ALL: 211.100.17.87 ALL: 211.147.220.171 ALL: 211.192.64.138 ALL: 211.219.166.69 ALL: 211.48.232.248 ALL: 211.95.72.126 ALL: 212.156.220.175 ALL: 212.175.141.242 ALL: 213.174.151.17 ALL: 216.146.47.62 ALL: 217.170.84.66 ALL: 217.77.130.138 ALL: 218.175.217.134 ALL: 218.204.137.94 ALL: 218.205.242.250 ALL: 218.241.173.40 ALL: 218.241.177.241 ALL: 218.249.75.154 ALL: 218.56.135.34 ALL: 218.56.61.114 ALL: 218.93.205.152 ALL: 219.106.227.154 ALL: 219.137.24.12 ALL: 219.140.164.170 ALL: 219.142.69.203 ALL: 219.143.125.162 ALL: 219.144.186.86 ALL: 219.146.252.203 ALL: 219.153.66.71 ALL: 219.235.224.194 ALL: 219.76.75.6 ALL: 219.95.220.26 ALL: 220.130.50.108 ALL: 220.132.163.163 ALL: 220.168.209.18 ALL: 220.196.74.108 ALL: 220.196.75.120 ALL: 220.229.57.152 ALL: 220.66.64.141 ALL: 221.11.130.5 ALL: 221.122.109.206 ALL: 221.161.43.34 ALL: 221.208.194.172 ALL: 221.208.194.172 ALL: 221.214.166.59 ALL: 221.214.21.82 ALL: 221.238.19.46 ALL: 222.122.227.26 ALL: 222.122.49.18 ALL: 222.188.99.117 ALL: 222.255.28.132 ALL: 222.83.251.84 ALL: 24.226.195.196 ALL: 58.196.29.31 ALL: 58.218.209.21 ALL: 58.254.143.130 ALL: 58.26.137.80 ALL: 58.65.228.4 ALL: 59.185.104.218 ALL: 59.27.51.138 ALL: 59.3.89.62 ALL: 59.77.25.61 ALL: 59.79.164.164 ALL: 60.12.107.159 ALL: 60.191.220.135 ALL: 60.198.212.6 ALL: 60.199.206.253 ALL: 60.220.218.88 ALL: 60.247.103.41 ALL: 60.28.166.169 ALL: 60.50.161.122 ALL: 61.129.68.163 ALL: 61.153.34.150 ALL: 62.2.182.139 ALL: 62.67.246.120 ALL: 62.8.241.156 ALL: 62.93.185.48 ALL: 63.164.108.10 ALL: 64.15.156.43 ALL: 66.221.207.28 ALL: 66.244.236.244 ALL: 66.93.143.3 ALL: 66.96.240.229 ALL: 67.174.223.197 ALL: 67.201.56.37 ALL: 67.202.68.54 ALL: 68.166.118.214 ALL: 69.41.182.214 ALL: 72.232.235.6 ALL: 72.44.54.191 ALL: 74.55.26.178 ALL: 77.104.253.84 ALL: 77.221.155.130 ALL: 77.236.203.123 ALL: 78.186.133.8 ALL: 78.38.35.253 ALL: 80.13.120.105 ALL: 80.233.216.6 ALL: 80.74.155.188 ALL: 80.82.120.248 ALL: 80.86.84.177 ALL: 81.28.97.25 ALL: 82.16.36.219 ALL: 82.67.15.220 ALL: 84.16.252.58 ALL: 84.255.237.248 ALL: 85.12.46.122 ALL: 85.17.137.42 ALL: 85.17.207.237 ALL: 85.5.104.199 ALL: 87.253.155.71 ALL: 88.191.59.73 ALL: 89.248.162.172 ALL: 90.178.14.15 ALL: 91.204.162.245 ALL: 94.102.48.116 ALL: 94.198.99.56 ALL: 94.75.240.159 ALL: 94.75.252.43 ALL: 94.85.28.130 ALL: 99.130.187.245你也可以看看那些無聊人口是來自哪些國家:
import java.util.*; public class Lab_8 { public static void main(String[] args) { Scanner keyin = new Scanner(System.in); byte number = 0;//初始值 byte RANDOM = (byte)(Math.random()*49+1); //Math.random()會產生0~1之間的亂數 System.out.println(RANDOM); byte count = 5; System.out.println("請輸入1~50之間的整數:"); System.out.println("您只有5次機會:"); number = keyin.nextByte(); do{ if(number > RANDOM){ System.out.println("再小一點!"); --count; System.out.println("你還有"+count+"次機會"); number = keyin.nextByte(); }else if(number < RANDOM){ System.out.println("再大一點!"); --count; System.out.println("你還有"+count+"次機會"); number = keyin.nextByte(); } }while( number != RANDOM && count > 1); if (number != RANDOM){ System.out.println("你太遜啦!"); }else{ --count; System.out.println("你還有"+count+"次機會"); System.out.println("你真厲害!"); } } }##### source code ends ###############################
public class Test5 { public static void main(String args[]){ String message = "台南資訊展98年1月8日至13日"; int index=0; // while ( index < message.length()) { //取得字串長度( 用length() ) // if( (int)message.charAt(index) >=48 && (int)message.charAt(index) <=57 ){ // System.out.print(message.charAt(index));//charAt()取得第x個字元,由0開始。 // } // index++; // } for (index =0 ; index< message.length(); index++){ if( (int)message.charAt(index) >=48 && (int)message.charAt(index) <=57 ){ System.out.print(message.charAt(index)); } } System.out.println(""); } }由於我不太會改blogspot的template,超過頁面的部份請點html原始碼起來看吧!
import java.util.Scanner; public class Lab5{ public static void main(String args[]){ System.out.println("本程式可輸入年份及月份求出當月天數 "); System.out.print("請輸入年份 "); Scanner keyin =new Scanner(System.in); int year = keyin.nextInt(); System.out.print("請輸入月份 "); int month = keyin.nextInt(); int day = 0; switch (month){ case 1:case 3:case 5:case 7:case 8:case 10:case 12: day = 31; break; case 2: if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){ day = 28;//閏月28天 }else{ day = 29;//非閏月29天 } break; case 4:case 6: case 9: case 11: day = 30; break; } System.out.println("西元"+year+" "+month+"月共有" +day+"天"); } }####### source code ends #########################
import java.util.Scanner; public class Test6 { public static void main(String args[]) { System.out.println("輸入R、L、U、D來分別顯示 向右走、向左走、向上走、向下走"); System.out.println("ctrl+c以結束程式:"); Scanner keyin = new Scanner(System.in); // System.out.println((int)'A'); // System.out.println((int)'Z'); // System.out.println((int)'a'); // System.out.println((int)'z'); //利用以上得知英文字母大小寫的字元碼 char input; do{ input = keyin.next().charAt(0); //沒有nextChar()這個方法,因此只好用charAt()取第一個字元傳回input if (input == 'R'||input == 'r') { System.out.println("向右走"); } else if (input == 'L'|| input == 'l') { System.out.println("向左走"); } else if (input == 'U'|| input == 'u') { System.out.println("向上走"); } else if (input == 'D'|| input == 'd') { System.out.println("向下走"); } else { System.out.println("請輸入R、L、U、D 或是注意大小寫!"); } }while( ((int)input >=65 && (int)input <=90) || ((int)input >= 97 && (int)input <= 122)); //當輸入為A-Z或是a-z才會繼續執行! } }######## code ends ##################################
import java.util.Scanner; public class temptrans { public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.println("簡易溫度互換程式:"); System.out.println("1:以攝氏轉華式 2:以華氏轉攝氏"); byte type = input.nextByte(); if(type == 2 ){ System.out.println("請輸入華氏溫度"); float F = input.nextFloat(); System.out.println("攝氏溫度為:"+((F-32)*5/9)); System.out.println("絕對溫度為:"+(((F-32)*5/9)+273.15)); }else if(type == 1 ){ System.out.println("請輸入攝氏溫度"); float C = input.nextFloat(); System.out.println("華氏溫度為:"+(9*C/5+32)); System.out.println("絕對溫度"+(C+273.15)); }else{ System.out.println("請輸入1或2,不要來亂!"); } } }
條件 輸出結果 ############################################## 分數高於90 分數 ? 分、等級 A+ 分數低於90高等於80 分數 ? 分、等級 A 分數低於80高等於70 分數 ? 分、等級 B 分數低於70高等於60 分數 ? 分、等級 C 分數低於60 分數 ? 分、等級 Failed ##################################################### source code starts ###################
import java.util.Scanner; public class Lab4{ public static void main(String args[]){ System.out.println("Please enter your score:"); Scanner keyin = new Scanner(System.in); int score = keyin.nextInt(); if(score > 90){ System.out.println("You got A+ !"); }else if(score >= 80){ System.out.println("You got A !"); }else if(score >= 70){ System.out.println("You got B !"); }else if(score >= 60){ System.out.println("You got C !"); }else{ System.out.println("Asshole! You failed!"); } } }
條件 輸出結果 ----------------------------------------------- 年齡滿18 年齡 ? 歲、可觀賞限制級電影 年齡滿12未滿18 年齡 ? 歲、可觀賞輔導級電影 年齡6未滿12 年齡 ? 歲、可觀賞保護級電影 年齡未滿6 年齡 ? 歲、可觀賞普通級電影 -----------------------------------------------//######source code starts ####################
import java.util.Scanner; public class Lab3 { public static void main(String args[]){ System.out.println("請輸入年齡以得知電影分級:"); Scanner keyin = new Scanner(System.in); int age = keyin.nextInt(); if (age < 6 ){ System.out.println("年齡"+age+", 可看普通級電影"); }else if(age < 12){ System.out.println("年齡"+age+", 可看保護級電影"); }else if(age < 18){ System.out.println("年齡"+age+", 可看輔導級電影"); }else{ System.out.println("年齡"+age+", 可看限制級電影"); } } }//###### end of code ###################
import java.util.Scanner; public class Lab2{ public static void main(String args[]){ System.out.println("請輸入購物金額"); Scanner keyin = new Scanner(System.in); int charge = keyin.nextInt(); if (charge < 2000){ int fee = (int)(charge*0.95); System.out.println("你的金額是:"+charge+",打折後為 "+fee); }else if(charge <3000){ int fee = (int)(charge*0.9); System.out.println("你的金額是:"+charge+",打折後為 "+fee); }else if(charge < 4000){ int fee = (int)(charge*0.85); System.out.println("你的金額是:"+charge+",打折後為 "+fee); }else if(charge < 5000){ int fee = (int)(charge*0.8); System.out.println("你的金額是:"+charge+",打折後為 "+fee); }else{ int fee = (int)(charge*0.75); System.out.println("你的金額是:"+charge+",打折後為 "+fee); } } }//######### source code ends #########################
import java.util.Scanner; //因為需要接收使用者輸入,因此因此import java.util.Scanner這個套件。 public class Lab{ public static void main(String args[]){ Scanner keyin = new Scanner(System.in); System.out.println("score of chinese"); float chi = keyin.nextFloat(); System.out.println("score of English"); float eng = keyin.nextFloat(); System.out.println("score of Math"); float math = keyin.nextFloat(); float sum = (float)chi+eng+math; float avg = sum/3.0F; System.out.println("Yor score is "+sum+" and the avg is "+avg); System.out.print("this semester is :"); System.out.println(avg>=60? "Passed!" : "Failed!"); //二擇一的情況可以不需要用到if/else敘述 } }//##### source code ends ###############