29 Nisan 2015 Çarşamba

SQL'de CHARINDEX Fonksiyonu Kullanımı

Transact-SQL dilinde kullanılan önemli karakter fonksiyonlarından biriside CHARINDEX'dir. Bu fonksiyon bir karakter dize içinde belirtilen bir ifadenin (karakterin) başlangıç konumunu döndürür. Örneğin e-mailleri tutan bir alanınız mevcut, burada "@" işareti öncesi ve sonrasını belirlemede veya ',' ile ayrılmış bir karakter dizesinde virgül öncesini ve sonrasını belirlemede kullanabilirsiniz. Kısaca bir karakter kümesinin içerisinde geçen bir karakterin, bu karakter kümesinde kaçıncı karakter olduğunu bulmak için ve bir string ifade içinde başka bir string ifade aramak için kullanırız.

Kullanımı : CHARINDEX ( ifade1, ifade2[ , başlangıç konumu] )  
İfade1: Aranacak karakterleri belirtir.  
İfade2: İfade1'deki karakterlerin aranacağı karakterleri belirtir. 
Başlangıç Konumu: Aramanın başlanacağı konumu belirtir.

Döndürdüğü Tür: Int 
 
İfadelerden birisi NULL ise CHARINDEX fonksiyonu NULL değerini döndürür. İfade1, İfade2 içinde bulunamazda 0 değeri döner.

CHARINDEX fonksiyonu 2 parametre almaktadır. 1.parametredeki değerin 2.parametre olarak verilmiş değerde olup olmadığını belirtir. Kullanımı oldukça basittir. 

Örnek Sorgu 1: 
DECLARE @ornek1 varchar(255)
SET @ornek1= 'Cogito ergo Sum: Düşünüyorum, o halde varım. René Descartes'
SELECT CHARINDEX('ergo', @ornek1)
SELECT CHARINDEX(',', @ornek1) 

Örnek Sorgu 2: 
SELECT Adi, CHARINDEX('A',Adi)
AS "A Harfinin Konumu",
CHARINDEX ('a',Adi) AS "a Harfinin Konumu"
FROM dbo.Personeller

Örnek Sorgumuzda a ve A değerleri aynıdır. Aranan değerin ilk bulunduğu konumunun yeri döner. Diğer sonraki konumlar dikkate alınmaz. Yani tek karakter için büyük küçük harf ayrımı yoktur.

Örnek Sorgu 3: 
SELECT CHARINDEX ('E','Ne kadar bilirsen bil, söylediklerin karşındakinin anlayabileceği kadardır. Mevlana')
SELECT CHARINDEX ('L','Zeki adamlar söyleyecek bir şeyleri olduğu için konuşurlar. Aptallar, konuşmaları gerektiği için. Platon')
SELECT CHARINDEX ('KİMSE','Bir kimsenin düşüncesini açıklayamaması köleliktir. Euripides')
SELECT CHARINDEX ('DİY','Dünyanın ahlaksız diye adlandırdığı kitaplar dünyaya kendi utancını gösterenlerdir. Oscar Wilde') 

26 Nisan 2015 Pazar

PHP'de Operatörler

Operatörler değerler ve değişkenler üzerinde işlem yaparak düzenlememiz, sağlayan özel karakterlerdir. Tüm programlama dillerinde olduğu gibi PHP'de de standart atama operatörleri bulunmaktadır. Operatörler; aritmetik, işaret, karşılaştırma ve mantıksal olarak dört gruba ayrılır.

Aritmetik Operatörler : Temel matematiksel hesaplamaları yapmak için kullanılan operatörlerdir.

% operatörü bir sayının başka bir sayıya bölümünden kalanı vermektedir.
++ operatörü bir değişkenin değerini 1 arttırmakta kullanılır,
-- ise aynı şekilde 1 azaltmakta kullanılır.

