JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN

Benzer belgeler
MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 11: Metot Kavramı

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Ders 5: Temel Kütüphane Fonksiyonlar

Fonksiyonlar (Altprogram)

MAT213 Bilgisayar Programlama I

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

ALGORİTMA VE PROGRAMLAMA II

MAT213 Bilgisayar Programlama I. Anadolu Üniversitesi Fen Fakültesi Matematik Bölümü Emrah Akyar Sunum #1

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

public static int Toplam int x, int y

HSancak Nesne Tabanlı Programlama I Ders Notları

Imports ifadesi, program satırlarının en üstüne (Public Class satırından önce) yazılmalıdır. Aksi halde hata mesajı ile karşılaşılır.

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 6. UYGULAMA

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Algoritma ve Programlamaya Giriş II JAVA İLE PROGRAMLAMA. Muhammet BAYKARA

Nesne Yönelimli Programlama

Java da İşleçler, Ders #3 (4 Kasım 2009)

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

BBS515 Nesneye Yönelik Programlama. Ders 3 Zümra Kavafoğlu

BMH-303 Nesneye Yönelik Programlama

J A V A D A P R O G R A M D E N E T İ M İ V E O P E R A T Ö R L E R

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

İsimler ve Kapsam. Hafta 4 Ders 2 BLG339 PROGRAMLAMA DİLLERİ KAVRAMI

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

Lab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

BASİT VERİ TÜRLERİ, STRİNGLER, VE KONSOL GİRİŞ/ÇIKIŞ

BBS515 Nesneye Yönelik Programlama. Ders 2 Zümra Kavafoğlu

Sınav Dağılım & IMKB Endeks

D İ Z İ L E R A R R A Y S

Sınıf üyeleri: değişkenler (fields) and metotlar (methods) Değişkenler: nesne içerisindeki değişkenlerdir Temel veri tipi veya sınıf tipi

BİL-141 Bilgisayar Programlama I (Java)

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 4. UYGULAMA

Hafta 13 Fonksiyonlar

1. Her marka için 3 aylık satış toplamı nedir? (Tablodaki satır toplamları)

Java String İşlemleri

JAVADA DİZİ İŞLEMLERİ

11- FONKSİYONLAR (FUNCTIONS)

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

Adım Adım C-II. Eksik kalmış konular

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

Lambda İfadeleri (Lambda Expressions)

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Java dili, aşağıdakiler de dahil olmak üzere çok çeşitli denetleyici türlerine sahiptir.

Veri Yapıları 2010 Java Programlama Diline Giriş. Doç. Dr. Aybars UĞUR

Sunum İçeriği. Programlamaya Giriş

Bir çok insan Eclipse'i Java için entegre geliştirme ortamı (IDE) olarak bilir. Günümüzde %65 pazar payıyla öncü geliştirme ortamıdır.

BIL101 07/11/2012 Lab5 Programlama Sorulari

Yığıtın en üstündeki öğeyi değer olarak alır; ama onu yığıttan almaz, yerinde bırakır.

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 2 DERSİ LAB. ÖDEVİ

Veri Yapıları 2007 Java Programlama Diline Giriş. Yrd. Doç. Dr. Aybars UĞUR

12- HAZIR FONKSİYONLAR

Karşılaştırma İşlemleri ve Koşullu İfadeler

Temel Veri Türü İşlemleri

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

İsimler ve Kapsam. 24 Şubat Programlama Dilleri - Pamukkale Üniversitesi 1

EMT2226 Nesne Yönelimli Programlamaya Giriş

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

FONKSİYONLAR. Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır.

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 9. UYGULAMA

ALGORİTMA VE PROGRAMLAMA I

PAKET ERİŞİMLERİ SINIFLARIN YENİDEN KULLANIMI. BMU-112 Algoritma ve Programlama-II Yrd. Doç.Dr. İlhan AYDIN

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

Örnek 1: Programı yazın ve çalıştırın.

BİL-141 Bilgisayar Programlama I (Java)

