1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2009.

Slides:



Advertisements
Similar presentations
FCU, Department of ECE, IC Design Research Lab. TEL: # 4945 Pre-SIm , Post-Sim.
Advertisements

1 生物計算期末作業 暨南大學資訊工程系 2003/05/13. 2 compare f1 f2  只比較兩個檔案 f1 與 f2 ,比完後將結果輸出。 compare directory  以兩兩比對的方式,比對一個目錄下所有檔案的相 似程度。  將相似度很高的檔案做成報表輸出,報表中至少要.
Divide-and-Conquer. 什麼是 divide-and-conquer ? Divide 就是把問題分割 Conquer 則是把答案結合起來.
6-1 指標簡介 6-2 指標與陣列 6-3 動態配置記憶體 6-4 本章綜合練習
布林代數的應用--- 全及項(最小項)和全或項(最大項)展開式
Introduction to Java Programming Lecture 13 Classes I OO Programming.
第七章 抽樣與抽樣分配 蒐集統計資料最常見的方式是抽查。這 牽涉到兩個問題: 抽出的樣本是否具有代表性?是否能反應出母體的特徵?
學習C++的基本語法 認識關鍵字與識別字的不同 學習程式碼偵錯的流程 學習如何提高程式的可讀性
: A-Sequence 星級 : ★★☆☆☆ 題組: Online-judge.uva.es PROBLEM SET Volume CIX 題號: Problem D : A-Sequence 解題者:薛祖淵 解題日期: 2006 年 2 月 21 日 題意:一開始先輸入一個.
:Word Morphing ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10508:word morphing 解題者:楊家豪 解題日期: 2006 年 5 月 21 日 題意: 第一行給你兩個正整數, 第一個代表下面會出現幾個字串,
Section 1.2 Describing Distributions with Numbers 用數字描述分配.
T-SQL 運算子介紹 11/29. 運算子的總類 指定運算子 算術運算子 比較運算子 邏輯運算子 位元運算子 字串連結運算子 單一運算元運算子.
如何將數字變成可用之資訊 現代化資料處理與應用概念. 如何將數字變成可用之資訊 人最容易接受的訊息是圖像化資訊。 在一堆數字中,要進行比較分析,一般會使用表格形 式計算與分析。 所以一般我們會將數字依關聯性, 轉換成表格計算與分析。 此表格一般稱試算表或稱表格。 再將結果轉換為圖表,進行比較與分析。
What is static?. Static? 靜態 ? class Test { static int staticX; int instanceX; public Test(int var1, int var2) { this.staticX = var1; this.instanceX =
指導教授:陳淑媛 學生:李宗叡 李卿輔.  利用下列三種方法 (Edge Detection 、 Local Binary Pattern 、 Structured Local Edge Pattern) 來判斷是否為場景變換,以方便使用者來 找出所要的片段。
1.1 線性方程式系統簡介 1.2 高斯消去法與高斯-喬登消去法 1.3 線性方程式系統的應用(-Skip-)
五小專案 黃詩晴 章乃云. 目錄 計算機 智慧盤 拼圖 記憶大挑戰 數學題庫 心得 參考文獻.
Review of Chapter 3 - 已學過的 rules( 回顧 )- 朝陽科技大學 資訊管理系 李麗華 教授.
: OPENING DOORS ? 題組: Problem Set Archive with Online Judge 題號: 10606: OPENING DOORS 解題者:侯沛彣 解題日期: 2006 年 6 月 11 日 題意: - 某間學校有 N 個學生,每個學生都有自己的衣物櫃.
JAVA 程式設計與資料結構 第二章 JAVA 程式基本概念及操作. 第一個程式 /* * 這是第一個程式 (FirstP.java) */ class FirstP{ public static void main(String args[]){ System.out.println("Whatever.
STAT0_sampling Random Sampling  母體: Finite population & Infinity population  由一大小為 N 的有限母體中抽出一樣本數為 n 的樣 本,若每一樣本被抽出的機率是一樣的,這樣本稱 為隨機樣本 (random sample)
1. 假設以下的敘述為一未提供 “ 捷徑計算 ” 能力的程式段,試用程 式設計的技巧,使此敘述經此改 寫的動作後,具有與 “ 捷徑計算 ” 之 處理方法相同之處理模式。 if and then E1 else E2 endif.
1 Introduction to Java Programming Lecture 7 Flow Control : Boolean expressions and the if statement.
8.1 何謂高度平衡二元搜尋樹 8.2 高度平衡二元搜尋樹的加入 8.3 高度平衡二元搜尋樹的刪除
: The Playboy Chimp ★★☆☆☆ 題組: Problem Set Archive with Online Judge 題號: 10611: The Playboy Chimp 解題者:蔡昇宇 解題日期: 2010 年 2 月 28 日 題意:給一已排序的數列 S( 升冪.
Monte Carlo Simulation Part.2 Metropolis Algorithm Dept. Phys. Tunghai Univ. Numerical Methods C. T. Shih.
南投縣社區大學 Excel 實務應用入門 講師 : 林泉成
Introduction to Java Programming Lecture 5: Using Java Classes : String & Math Spring 2009.
Introduction to Java Programming Lecture 15 Objects and Classes.
聯合大學資工系 周念湘 BCC 數字系統. 聯合大學資工系 周念湘 2 r 進位:轉成 10 進位 r 代表「基底」  10 進位: r = 10  2 進位: r = 2 D r : 表示某個 r 進位的數 (r 不寫,表.
Introduction to Java Programming Lecture 17 Abstract Classes & Interfaces.
:Problem D: Bit-wise Sequence ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10232: Problem D: Bit-wise Sequence 解題者:李濟宇 解題日期: 2006 年 4 月 16.
: The largest Clique ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11324: The largest Clique 解題者:李重儀 解題日期: 2008 年 11 月 24 日 題意: 簡單來說,給你一個 directed.
3-3 使用幾何繪圖工具 Flash 的幾何繪圖工具包括線段工具 (Line Tool) 、橢圓形工具 (Oval Tool) 、多邊星形 工具 (Rectangle Tool) 3 種。這些工具畫出 來的幾何圖形包括了筆畫線條和填色區域, 將它們適當地組合加上有技巧地變形與配 色, 不但比鉛筆工具簡單,
: Ahoy, Pirates! ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11402: Ahoy, Pirates! 解題者:李重儀 解題日期: 2008 年 8 月 26 日 題意:有一個海盜島有 N 個海盜,他們的編號 (id)
Fugacity Coefficient and Fugacity
: Multisets and Sequences ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 11023: Multisets and Sequences 解題者:葉貫中 解題日期: 2007 年 4 月 24 日 題意:在這個題目中,我們要定義.
:Nuts for nuts..Nuts for nuts.. ★★★★☆ 題組: Problem Set Archive with Online Judge 題號: 10944:Nuts for nuts.. 解題者:楊家豪 解題日期: 2006 年 2 月 題意: 給定兩個正整數 x,y.
資料結構實習-一 參數傳遞.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2008.
: Problem G e-Coins ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10306: Problem G e-Coins 解題者:陳瀅文 解題日期: 2006 年 5 月 2 日 題意:給定一個正整數 S (0
Section 4.2 Probability Models 機率模式. 由實驗看機率 實驗前先列出所有可能的實驗結果。 – 擲銅板:正面或反面。 – 擲骰子: 1~6 點。 – 擲骰子兩顆: (1,1),(1,2),(1,3),… 等 36 種。 決定每一個可能的實驗結果發生機率。 – 實驗後所有的實驗結果整理得到。
函式 Function Part.2 東海大學物理系‧資訊教育 施奇廷. 遞迴( Recursion ) 函式可以「呼叫自己」,這種動作稱為 「遞迴」 此程式的執行結果相當於陷入無窮迴圈, 無法停止(只能按 Ctrl-C ) 這給我們一個暗示:函式的遞迴呼叫可以 達到部分迴圈的效果.
: GCD - Extreme II ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11426: GCD - Extreme II 解題者:蔡宗翰 解題日期: 2008 年 9 月 19 日 題意: 最多 20,000 組測資,題目會給一個數字.
JAVA 程式設計與資料結構 第二十章 Searching. Sequential Searching Sequential Searching 是最簡單的一種搜尋法,此演 算法可應用在 Array 或是 Linked List 此等資料結構。 Sequential Searching 的 worst-case.
演算法 8-1 最大數及最小數找法 8-2 排序 8-3 二元搜尋法.
845: Gas Station Numbers ★★★ 題組: Problem Set Archive with Online Judge 題號: 845: Gas Station Numbers. 解題者:張維珊 解題日期: 2006 年 2 月 題意: 將輸入的數字,經過重新排列組合或旋轉數字,得到比原先的數字大,
Chapter 10 m-way 搜尋樹與B-Tree
What is Computer.
Probability Distribution 機率分配 汪群超 12/12. 目的:產生具均等分配的數值 (Data) ,並以 『直方圖』的功能計算出數值在不同範圍內出現 的頻率,及繪製數值的分配圖,以反應出該 機率分配的特性。
: Expressions ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 10157: Expressions 解題者:張庭愿 解題日期: 2009 年 8 月 16 日 題意:所有的括號必須成對,且必須先出現過左 括號後才能出現右括號,如果有.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2009.
計算機概論 第6章 數位邏輯設計.
5 重複迴圈 5.1 增減運算符號 增量運算符號 減量運算符號
電腦的基本單位 類比訊號 (analog signal) 指的是連續的訊號 數位訊號 (digital signal) 指的是以預先定義的符號表示不連續 的訊號 one bit 8 bits=one byte 電腦裡的所有資料,包括文 字、數據、影像、音訊、視 訊,都是用二進位來表示的。
電腦的基本單位 類比訊號 (analog signal) 指的是連續的訊號
連續隨機變數 連續變數:時間、分數、重量、……
Teacher : Ing-Jer Huang TA : Chien-Hung Chen 2015/6/30 Course Embedded Systems : Principles and Implementations Weekly Preview Question CH7.1~CH /12/26.
函式 Function 東海大學物理系‧資訊教育 施奇廷. 函式簡介 當程式越來越大、越複雜時,程式的維護、 除錯會變得更困難,此時必須引入函式來 簡化程式或將程式分段,將程式重複的部 分改寫為函式,將程式「模組化」 這種作法有下列優點:節省程式發展的時 間、邏輯容易瞭解、程式容易除錯、可分 工合作完成程式.
Visual C++重點複習.
1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2008.
1 Introduction to Java Programming Lecture 2: Basics of Java Programming Spring 2010.
What is static? CS340100, NTHU Yoshi. Static? 靜態 ? class Test { static int staticX; int instanceX; public Test(int var1, int var2) { this.staticX = var1;
數字系統與資料表示法 教師: 陳炯勳 數系轉換 r進制數字 稱為 base r或 radix r 有r個計數符號,計數順序逢r歸零(進位) A n A n - 1 ‥‥A 2 A 1 A 0 ﹒A -1 A -2 ‥‥A -m 其中A n 及A.
Introduction to Java Programming Lecture 16 Super and Sub Classes.
: Finding Paths in Grid ★★★★☆ 題組: Contest Archive with Online Judge 題號: 11486: Finding Paths in Grid 解題者:李重儀 解題日期: 2008 年 10 月 14 日 題意:給一個 7 個 column.
CH 14-可靠度工程之數學基礎 探討重點 失效時間之機率分配 指數模式之可靠度工程.
: How many 0's? ★★★☆☆ 題組: Problem Set Archive with Online Judge 題號: 11038: How many 0’s? 解題者:楊鵬宇 解題日期: 2007 年 5 月 15 日 題意:寫下題目給的 m 與 n(m
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc.,All Rights Reserved. 肆 資料分析與表達.
1 資料表示法 Chien-Chang Chen Hsuan-Chuang University.
Presentation transcript:

1 Introduction to Java Programming Lecture 3 Mathematical Operators Spring 2009

Basic Mathematical Operators Each of the operators in the table are binary operators. A binary operator acts on two operands Java Operation Arithmetic Operator Algebraic Expression Java Expression 加法 +a + b 減法 -a – b 乘法 *aba * b 除法 /a / b 餘數 %a mod ba % b

3 加法運算 ─ 使用變數做為運算元 class Sample2 { public static void main(String args[]) { int num1 = 2; int num2 = 3; int sum = num1+num2; System.out.println(" 變數 num1 的值是 " + num1 + " 。 "); System.out.println(" 變數 num2 的值是 " + num2 + " 。 "); System.out.println("num1+num2 的值是 " + sum + " 。 "); num1 = num1+1; System.out.println(" 變數 num1 的值加 1 後是 " + num1 + " 。 "); }

除法與餘數運算 public class DivMod { public static void main( String args[] ) { int x = 5, y = 10; System.out.println ("5 / 10: " + x/y); System.out.println ("5 % 10: " + x%y); } 結果 : 5 / 10: 0 5 % 10: 5 // 計算除法時要注意分母不能為零,除以零在電腦系統上是一個嚴重的錯誤.

5 運算子的執行優先順序 (Operator Precedence) 當在 Java 程式中同時出現了二種不同的運算子,您必 須區分式子當中運算子的執行優先順序,才能產生正 確的執行結果。 當運算子的優先順序相同時 同一行 Java 程式碼當中,如果所有的運算子優先順 序相同時,應該遵循「由左至右」的原則。 改變運算子的執行順序 程式碼當中的「括號」,其實就是改變運算子優先 順序的方法,用括號先框起來才會優先計算。 下面的執行結果是什麼 x = * 7

6 常數 (Constants) public class CircleAreaPI { public static void main(String[] args) { final double PI = ; double radius, area; // declare variables radius = 3.00; // assign radius of the circle area = radius * radius * PI ; System.out.println(“ 半徑為 ” + radius + “ 的圓面積是 " + area); } // 依 “ 慣例 ” ,常數名稱由大寫字母組成

Floating point Data Type // 宣告為 double 的變數 public class Double { public static void main( String args[] ) { double var1, var2, var3, sum; var1 = 87.25; var2 = 92.50; var3 = 96.75; sum = var1 + var2 + var3; System.out.println ("Sum: " + sum); } Sum: 276.5

8 數字型態的變數所能儲存的數字大小 Integers Floating point values

Example: Find an Average 計算平均分數. int totalTests = 4; double average = /totalTests; 問題 #1: Operator Precedence : 應該使用括號 ( ) double average = ( )/totalTests; 問題 #2: 90, 92, 95, 100 跟 4 都是整數. 因此,等號右邊計算的結果是整數 94. 所以變數 average 會被設成 94.0, 而不是

資料型態的轉換 當一個運算中有 ints 也有 doubles 時,所有的運算元 (operands) 會被當成 double 來運算 在上個例子中我們可以利用下列的方式來得到正確答案 94.25: 1. 宣告 totalTests 為 double: double totalTests = 4.0; double average = ( )/totalTests; 2. 直接除以 4.0 double average = ( ) / 4.0; 3. 使用 Cast Operator int totalTests = 4; double average = ( )/(double)totalTests;

11 more on casting 指定變數值時,可以把 “ 資料型態小的變數值 ” 指定給 “ 資料型態大的變數 ” ,例如 – 把 byte 的數值指定給 int – 把 int 的數值指定給 double – 把 float 的數值指定給 double 必須用 cast 的方式才可以把 “ 資料型態大的變數值 ” 指 定給 “ 資料型態小的變數 ” ,例如 : – 把 int 的數值指定給 byte : (byte) int – 把 double 的數值指定給 int : (int) double – 把 double 的數值指定給 float : (float) double ( 不用 cast 會有 syntax error)

Warning about floating point values 浮點數 (Floating point values) 有時不是很準確,顯示時 也可能跟你想的不同 –1.9 可能顯示成 –1.9 可能不等於 1.9 !! –0.1 加 10 次不見得等於 1

13 Other Arithmetic Operators ( 其他的運算子 ) public class OtherOperators { public static void main(String[] args) { int x = 10; // declare variables int y = 5; int z = 3; System.out.println("x = "+ x + ", y = “ + y + ", z = “ + z + "\n"); x++; y += x; // 就是 y = y + x; z *= x--; System.out.println("Now x = "+ x +", y = "+ y + ", z = "+ z + "\n"); } 顯示 : x=10, y=5, z=3 現在應該顯示什麼 ??

14 運算子的種類 主要的運算子種類有下列幾種: + ( 加號 )| ( OR )< ( 小於 ) - ( 減法 )^ ( XOR )<= ( 小於等於 ) * ( 乘法 )<< ( 左移 )== ( 相等 ) / ( 除法 )>> ( 右移 )!= ( 不等於 ) % ( 餘數 )>>> ( 右移補零 )! ( 邏輯 NOT ) + ( 正號 )++ ( 遞增 )&& ( 邏輯 AND ) - ( 負號 )-- ( 遞減 )|| ( 邏輯 OR ) ~ ( 補數 )> ( 大於 )?: ( 條件式 ) & ( AND )>= ( 大於等於 )

15 指定運算子 指定運算子主要是用來將資料指定給變數。總之,指 定運算子的功用是:將右邊的值(不管文字或數字), 指定給左邊的變數,指定運算子有下列幾種: += 加法後指定數值給變數 ^= 邏輯 XOR 後指定數值給變數 -= 減法後指定數值給變數 |= 邏輯 OR 後指定數值給變數 *= 乘法後指定數值給變數 <<= 位元左移後指定數值給變數 /= 除法後指定數值給變數 >>= 位元右移後指定數值給變數 %= 求餘後指定數值給變數 >>>= 位元右移並補零再指定數 值給變數 &= 邏輯 AND 後指定數值給變數