// METODLAR, Method, function
// çağrılmadığı sürece çalışmayan kod bloğudur.
// sürekli tekrar tekrar uzun kod yazmamak için
// düzen için
// metodlara istediğimiz adı verebiliriz.
// bir blokta aynı isimde bir metod olabilir (c# da böyle değil)
// tanımlanması
// DönüşTipi MetodAdı(){
// }
// void, boş, hiç anlamına geliyor,
// dönüştipi olarak yazarsak hiçbirşey döndürmez denir
import 'dart:math';
void MerhabaYaz(){
print("Merhaba");
}
// Parametre ile devam edelim.
// Parametre, metodun çağrılırken içerisine veri göndermemizi sağlar
void EkranaYaz(String yazi){
print(yazi);
}
// Birden fazla parametre olabilir,
// parametreleri , ile ayırırız
void ToplamiYaz(int a, int b){
int toplam = a + b;
print("Toplam = $toplam");
}
// ToplamHesapla adında bir metod istese idik
// ne yapacaktı, toplamı hesaplayıp, sonucu çağrıldığı yere döndürmesi lazım
// dönüştipi void değilse, mutlaka return olmalıdır.
int ToplamHesapla(int a, int b){
int toplam = a+b;
return toplam; // geri döndür, değeri
// Not: return görüldüğünde metoddan çıkılır.
}
void main(){
MerhabaYaz(); // çağırmak için adını yazmak yeterlidir,
// aslında zaten metod kullanmıştık
// print("Ekrana bir şey yazdık."); // mesela bu voiddi, işi yapar çağrıldığoı yere döner
// int sayi = Random().nextInt(10); // bu ise çağrıldığı yere bir sayı döndürüyor.
EkranaYaz("Recep ÖZEN");
ToplamiYaz(5, 6);
int sonuc = ToplamHesapla(5,6);
print(sonuc);
}
// ZarAt adında bir metod tanımlayın.
// ve metodu kullanarak ürettiğiniz sayıyı ekrana yazın
import 'dart:math';
import 'p1101.dart';
int ZarAt(){
int zar = Random().nextInt(6)+1;
return zar;
}
void main(List<String> args) {
print(zarAt());
int sayi = zarAt();
print(sayi);
}
// Zorunlu olmayan parametreler
// metoda bir parametre yazdığımızda, çağırırken mecburi parametre de yazılmalı
import 'dart:io';
// void EkranaYaz(String yazi){
// stdout.write(yazi);
// }
// // yukarıdaki metod, ekrana yazar alta geçmez
// void EkranaYaz(String yazi, bool yenisatir){
// stdout.write(yazi);
// if(yenisatir){
// stdout.write("\n");
// }
// }
// void main(List<String> args) {
// EkranaYaz("Recep",false);
// EkranaYaz("ÖZEN",false);
// }
// ************************************************
// zorunlu olmayan parametreler küme bloğu içerisinde tanımlanır
// öncelikle yazılması gerekenler, zorunlu olanlardır,
// yani küme bloğundaki parametreler, en sonda kullanılır.
// küme bloğunda tanımlanan parametrelerin, varsayılan değeri olmalıdır.
// void EkranaYaz(String yazi, {bool yenisatir=true}){
// stdout.write(yazi);
// if(yenisatir){
// stdout.write("\n");
// }
// }
// void main(List<String> args) {
// EkranaYaz("Recep",yenisatir: false);
// EkranaYaz("ÖZEN");
// }
// ***************************************************
// kendisine gönderilen listeyi küçükten büyüğe veya
// büyükten küçüğe sıralanmış olarak ekrana yazan metodu tanımlayınız.
// parametre olarak liste gönderilecek, aynı zamanda yon adında bir zorunlu olmayan
// parametre de küçükten büyüğe mi büyükten küçüğe mi sıralanacağını belirtsin
// varsayılan olarak küçükten büyüğe sıralama yapılacaktır.
void Sirala(List<int> a, {bool yon = true}){
List<int> yeni = a.toList();
yeni.sort();
if(yon) print(yeni);
else print(yeni.reversed);
}
void main(List<String> args) {
List<int> liste = [3,56,7,23,8,1,9];
Sirala(liste,yon: false);
print(liste);
}
No comments:
Post a Comment