Java da, tüm değişkenlerin kullanılmadan önce tanımlanması edilmesi gerekir. Bir değişken tanımlamanın temel gösterimi bu şekildedir:

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

Soru 1: Fahrenheit cinsinden verilen sıcaklığı Kelvin'e çeviren bir program yazınız. Aşağıdaki dönüşüm formülünü kullanabilirsiniz:

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

C# Metotlar ve Metot Tanımlama

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

Dr. Fatih AY Tel:

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

ALGORİTMA VE PROGRAMLAMA II

İNTERNET TABANLI PROGRAMLAMA

System.out.println(Integer.toString(x) + Integer.toString(y)); 9.2 parseint(), parsedouble() Metotları

Yazılım Kodlama ve İ simlendirme Standartları v1.0

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Doç. Dr. Aybars UĞUR

Yrd. Doç. Dr. Caner ÖZCAN

HSancak Nesne Tabanlı Programlama I Ders Notları

Programlama Dillerinde Kullanılan Veri Tipleri

Ders - 7 while döngüsü

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1

Transkript:

JAVADA METOTLAR BMÜ-111 Algoritma ve Programlama Yrd. Doç. Dr. İlhan AYDIN 1

Açık problem Amacımız sırasıyla 1 den 10, 10 dan 20 ye ve 35 ten 45 e kadarki sayıların toplamını bulmak olsun. Ne yapmak gerekir? 2