Not: $x++ ifadesi ile ++$x ifadesi uygulamada farklı sonuçlar vermektedir. $x++ ifadesi önce $x değişkenini kullan sonra 1 arttır, ++$x ifadesi ise önce 1 arttır sonra $x değişkenini kullan anlamına gelmektedir.

Örnek 1:
<?php
$a = 5;
$b = 3;
$c = 2;
$s = $a + $b - $c;
echo $s;
?>
Örnekte çıktı olarak ekranda 6 yazacaktır.

Not: Kod üzerinde işlem önceliği aynen matematikte olduğu gibi; önce çarpma ve bölme, sonra toplama ve çıkarma işlemi şeklindedir.

Örnek 2:
<?php 
$x=10;           // x değişkeni oluşturduk ve değer olarak 10 verdik.
$y=5;            // y değişkeni oluşturduk ve değer olarak 5  verdik.
$carpma=$x*$y;   // carpma değişkenimizi oluşturduk ve değişkenlerimizi çarptık.//
$toplam=$x+$y;   // toplam değişkenimizi oluşturduk ve değişkenlerimizi topladık.//
$cikarma=$x-$y;  // cikarma değişkenimizi oluşturduk çıkarma işlemini gerçekleştirdik.//
$bolme=$x/$y;    // bolme değişkenimizi oluşturduk bölme işlemini gerçekleştirdik.//
$kalan=$x%$y;    // kalan değişkenimizi oluşturduk ve mod operatörü ile kalanı bulduk.//
echo"Çarpım : $carpma <br>"; 
echo"Toplam : $toplam <br>"; 
echo"Çıkarma : $cikarma <br>"; 
echo"Bölme : $bolme<br>"; 
echo"Kalan : $kalan<br>";
?>
Örnek 2 çıktısı:
Çapım : 50
Toplam : 15
Çıkarma : 5
Bölme : 2
Kalan : 0


25 Nisan 2015 Cumartesi

PHP'de Değişken Öldürme (unset)

PHP'de büyük değerleri taşıyan her bir değişken sunucudaki RAM'de belirli bir yer tutacağından değişkenleri öldürmemiz gerekir. Kısaca Değişken Öldürme = $degişken değerini silmektir. 

Örnek 1:Bir değişkeni unset edelim.
<?php
$soyad="BAYRAKTAR";
echo $soyad; 
//şimdi değişkenimizi öldürelim
unset($soyad);
?>
Örneğimizde $soyad değişkenimizi tanımladık ve değişkenimize "BAYRAKTAR" değerini atadık. unset komutunu kullanarak değişkenimizi öldürdük. Yani değişkenimizin RAM'de kapladığı alanı silmiş olduk.Burada unutmamız gereken kısım oluşturduğumuz her değişkeni öldürmemiz gerektiği değil yüklü verilerin tutulduğu değişkenlerin program akışı içerisinde kullanım alanı bittiğinde öldürülmesi gerektiğidir.

Örnek 2: Birden fazla değişkeni unset edelim.
<?php
$soyad="BAYRAKTAR";
$ad="İBRAHİM";
$website="www.ibrahimbayraktar.net";
unset($soyad,$ad,$website);
echo $website;
?>
Örneğimizde birden fazla tanımlamış olduğumuz değişkenlerimizi unset komutu içerisine virgülle ekleyerek değişken öldürme işlemimizi gerçekleştirdik.

PHP'de Sabitler (Constants)

PHP'de sabitler, basit bir değerin adı olup PHP kodlarının çalışması esnasında değiştirilemez. sabitler öntanımlı olarak büyük-küçük harf duyarlıdır. Geleneksel olarak, sabit isimleri daima büyük harfle yazılır. Sabit adı bir harf veya alt çizgi karakteri ile başlamalı ve harf, rakam ve alt çizgi karakterlerinden oluşan ifadelerle devam etmelidir. Sabitlerin kullanım amacı programda herhangi bir değerin değişmesini engellemektir. Sabitler sadece bir kez tanımlanıp bir daha değiştirilemediği için güvenlidir.