Problem int toplam = 0; for (int i = 1; i <= 10; i++) toplam += i; System.out.println("1-10 araliginin toplamı:"+toplam); toplam = 0; for (int i = 20; i <= 30; i++) toplam += i; System.out.println(«20-30 araliginin toplamı:"+toplam); toplam = 0; for (int i = 35; i <= 45; i++) toplam += i; System.out.println(" 20-30 araliginin toplamı:"+toplam); 3

Problem int toplam = 0; for (int i = 1; i <= 10; i++) toplam += i; System.out.println("1-10 araliginin toplamı:"+toplam); toplam = 0; for (int i = 20; i <= 30; i++) toplam += i; System.out.println(«20-30 araliginin toplamı:"+toplam); toplam = 0; for (int i = 35; i <= 45; i++) toplam += i; System.out.println(" 20-30 araliginin toplamı:"+toplam); 4

Çözüm public static int toplam(int i1, int i2) { int top = 0; for (int i = i1; i <= i2; i++) top += i; return top; public static void main(string[] args) { System.out.println("1-10 aralık toplamı: " +toplam(1, 10)); System.out.println("20-30 aralık toplamı: "+ toplam(20, 30)); System.out.println("35-45 aralık toplamı:"+ toplam(35, 45)); 5

Metotların Tanımlanması Bir metot bir işlemi gerçekleştirmek için yazılan komutların bir koleksiyonudur. Metod başlığı Metod göv modifier Metodun tanımlanması Geri dönüş türü Metodun adı Giriş parametreleri parametre listesi Metodun imzası Metodun çağrılması int z = max(x, y); Gerçek parametreler (argümanlar) Geri dönüş değeri 6

Metot İmza Metot imzası metodun adı ve parametre listesinin birleşimidir. Metod başlığı Metod göv modifier Metodun tanımlanması Geri dönüş türü Metodun adı Giriş parametreleri parametre listesi Metodun imzası Metodun çağrılması int z = max(x, y); Gerçek parametreler (argümanlar) Geri dönüş değeri 7

Giriş Parametreleri Metot başlığında tanımlanan değişkenler giriş parametreleridir. Metod başlığı Metod göv modifier Metodun tanımlanması Geri dönüş türü Metodun adı Giriş parametreleri parametre listesi Metodun imzası Metodun çağrılması int z = max(x, y); Gerçek parametreler (argümanlar) Geri dönüş değeri 8

Gerçek parametreler Bir metot çağrıldığında parametreye bir değer gönderilir. Bu değer argüman veya gerçek parametre olarak isimlendirilir. Metod başlığı Metod göv modifier Metodun tanımlanması Geri dönüş türü Metodun adı Giriş parametreleri parametre listesi Metodun imzası Metodun çağrılması int z = max(x, y); Gerçek parametreler (argümanlar) Geri dönüş değeri 9

Geri dönüş değeri tipi Bir metot herhangi bir değer geri döndürebilir. Geri dönüş değerinin tipi metodun return ile geri gönderdiği değerin tipidir. Eğer method bir değer geri göndermiyorsa geri dönüş tipi void olur. Örneğin main metodunun geri dönüş türü void tir. Metod başlığı Metod göv modifier Metodun tanımlanması Geri dönüş türü Metodun adı Giriş parametreleri parametre listesi Metodun imzası Metodun çağrılması int z = max(x, y); Gerçek parametreler (argümanlar) Geri dönüş değeri 10

Animasyon Metotların çağrılması I değerinin geçişi J değerinin geçişi public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 11

Animasyon Metodun çağrılması i şimdi 5 public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 12

Animasyon Metodun çağrılması j şimdi 2 public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 13

Animasyon Metodun çağrılması max(i, j) metodunu çağır public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 14

Animasyon Metodun çağrılması max(i, j) metodunu çağır i değerini num1 e aktar j değerini num2 ye aktar public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 15

Animasyon Metodun çağrılması Result degiskenini tanımla public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 16

animation Trace Method Invocation (num1 > num2) şartı doğru. Çünkü num1=5 ve num2=2 dir. public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 17

Animasyon Metodun çağrılması result şimdi 5 public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 18

Animasyon Metodun çağrılması Result değerini ana programa gönder public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 19

Animasyon Metodun çağrılması max(i, j) metodundan dönen değeri k değişkenine ata public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 20

Animasyon Metodun çağrılması Execute the print statement public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); 21

DİKKAT Değer döndüren bir metotta return komutu olmak zorundadır. Aşağıda (a) da verilen metot mantıksal olarak doğru olmasına rağmen derleme hatası verir çünkü java ilgili metodun herhna because the Java compiler thinks it possible that this method does not return any value. public static int sign(int n) { if (n > 0) return 1; if (n == 0) return 0; if (n < 0) return 1; Should be public static int sign(int n) { if (n > 0) return 1; if (n == 0) return 0; return 1; (a) (b) To fix this problem, delete if (n < 0) in (a), so that the compiler will see a return statement to be reached regardless of how the if statement is evaluated. 22

Yığın Çağrıları max metodu için boşluk gerekir. num2: 2 num1: 5 Max metodu için alan gerekir. result: 5 num2: 2 num1: 5 Main metodu için boşluk gerekir. k: j: 2 i: 5 Main metodu için boşluk gerekir. k: j: 2 i: 5 Main metodu için alan gerekir. k: j: 2 i: 5 Space required for the main method k: 5 j: 2 i: 5 Yığın boş (a) Ana metod çağrılır. (b) max metodu çağrılır. (c) Main metodu çalıştırılıyor. (d) Max metodu bitirilir ve geri dönüş değeri k değerine gönderilir. (e) Main metodu bitti. 23

Animasyon Yığın çağrılması örnek i tanımlanır ve başlangıç değeri atanır. public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); Ana metot çağrılır i: 5 24

Animasyon Yığın çağrılması örnek j i tanımlanır ve değeri atanır. public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); j: 2 i: 5 Main metodu çağrılır 25

Animasyon Yığın çağrılması örnek k değerinin tanımlanması public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); main metodu için alan gerekir k: j: 2 i: 5 main metodu çağrılır. 26

Animasyon Yığın çağrılması örnek max(i, j) çağrılır public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); Main metodu için alan gerekir. k: j: 2 i: 5 main metodu çağrılır. 27

Animasyon Yığın çağrılması örnek i değerini num1 e j değerini num2 ye aktar. public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); num2: 2 num1: 5 Main metodu için alan gerekir. k: j: 2 i: 5 max metodu çağrılır. 28

Animasyon Yığın çağrılması örnek i ve j değerlerini num1 ve num2 ye ata public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); result: num2: 2 num1: 5 Main metodu için alan gerekir. k: j: 2 i: 5 max metodu çağrılır. 29