Bir Sabit Tanımlayalım:
Bir sabit tanımlamak için define() fonksiyonunu veya const anahtar kelimesini kullanabilirsiniz. Bir sabiti tanımladıktan sonra değiştiremez veya tanımsız hale getiremezsiniz. Sabitlerin değişkenlerden en büyük farkı; bir kez tanımlandıktan sonra değiştirilememeleri ve tüm PHP kodları içinde otomatik bir şekilde global olarak değerlendirilmelidir.

Örnek 1:
<?php
define('bayraktar', 'ibrahimbayraktar.net');
// bayraktar adında bir sabit oluşturduk ve değerini ibrahimbayraktar.net yaptık  
?>

Bir sabite verilen isim PHP'de varolan diğer tüm isimlerle aynı kurallara tabidir. Geçerli bir sabit ismi bir harfle ya da alt çizgi imi ile başlar, herhangi bir sayıda harf, rakam ya da alt çizgi ile devam eder. Sabitler içine boolean, integer, float ve string değerler atanabilir. Sabiti tanımladıktan sonra, sabitin ismini kullanarak sabit değerine erişebilirsiniz. Adını bildiğiniz bir sabitin değerini dinamik olarak almak için constant() fonksiyonunu ve tanımlanmış tüm sabitlerin bir listesini almak için ise get_defined_constants() fonksiyonunu kullanabilirsiniz.

Örnek 2:
<?php      
define("pi",3.14);
echo pi;     
?>

const anahtar kelimesi ile bir sabit tanımlayalım:
<?php 
const UNIVERSITE= "BOZOK"; 
?>
const anahtar kelimesi ile tanımlanan sabitlerin isimlerinin tırnak içinde yazılması zorunlu değildir. define() fonksiyonu ile tanımlanan sabitlerle bir istisna dışında aynı kurallara tabidir ve aynı özellikleri taşır. Bir sabit define() ile programın herhangi bir yerinde tanımlanabilirken const ile tanımlanan sabitler; fonksiyonlar, akış denetimleri, döngüler gibi iç bloklarda değil programın en üst seviyesinde tanımlanmalıdır. Bunun nedeni const ile tanımlanan sabitlerin derleme zamanı ele alınmasıdır.

defined() işlevi ile bir sabitin tanımlanıp tanımlanmadığına bakalım: 
<?php 
define('bayraktar', 'ibrahimbayraktar.net');
echo defined('bayraktar'); 
?>
Örnekte çıktı olarak ekranda 1 yazacaktır, "1" sonucun olumlu olduğunu göstermektedir. Sonuc olumsuz ise ekranda bir şey yazmayacaktır.

15 Nisan 2015 Çarşamba

Orta Çağ'da Bilim ve Teknoloji

FELSEFE Ders Notları 2
Bilim ve Teknoloji Tarihi
Orta Çağ'da Bilim ve Teknoloji


Antik Çağ ve Modern Çağ arasında yer alan M.S. 395 ile M.S. 1450 arasındaki döneme, Rönesans düşünürleri tarafından Orta çağ adı verilmiştir.  

Bu çağ, nitelik ve yapı bakımından farklı özellikler taşıyan iki zaman dilimini içermektedir. 
  • M.S. İkinci yüzyıldan sekizinci yüzyıla kadar, Patristik Dönem ya da Karanlık Çağ, 
  • Sekizinci yüzyıldan onbeşinci yüzyıla kadar, Skolastik Dönem’dir. 
Her iki zaman diliminde de hıristiyanlığın savunularak, üstün kılınması öne çıkmıştır. Fakat özellikle, Patristik Dönem’de bilime karşı olan tutum daha dikkat çekicidir. Ortaçağ felsefesi, Hıristiyan düşünürlerin, antik dönem felsefesi karşısında yer alarak, onu yok etmek şeklindeydi. 