Animasyon Yığın çağrılması örnek (num1 > num2) true değeri alır public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); result: num2: 2 num1: 5 main metodu için alan gerekir. k: j: 2 i: 5 max metodu çağrılır. 30

Animasyon Yığın çağrılması örnek num1 deki değeri result değişkenine ata public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); max metodu için alan gerekir. result: 5 num2: 2 num1: 5 Main metodu için alan gerekir. k: j: 2 i: 5 max metodu çağrılır 31

Animasyon Yığın çağrılması örnek result değerini geri döndür ve k ya ata public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); max metodu için alan gerekir. result: 5 num2: 2 num1: 5 Main metodu için alan gerekir. k:5 j: 2 i: 5 The max method is invoked. 32

Animasyon Yığın çağrılması örnek print komutunu çalıştır public static void main(string[] args) { int i = 5; int j = 2; int k = max(i, j); System.out.println( "The maximum between " + i + " and " + j + " is " + k); main metodu için alan gerekir. k:5 j: 2 i: 5 main metodu çağrılır. 33

Void metodu public class TestVoidMethod { public static void main(string[] args) { System.out.print("The grade is "); printgrade(78.5); System.out.print("The grade is "); printgrade(59.5); public static void printgrade(double score) { if (score >= 90.0) System.out.println('A'); if (score >= 80.0) System.out.println('B'); if (score >= 70.0) System.out.println('C'); if (score >= 60.0) System.out.println('D'); (System.out.println('F'); 34

Parametre Geçişi public static void nprintln(string message, int n) { for (int i = 0; i < n; i++) System.out.println(message); nprintln( Welcome to Java, 5); şeklinde metot çağrıldığında çıkış ne olur? nprintln( Computer Science, 15); şeklinde metot çağrıldığında çıkış ne olur? 35

Parametre Geçişi num1ve num2 değerleri n1 ve n2 ye atılır. Yer değiştirmenin çalıştırılması num1 ve num2 yi etkilemez. Swap metodu için gerekli alan temp: n2: 2 n1: 1 main metodu için gerekli alan num2: 2 num1: 1 main metodu için gerekli alan num2: 2 num1: 1 main metodu için gerekli alan num2: 2 num1: 1 Yığın boş Main metodu çağrılır. swap metodu çağrılır. Swap metodu bitirilir. Main metodu bitirilir. 36

Lokal değişkenlerin faaliyet alanı Lokal değişken: bir metot içinde tanımlanan değişkendir. Faaliyet alanı: değişkenin ulaşılabildiği alan. Lokal bir değişkenin faaliyet alanı tanımlandığı yerden başlar ve değişkeni içeren bloğun sonuna kadar devam eder. Lokal bir değişken kullanılmadan önce tanımlanmalıdır. 37

Lokal değişkenin faaliyet alanı İç içe olmayan bloklarda bir değişkeni aynı isimle birkaç kez tanımlayabilirsiniz. Fakat içiçe bloklarda bir değişkeni aynı isimle iki kez tanımlayamazsınız. 38

Lokal değişkenin faaliyet alanı Bir for döngüsü başlığının başlangıç atamasında tanımlanan bir değişken bütün döngüde bir faaliyet alanına sahiptir. Fakat bloğun herhangi bir noktasında tanımlanan bir değişken tanımlandığı yerden bloğun sonuna kadar bir faaliyet alanına sahiptir. The scope of i The scope of j public static void method1() {.. for (int i = 1; i < 10; i++) {.. int j;... 39

Lokal değişkenlerin faaliyet alanı Içiçe olmayan iki blok içerisinde i değişkeni tanımlanmıştır. public static void method1() { int x = 1; int y = 1; for (int i = 1; i < 10; i++) { x += i; for (int i = 1; i < 10; i++) { y += i; Iç içe iki blokta aynı i değişkeni Tanımlanamaz. public static void method2() { int i = 1; int sum = 0; for (int i = 1; i < 10; i++) sum += i; 40

Lokal değişkenin faaliyet alanı // Hata yok public static void correctmethod() { int x = 1; int y = 1; // i tanımlandı for (int i = 1; i < 10; i++) { x += i; // i tekrar tanımlandı for (int i = 1; i < 10; i++) { y += i; 41

Lokal değişkenin faaliyet alanı // hata yok public static void incorrectmethod() { int x = 1; int y = 1; for (int i = 1; i < 10; i++) { int x = 0; x += i; 42

Sınıf sabitleri: PI E Sınıf met: Math Sınıfı Trigonometrik metotlar Üstel metotlar Yuvarlama metotları min, max, abs, ve random Metotları 43

Trigonometrik Metotlar sin(double a) cos(double a) tan(double a) acos(double a) asin(double a) atan(double a) Radians Örnekler: Math.sin(0) returns 0.0 Math.sin(Math.PI / 6) returns 0.5 Math.sin(Math.PI / 2) returns 1.0 Math.cos(0) returns 1.0 Math.cos(Math.PI / 6) returns 0.866 Math.cos(Math.PI / 2) returns 0 toradians(90) 44

Üstel metotlar exp(double a) e^a değerini döndürür. log(double a) a değerinin doğal logaritması. log10(double a) a nın 10-tabanında logaritmasını döndürür. pow(double a, double b) a^b değerini döndürür. Examples: Math.exp(1) returns 2.71 Math.log(2.71) returns 1.0 Math.pow(2, 3) returns 8.0 Math.pow(3, 2) returns 9.0 Math.pow(3.5, 2.5) returns 22.91765 Math.sqrt(4) returns 2.0 Math.sqrt(10.5) returns 3.24 sqrt(double a) a değerinin karekökünü hesaplar. 45

Yuvarlama Metotları double ceil(double x) x en yakın büyük tam sayıya yuvarlanır. Bu tam sayı double olarak döndürülür. double floor(double x) x en yakın küçük tam sayıya yuvarlanır. Bu değer double olarak döndürülür. double rint(double x) x en yakın tamsayıya yuvarlanır. Eğer x iki tamsayıya yakın olarak eşit ise çift olan döndürülür. int round(float x) Return (int)math.floor(x+0.5). long round(double x) Return (long)math.floor(x+0.5). 46

Rounding Methods Examples Math.ceil(2.1) returns 3.0 Math.ceil(2.0) returns 2.0 Math.ceil(-2.0) returns 2.0 Math.ceil(-2.1) returns -2.0 Math.floor(2.1) returns 2.0 Math.floor(2.0) returns 2.0 Math.floor(-2.0) returns 2.0 Math.floor(-2.1) returns -3.0 Math.rint(2.1) returns 2.0 Math.rint(2.0) returns 2.0 Math.rint(-2.0) returns 2.0 Math.rint(-2.1) returns -2.0 Math.rint(2.5) returns 2.0 Math.rint(-2.5) returns -2.0 Math.round(2.6f) returns 3 Math.round(2.0) returns 2 Math.round(-2.0f) returns -2 Math.round(-2.6) returns -3 47

min, max, and abs max(a, b)and min(a, b) İki değerden maksimum veya minimumu döndürür. abs(a) Parametrenin mutlak değerini döndürür. random() [0.0, 1.0) aralığında double bir değer döndürür. Örnekler: Math.max(2, 3) returns 3 Math.max(2.5, 3) returns 3.0 Math.min(2.5, 3.6) returns 2.5 Math.abs(-2) returns 2 Math.abs(-2.1) returns 2.1 48

random Metodu 0.0 dan büyük eşit ve 1.0 dan küçük rastgele bir double üretir. (0 <= Math.random() < 1.0). Örnekler: (int)(math.random() * 10) 50 + (int)(math.random() * 50) 0 ve 9 arasında rastgele bir tam sayı döndürür. 50 ile 99 arasında rastgele bir tamsayı döndürür. Genelde, a + Math.random() * b a ile a+b arasında rastgele bir tamsayı üretir. 49