Hristiyanlar tarafından Ortaçağ'da yapılan matematik çalışmalarında iki matematikçinin adı geçmektedir: Leonardo Fibonacci ve Jordanus Nemorarius.

Leonardo Fibonacci: İslam dünyasındaki matematik çalışmalarını ve Hint-Arap sayı sisteminin Avrupa ülkelerinde tanınmasını sağlayan matematikçidir. Günümüz matematikçileri Fibonacci'yi kaleme aldığı Liber Abaci isim eserinde geçen problemler tanırlar.

Jordanus Nemorarius: Avrupalı matematikçidir. Altı farklı önemli konuda Latince kaleme alınmış eserleri vardır. Bu eserlerin başlıkları Mekanik Scientia de Ponderibus-Ağırlıklar Bilimi, Algorizmi Makaleleri, Aritmetik, Cebir, Geometri, Stereografik izdüşümüdür.

İbni Sina: Aristoteles ve onun düşüncelerinin Müslüman yorumcusu İbni Sina'nın düşünceleri, Hristiyan dünyasında Ortaçağ'da yapılan fizik çalışmalarının gelişmesini ve ele alınan konu başlıklarını etkilemiştir.

İbni Sina'ya göre "kasri meyil" (hareket etme isteği) cismin özelliğine göre farklılık gösterir.

Newton'un eylemsizlik ilkesinin temelini İbni Sina atmıştır.

Optik konusunda çalışmış ve bilimsel bir kimliğe kavuşmasını sağlamış bilim adamı Robert Grosseteste, ışık konusuna tamamen mistik ve metafizik bir yaklaşım ileriye sürmüştür. Şeyh el Maktül'ün mistik-metafizik yaklaşımından etkilenerek düşüncelerini mantık ve optik temeline oturtmuştur.

Optik alanında çalışmalar yapan bir diğer önemli bilim adamı da Witelo'dur. Witelo'ya göre, görme, gözden çıkan ışık ışınları yla gerçekleşmez. Göz ve ışık ışınlarına dayalı teoriyi savunmayan tek bilim adamı Witelo'dur.
Roger Bacon : Doğa araştırmalarındai doğru bilgiye ancak deney yaparak ulaşılabileceğini savunarak, bilimsel bilginin elde edilmesinde deneysel yöntemi ifade eden ilk bilim adamı olmuştur.

Hareketle ilgili en önemli çalışmaları yapanlar: Oxford Üniversitesindeki Merton Koleji'nde çalışan dört matematikçidir. Thomas Bradwardine, Richard Swineshead, John Dumbleton, William Heytesbury. Bu grup, değişme ile hareket arasındaki ilişkiyi irdelemiştirler. Hareket de bir nitelik olarak kabul edilmiştir. Hareketin de bir şiddeti vardır. Bu şiddetin hız olduğuna karar vererek, hızın nasıl değişeceğini irdeleyerek, hareketin ivmeli hareket olmasına karar vermişlerdir. Yani ivme kavramını keşfetmişlerdir.

Personalizm: Ortaçağ düşünce sisteminde Personalizm düşünce sisteminde Tanrı insanın sahibidir. İnsan insanı sevmelidir. Çünkü Tanrı insanı sevmektedir. Yani Tanrıya karşı sorumlulukları olan insanın diğer insanlara karşıda sorumlulukları vardır. Tanrı'nın yarattığı evrenin her öğesi birbiriyle ilişkilidir, yani evren muhteşem bir organizmadır. Her öğenin bir amacı vardır.,  insanda bu evrende bulunduğu için, bir amaç uğruna Tanrı tarafından yaratılmıştır.

Orta Çağ İslam Dünya'sında bilimsel gelişmelerin yaşandığı üç önemli kurum:
  • Beytül Hikme (Bilgelik Evi)
  • Gözlemevleri
  • Rasathaneler
Beytül Hikme'nin önemli görevi: Dönemin ünlü astronom, matematikçi ve hekimlerini biraraya getirmek ve bilimin çeşitli alanlarındaki belli başlı yapıtları çeşitli dillerden ve özellikle Yunanca'dan Arapça'ya çevirmekti. Bu kurumun müdürlüğünü dönemin önemli bilim adamları yapmıştı. Fadl İbn Nevbant ve El Harezmi vd.

Ünlü İtalyan Şairi Dante'yi etkileyen ve dört kitaptan oluşan felsefe, siyaset ve ahlakla ilgili Convivio isimli eserinin ikinci kitabını astronomiye ayırmasına sebeb olan bilim adamı Fergani'dir.

İlk gözlemevleri, Orta Çağ İslam Dünyasında kurulmuştur.

İslam Dünyasındaki ilk hastane, Emeviler döneminde Şam'da kurulmuştur. Bu hastanede Hint tıbbının etkili olduğu söylenmektedir. İkinci Hastane Kahire'de, Üçüncü hastane ise Abbasi Halifesi Mansur zamanında Bağdat'ta kuruldu.
Abdulhamit İbn Türk: Dokuzuncu yüzyılda yaşamış, sayılar teorisi ve cebir alanında çalışmıştır. Harezmi'nin çağdaşıdır.

Sabit İbn Kurra: Çinlilerden sonra sihirli kareleri inceleyen ilk matematikçidir. Bir açının üçe bölünmesi ve Pisagor teoreminin genel ispatı gibi çalışmalar yapmıştır. Harran'da doğmuştur.

Ömer Hayyam: Astronomi, fizik, matematik, cebir ve tıp alanında çalışmalar yapmıştır. Hayyam Pascal üçgeni olarak isimlendirilen yöntemi Pascal'dan yüzlerce yıl önce bulmuştur. Bu nedenle bilim tarihçileri Pascal Üçgeni yerine Hayyam Üçgeni ismini kullanmaktadırlar. 

Battani: Gökküre bölümleri üzerine çalışmalar yapmıştır. Hint matematikçi ve astronomu olan Aryabhata'dan bağımsız olaraki sinüs ve tanjantın hesaplamalarda kullanımlarını ele alarak, modern trigonometrinin temelini atmıştır. Harran'da doğmuştur. Bugüne ulaşan tek kitabı: Zic-i Sabi

Orta Çağ İslam Dünyasında;
Mekaniğin öncü bilim adamı İbn Sina
Optiğin öncü bilim adamı İbn el Heysem'dir.

Cabir bin Hayyan: Teorik ve deneysel çalışmalarıyla kimyanın gelişmesinde önemli rolü olmuştur.
Zehravi: İslam dünyasının en ünlü cerrahıdır. Kaleme aldığı el Tasrif  eserinde dönemin cerrahi bilgilerini ve yeni yöntemleri tanıtmıştır.

İbn Nefis: Şam'da ve Kahire'de hekimlik yapmıştır. İbni Sina'nın Kanunu'nun Anatomi bölümü için Açıklama isimli eserinde Galen'in kan dolaşımı ile ilgili görüşlerine itiraz ederek düzeltmiştir.

El Hazini Kitab: Mizan el Hikme (Hikmet Terazisi) kitabında su terazisini geliştirmiştir. El Mizan el Cami (Toplayan Terazi) adını verdiği terazi, iki metre uzunlukta, iki santimetre kalınlıkta  bir tahta parçasından oluşuyordu. Bu terazi son derece hassas olup, 4,5 kilogramda 0,75 gramlık farkı bile gösterebilecek kadar duyarlıydı. Sultan Sencer'in himayesinde yaşamıştır.

İlhanlı hükümdarı Hulagu tarafından kurdurulan Meraga gözlemevinin kurucusu: Nasıruddin Tusi'dir. Önemli Eseri : el-Zic el İlhani

Copyright 2013-2017 | İbrahim BAYRAKTAR /dev/null Web Günlüğü