Would you like to react to this message? Create an account in a few clicks or log in to continue.


web
 
AnasayfaGaleriLatest imagesKayıt OlGiriş yap
Programlama Giriş Ybanner Programlama Giriş 2cznnm
 

 

 Programlama Giriş

Aşağa gitmek 
YazarMesaj
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:43 am

Programlama Giriş
(Programlama nedir? Programlama dillerinin sınıflandırılması ve hangi programlama dilini kullanmalıyım? )

Öncelikle forumda sıklıkla
karşılaşılan bu büyük soruna cevap yazmak istedim... Neden diye soracak
olursanız? Arkadaşlarımız programlama dillerini seçme konusunda hepimiz
gibi kulaktan dolma yanlış bilgilerle aslında daha başlamadan
programlama hayatını bitiriyor. Onun için Programlamaya yeni
başlayacaklar veya öğrenmek istediği dilde dikiş tutturamayanlar lütfen
bu yazıyı dikkatle okuyunuz:


Her türlü donanım birimi
mevcut olan bir bilgisayar, bu donanımı amaca uygun olarak kullanan bir
programı olmadıkça işe yaramayacaktır. Buna karşılık çalıştıracağı
donanım olmayan bir bilgisayar programı da işe yaramayacaktır. Bütün
bunlara dayanarak şunu söyleyebiliriz; yazılım ve donanım olmadan
bilgisayardan söz etmek mümkün değildir. İşte bu yazılımlarda
programlama dilleri ile hazırlandıkları için gelin öncelikle bazı
teknik terimleri yazılımın tarihini ve dilleri iyice bir tanıyalım:


Yazılım Sınıfları:

  • İşletim Sistemleri
  • Derleyiciler, Yorumlayıcılar
  • Editörler
  • Bilimsel Mühendislik Yazılımları
  • Görüntüsel Yazılımlar
  • Mesleki Ve Ticari Yazlımlar
  • Sistem Yazılımları
  • Debug Programları
  • Yapay Zekâ Yazılımları… Vb
Programlama Tarihçesi
-Abdullah bin Musa el-Harezmî, Algoritmik
tanımlama ile problem çözümleme yolunu geliştirerek Bilgisayar
Biliminin gelişmesine çok büyük katkı sağlayan Müslüman Bilim adamı.
Algoritma dediğimiz ifadede zaten el-Harezmiden gelmektedir.
NOT:Algoritmik tanımlama ile problem çözümleme” yaklaşımıdır. Türk
ve Müslüman kökenli Harzemli gerek “Cebir Bilim Dalının” kurucusu ve
gerekse, Bilgisayar Programlama Kuramının temeli olan “ Çözüm ya da Program algoritması” tanımlama
kuramının yaratıcısı olduğu, toplumumuzda yaygınca tanıtılmamıştır.Ne
cebir ne de programlama kitaplarında yeterince vurgulanmamıştır. Üstüne
basa basa söylüyorum.
-
Pascalline, Blaise Pascal –1649’da makinenin patentini aldı. Toplama ve çıkarma yapabilen cihaz. Pascal adında bilgisayar dili var.)
-
Leibniz(1646–1716), Pascalline’ı geliştirdi. Çarpma ve bölme de yapabilen ilk mekanik cihaz.
-
Ada LOVELACE Charles Babbage’ın yardımcısı –ilk programcı. Ada isimli askeri amaçla kullanılan programlama dili var
-
George Bole, 1847 – Boole cebrini yayınladı. Sembolik mantık ve ikili sayı sistemi Von Neumann bilgisayarı Magnetik tamburlar üzerinde 0 ve 1’lerden oluşan makine dilinde yapıldı.
-
Grace Hopper 1952 – ilk bilgisayar derleyicisini geliştirdi
-
1950 – COBOL ve FORTRAN yüksek düzey programlama dilleri gelişti.
-
Bill Gates 21 yaşında iken bir arkadaşıyla birlikte Microsoft firmasını kurdu.Şuan Windows işletim sistemi ve .NET platformu ile paraya para demiyor. [Resimleri görebilmek için üye olun veya giriş yapın.]

Programlama Nedir?
Program, bilgisayarın amaca yönelik işleyişini sağlayan bir grup koda verilen isimdir. Bu kodlar bütününe programlama dili
denir. Bilgisayarı programlamak için, amaca uygun olarak çeşitli
programlama dilleri kullanılır. Programlama dillerini yani kod
öbeklerini iki ana grupta toplayabiliriz:

Programlama dillerinin seviyelerine göre sınıflandırılması:
İnsana En Yakın: Çok yüksek seviyeli programlama dilleri ya da görsel diller (Foxpro, Paradox, access, Vısual Basıc,....)

Yüksek seviyeli programlama dilleri (Pascal, Cobol, Fortran, Basıc,...)

Orta seviyeli programlama dilleri (C, ADA)

Alçak seviyeli programlama dilleri (sembolik makine dilleri)

Bilgisayara en Yakın:Makine dilleri (Bilgisayarın doğal çalışma dilleri, l ve 0’ ların dizilimlerinden oluşan)

Ve genel olarak ifade edilirse:

>> Düşük Seviyeli Diller>> Yüksek Seviyeli Diller
— Makine Dili
— Assembly-Görsel Diller-Görsel Olmayan Diller
— Visual Basic> C
— Delphi> Fortran
—Java> Cobol
— Visual C++> C++
.NET> Qbasic
> Pascal

Yine Programlama dillerini, temel yaklaşımlarına göre şu
sınıflarada ayrılıra biliriz. Buna göre belli başlı programlama dili
sınıfları şunlardır:

· Yordamsal (procedural / imperative) diller: C, Pascal, ...
· Nesneye dayalı (object based / oriented) diller: Ada, Smalltalk, ABAP, Avenue...
· Fonksiyonel (functional) diller: Lisp, Haskell, ...
· Mantıksal (logic) diller: Prolog, ...

Görsel programlama dilleri program
kodunun kısmen yâda tamamen görsel biçimde çeşitli araçlar tarafından
üretildiği dillerdir. Görselliğin ileri uçlarında program kodu bile
bulunmayabilir. Windows sistemlerinde Visual Basic, Access gibi görsel
diller yaygın bir biçimde kullanılmaktadır. Çok yüksek seviyeli dillere
dekleratif diller de denir. Veritabanlarının yönetimlerinde
kullandığımız dilleri bu gruba sokabiliriz. Yüksek seviyeli programlama
dilleri daha algoritmik dillerdir. Bu dillerde önce işlerin nasıl
yapılacağına ilişkin algoritmalar tasarlanır. Daha sonra bu
algoritmalar program koduna çevrilir. Basıc, Pascal, Fortran gibi
dilleri bu grup içerisinde ele alabiliriz.


Programlama dillerinin uygulama alanlarına göre sınıflandırılması:

Bilimsel ve Mühendislik Diller: Bu diller daha
çok bilimsel ve mühendislik problemlerinin çözümünde tercih edilirler.
PASCAL ve C dillerini, birde geleceği pek parlak olmayan ve hala
ısrarla kullanılan 90 canlı, dünyanın ilk yüksek seviyeli dili FORTRAN’
ı buna örnek verebiliriz.

Veritabanı Programlama Dilleri: Bu diller
veritabanlarının genel olarak yönetiminde kullanılan dillerdir: DBASE,
PARADOX, FOXPRO, SQL.. Kişisel bilgisayarlarda yaygın olarak
kullanılanlardan bazılarıdır.

Yapay Zekâ Dilleri: bu diller insan davranışını
taklit etmeye yönelik yapay zekâ içeren programların yazımında
kullanılan mantıksal dillerdir. En ünlüleri: LISP ve PROLOG.

Genel Amaçlı Diller: Çok çeşitli konularda uygulama geliştirmek amacıyla kullanılan dillerdir. C ve PASCAL’ ı örnek verebiliriz.
Sistem Programlama Dilleri: Sistem programlarının yazımında kullanılan dillerdir. C ‘ yi sembolik makine dillerini bu grup içinde ele alabiliriz.


Programlama dili seçiminde
öncelik bu dil ile hangi tür program yapacağımızdır. Örnek verecek
olursak kendisinden portlarla haberleşme programı istenen bir
arkadaşımız bunu COBOL ile veya FORTAN ile yapmaya kalkışırsa ne olacak
tabiî ki zaman kaybı. Ve hayal kırıklığıdır. Bu ifadeleri FORTRAN’ı
veya COBOL küçük düşürmek istemek için söylerim bu diller kulvarlarında
(COBOL: Muhasebe, FORTRAN:
Bilimsel
Mühendislik Yazılımları).Yine bir örnekte web için verelim: daha çok
web ile çalışacak bir arkadaşımız gidip FORTRAN ile veya daha web ile
daha alakasız bir dil ile başlarsa çok büyük zaman kaybı yapmış olur.
Peki, bu arkadaşımız ne yapmalı o zaman… İlk önce HTML dilini adam gibi
öğrenmeli. Daha sonrada PHP, ASP gibi etkileşimli bir dile geçerek asıl
programlamaya başlamalıdır.


Bilindiği gibi programlama
dilleri öğrenilmeden önce programlama tekniği ve algoritma tasarımı
mantığı öğrenilmedir. Yani bir yere ulaşmak için hangi araç
kullanacağımızdan önce mutlaka o yolun nasıl olacağı hakkında bilgi
toplamak veya fikir yürütmek gereklidir. İşte Algoritmada
programlamanın temelidir. Çözüme ulaşmak için kullanılan yolu yâda
yollardan birini ( kendimize en uygununu ) seçmektir…


Peki, hangi programlama dili ile başlamalıyım?

Evet, ortalıkta birçok
programlama dili var. Bu soru ( hangi programlama dili ile başlamalıyım
) daha çok sorulacak ve daha çok tartışmalar çıkacak gibi. Bana göre
öncelikle hangi dil amacınıza uygunsa, hangi dilden zevk alarak
programla yapabiliyorsanız, seviyorsanız ve en önemlisi para
kazanıyorsanız en iyi dil bence odur.


Bir kere her şeyden önce
kaynağa kolay ulaşmak önemlidir. Açıkçası bugün sanal ortamda
yazılımcılar, bir grup oluşturarak tek düşünce gibi bilgi alış verişi
yapılabiliyor. Bu konuda ülkemizi temel alacak olursak, ağırlıklı
olarak DELPHİ programlama dilinin yaygın olduğunu görebiliriz. Yâda
benim gözüme çok çarptı.
J
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:43 am

SONUÇ VE DİL SEÇİM

O zaman dil seçimi için kendimize şöyle sorular soralım bunların cevaplarına göre seçimimizi yapalım:

  1. Yapacağım program hangi yazılım türündedir? Yâda hangi amaç(lar) için bu programı yazacaksınız?
  2. Programdan istenilen unsurlar nelerdir? Yani sonuçta oluşacak programınızdan ne tür beklentileriniz var?
  3. Hangi platform için tasarlayacağım bu programı? ( Örneğin: Windows, web, Linux, MS-DOS, Machintosh … vb gibi)
  4. Web veya network bağlantısı olacak mı?
  5. Aynı anda kaç kişi bu programı kullanabilecek?
  6. Kullanılacak değişkenlerde belirli bir ölçüt varmı?
  7. Seçtiğim dil güncellemeye ne kadar açık olacak? Veya programınızı hangi zaman aralıkları ile güncelleyeceksiniz?
  8. Programın sağlam mı olması gerek yoksa sadece hızlı olması sizin için yeterli mi? Veya her ikisi de gerekli bir unsur mu?
  9. Maliyet ve risk yönetimi nasıl olacak?

Sonuç olarak programın hangi dille yazıldığı hiç de önemli değildir ( Nasıl sonuç ama J
ama devamını okuyun…). Aslında doğru düşünüp, hızlı çalışan, çok fazla
problem çıkartmayan ve şık tasarlamadıktan sonra hangi dille yazılırsa
yazılsın. Zamanın giderek önem kazandığı şu günlerde tasarım süresi
kısalan ve hızlı güncellenebilir programlar tercih sebebi olsa
gerektir. Yukarıdaki sorulara gerçekten net cevaplar bulup tabloya göre
dilimizi seçmeliyiz:



Platform
Yazılım Türü
DOS
Windows
Linux
Web
Sistem
Mühendislik ve Mat
Oyun
Yapay zekâ
Mesleki ve Ticari
C
.NET
C
HTML
C
Fortran
VB
Prolog
COBOL
C++
C++
C++
ASP
C++
PL-I
Delphi
C++
C++
Assembler
Delphi
Java
PHP

Matlab
Java

C
Pascal
Java
ADA
Java script

C++
Visual C++

.NET
Basic
Pascal
Basic
VB script

.NET
Pascal

Delphi

C
Lisp
Perl

VB


Pascal

Basic
Scheme
.NET




VB

VB
Kylix
C#







Python
XML






Bugün hali hazırda kullanılan pek çok programlama dili
vardır. İhtiyaca göre programlama yaparken hangi programlama dilinin
seçileceği önemlidir. Genel olarak bugüne kadar kullanılan programlama dilleri şunlardır:


· Basic
· Fortran
· Pl/1
· Rpg
· Cobol
· Modular2,3
· Turbo C++
· Pascal
· Cecil
· Ada
· Blue
· Dylan
· Eiffel
· Erlang
· Avenue
· Pynton
· Kylix

· Forth
· Haskell
· Icon
· Logo
· Lua
· Delphi
· VBasic
· PHP
· Perl
· SGML
· XML
· HTML
· ASP
· Java
· ABAP
· Beta
· VB
· Mercury
· Miranda
· ML
· Oberon
· Prolog
· Rexx
· Ruby
· Sather
· SETL
· Lisp
· C
· V C++
· VFocus Pro
· Occam
· Power Builder
· Smalltalk
· Snobol
· ABC
· APL
· Flash
· Python
· Tcl
· Apple script
· Shell script
· VB script
· Metlap
· CSH
· SH
· TSCH
· .NET




Arkadaşlar Yazılım Geliştime uzmanı olabilmek için çok fazla önkoşullar yoktur.

Yazılım sürecinekatılmak isteyenlerin orta düzeyde İngilizce bilgisine sahip olmaları
Yeterlidir. Şu an zaten hem internet üzerinde hem de kitapçılarda yeterli miktarda Türkçe kaynak bulabilirsiniz.

Ancak, sadece bir veya iki
dil öğrenerek tam bir programcı olamayacağınızı ya da üstat seviyesine
ulaşamayacağınızı da bilmeniz gerekiyor. Herhangi bir dilden bağımsız
olarak programlama problemleri hakkında düşünmeyi öğrenmelisiniz. Yani
algoritmalar dediğimiz çözüm yallarını bulmalısınız. Gerçek bir üstat
olabilmek için, yeni bir dili, el kitabında yazanlarla, bildiklerinizi
bağdaştırarak beklide bir kaç gün içerisinde öğrenebilir durumda
olmalısınız. Bu, çok iyi bir programcı olmak için birbirinden çok
farklı bir kaç dil bilmeniz gerektiği anlamına geliyor.

Eğer ciddi programlamaya
girecekseniz, Unix’in ana dili olan C’yi öğrenmelisiniz. C++, C ile
alakalıdır; birini öğrenirseniz, diğerini öğrenmek zor olmayacaktır.
Her iki dil de, ilk dil olarak öğrenmek için uygun değildir ama
kendinizi zorlarsanız gerçekten de C dili kaynak kullanımında tutumlu
ve verimli bir dildir. Maalesef, C, bu verimliliği, pek çok kaynağın
(bellek gibi) yönetimini doğrudan size bırakarak elde eder. Bu düşük
seviyeli (donanıma yakın) kodlama karmaşık ve hataya açıktır ve hata
ayıklamak için pek çok zamanınıza mal olur. Makinelerin güçlü olduğu
günümüzde, makinenin çalışma verimliliği yerine sizin çalışma
verimliliğinize öncelik tanıyan bir dil ile program yazmak daha
akıllıca olacaktır. Sonuç olarak ben size VB.NET veya VB ile
başlamanızı öneririm çünkü görsel bir dil gerçektende işinizi ilk
etapta bayağı kolaylaştıracaktır. Ama C’yi tercih etmenizi öneririm
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:43 am

Bölüm–3 Nesneye Dayalı Programlama Kavramı
Bu arada ilkyazımda programlama dilleri anlatırken Nesneye dayalı programlama (object oriented programming) dili kavramını vermeyi unutmuşum kısaca ona değinelim ve algoritmalara geçelim…

Programlama gerçek hayattaki durumların
modellenmesinden başka bir şey değildir. Bilgisayar programları bu
modellerin temel alınarak durumların bilgisayar ortamına
aktarılmasından ibarettir.

Türkçenin nasıl kuralları varsa programlama dillerinin
de kuralları vardır. Bunları gramer ve imla kuralları olarak ikiye
ayırabiliriz. İşte bilgisayar programı yazarken yaptığımız bu kuralları
kullanarak çeşitli durumları bilgisayar diline çevirmektir. Tabii her
dilinde kendine göre zorluğu veya değişik bir özelliği vardır. Mesela
Rusça dilinden bir örnek verecek olursak “okno” (ayna) diye yazılan
kelime okunurken “akno” diye okunur. Programlama dillerinde ise mesela
C de programlar main ana fonksiyonundan sonra “{“ işareti ile başlamalı
“}” işareti arasında yazılmalıdır.

Klasik programlamayla nesneye dayalı programlamanın tek farkı da bu noktadadır. Nesneye
dayalı programlama tekniği programcıya yüksek kalitede program yazma
imkânı sağlar fakat bunu yapabilmek için tasarım ve kodlama
aşamalarında bu ölçütleri göz önünde bulundurmalıyız.
Nesneye
dayalı programlama ile daha kolay (ucuza: zaman, adam, para)
oluşturabilir. Hata bulma, güncelleme yeniden kullanım da daha kolay
olur. Klasik programlamadan farklarını şöyle izah edelim:

Sınıf hazırlayabilme ve nesne yönelimli programlamanın bütün özellikleri, fonksiyon ve operatörleri aşırı yükleyebilme, şablon fonksiyon
ve sınıflar yazabilme, güçlendirilmiş ve daha güvenli bellek kontrolü,
değişkenleri programın herhangi bir yerinde tanımlayabilme (C’de sadece
fonks
iyon başında tanımlanabilir), referans argümanı kullanabilme (fonksiyonlarda)
ve referans değişkeni kullanabilme, Standart Template Library ile her
türlü veri yapısı ve veri organizasyonunda iyi bir çözüm ve nesne
yönelimli olarak yazılmış yüzlerce hazır kütüphane...

NYP’de sınıf kavramı vardır. Ve bu dilin daha esnek
olmasını sağlar. Aynı şekilde nesneye dayalı programlama yöntemleriyle
kullanılması verimliliği ve kodun müdahale edilebilirliğini daha da
artıracaktır.

"Olay yönlendirmeli Nesne yönelimli" programlama şu anda C# ve VB.NET dillerinin program geliştirme yaklaşımıdır
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:43 am

Bölüm-4
Algoritma Nedir?
Sorunun
çözümü için saptanmış sonlu sayıda basamaktan oluşan adımlar veya
komutlar takımıdır. Programlama mantığıdır. Yukarıda söylediğim gibi
ünlü Müslüman-Türk âlim El-Harezmî’den gelmektedir. Kısaca Algoritma,
bir programda neyin, nerde ve nasıl olması gerektiğini bilgisayara
anlatmamıza yarayan sonlu sayıda basamaktan oluşan yola hazırlamaya
diyoruz. Örneğin hani bir çay demleme (programcılık okuyanlar belki
bilir) algoritması vardır : ) :

Mutfakta değilsen mutfağa git.
Çaydanlığa bak dolu değilse su doldur
Ocağı yak
Ve çaydanlığı ateşin üstüne koyarak Suyun kaynamasını bekle
Su kaynadıktan sonra çayı bırak ve üstüne suyu dök…
Yine demliğe biraz daha su bırakarak bekle
Su kaynadığında biraz dinlendirerek ateşi kapat mutfaktan çık
Ve keyifle çayını iç : )

Yemek
tarifi gibi oldu ama işin özü budur. Bilgisayara hangi durumlarda ne
yapacağını önceden söylemez isek tabiî ki bilgisayar düşünemediği için
söylemediğiniz yerde takılır kalır. Aynı şu eski Windows’larda mavi
ekranın çıkması gibi…


Sorun Analizi

Programda neyin gerçekleştirilmek istendiği, belirlenen mümkün olan en
az sayıda parametre cinsinden ifade edilir. Bu parametreler maliyet,
zaman ve performansla ilgili olup, her parametrenin bir hedef ve bir de
eşik değeri saptanır. Parametre değerleri her aşama karar noktasında
gözden geçirilir ve gerekiyorsa değiştirilir. Bu parametreler bir araya
getirildiğinde programın temel esasları ortaya çıkar. Sorunun çözüm
yolu da bu aşamada belirlenir ve çözüm için gerekli matematiksel
modeller kurulur. Algoritmalar hazırlanır. Giriş-çıkış birimleri ve
bilgileri (biçim, şekil, düzen) belirlenir. Programda kullanılacak
değişkenler tanımlanır (sembol) ve türleri belirlenir. Program tasarımı
yapılır.


ÖRNEK: Klavyeden girilen iki sayının toplanmasını ve ekrana yazılması sorunun analizi aşağıdaki gibi yapılır.
İstenenler:
a)sayıların klavyeden girilmesi
b)toplama işleminin bulunması
c)toplama işleminin ekranda görüntülenmesi
Değişken tanımı:
A:Birinci sayıyı
B:İkinci sayıyı
C:iki sayının toplamını göstersin
Çözümün matematiksel gösterimi: A+B=C
[Resimleri görebilmek için üye olun veya giriş yapın.]

Özel Sözcükler ve Söz Dizimi

Özel Sözcükler
Dilin kullandığı anahtar sözcüklerdir. Bu sözcükler değişken veya fonksiyon tanımlarında kullanılamaz.
Örneğin if, else, print, end, int, long… vb

Söz Dizimi
Her
dilin kendine özgü bir söz dizim yapısı vardır. Değişkenler, sabitler
ve fonksiyonlar oluşturulurken bu kurallara uyulması gerekir.


Private Sub Form_Load()
Print "Merhaba Cyber’lular"
End Sub

Değişken Kavramı
Değişken,
bilgileri saklamak üzere kullandığımız, ismini ve tipini belirlediğimiz
bellek alanlarına verilen genel isimdir. Bir değişkeni tanımladığımızda
ya da ilk kullandığımızda, bilgisayarın hafızasında o değişken için bir
bölüm ayrılır.

Değişkenleri
genel olarak iki gruba ayırabiliriz. Birinci grup, içinde sayıları
sakladığımız değişkenlerdir. Bu değişkenlerin hafızada tutacakları yer
bellidir. İkinci grup ise, içinde sayı haricindeki bilgileri, örneğin
isim veya adresi tutacağımız değişkenlerdir.

İçinde
sayı tutacağımız değişkenlere nümerik ya da sayısal değişken denir.
Sayı haricindeki bilgileri tutacağımız değişkenlere ise alfa nümerik,
alfa sayısal veya string değişkenler diyoruz.



Veri Türleri

Her dilin kendine özgü veri türleri vardır mesela C programlama dili için:
int
Char
Float
String
Double …. Vb

Değişken İsimleri

Değişken
isimlerinin programcı tarafından belirlendiğini biliyoruz. Programcı
değişken ismini belirlerken, aynı zamanda değişkenin niteliğini de
belirler. Değişken isimleri aşağıdaki kurallara göre belirlenmelidir.


1. Değişken isimleri en fazla 40 karakterden oluşabilir.
2. Bir değişken isminin ilk karakteri mutlaka bir harf olmalıdır.
3. Değişken isimlerinin içinde boşluk veya özel karakterler bulunamaz
4. Bir değişken ismi FN harfleriyle başlayamaz.
[Resimleri görebilmek için üye olun veya giriş yapın.]
Değişkenlere Değer Atama
Bir değişkene değer atamanın çeşitli yolları vardır. En basit değer atama yöntemi eşitlik kullanımıdır.
A% = -373
PI# = 3,1415
TUTAR& = 3676800
sayi = 1673.772
Isim$ = “QuickBASIC”

Görüldüğü
gibi değişkenlerin bazıları büyük, bazıları küçük, bazıları da hem
büyük hem de küçük harflerden oluşmaktadır. “QuickBASIC” dilinde
değişken isimlerinin büyük veya küçük harflerle tanımlanması, o
değişkeni etkilemez. Yani, “SAYI” ve “sayi” değişkenleri aynı olarak
kabul edilir.
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:44 am

Operatörler

Matematiksel Operatörler
Matematiksel işlemlerimizi yaptırabilmemiz için aşağıdaki operatörleri kullanabiliriz.
+ ‘Toplama
- ‘Çıkarma
* ‘Çarpma
/ ‘Bölme
\ ‘Tamsayı Bölem
^ ‘Üs yani Kuvvet alma
Mod ‘Kalanlı Bölme
& ‘Dizilim Birleştirme

Karşılaştırma Oparatörleri
< ‘Küçüktür
<= ‘Küçük Eşittir
> ‘Büyüktür
>= ‘Büyük Eşittir
= ‘Eşittir
<> ‘Eşit Değildir

Mantıksal Operatörler
AND Operatörü
OR Operatörü
XOR Operatörü
NOT Operatörü

Aritmetik İfadeler


Programlama sırasında bazı matematiksel işlemler gerekecektir. Aşağıda
aritmetik operatörler ve hangi işleme karşılık geldikleri
listelenmiştir.

+ " Toplama
- " Çıkarma
* " Çarpma
/ " Bölme
^ " Üs (kuvvet) alma

Aksi
belirtilmedikçe, matematiksel işlemlerde önce kuvvet alma işlemi
yapılır. Daha sonraki öncelik çarpma ve bölmeye aittir. En son işlem
yapılan aritmetik operatörler ise toplama ve çıkarmadır. Aynı önceliğe
sahip matematiksel işlemler söz konusu olduğunda önce soldaki işlem
gerçekleştirilir. Eğer matematiksel işlem parantez içeriyorsa, önce
parantezlerin içindeki kısımlar çözümlenir.


Eğer işlemlerimizin karışmasını istemiyorsak, yazdığımız matematiksel formüllerimizde parantez kullanırız.
((19 – 3) / (3 – 1) ^ 2) * 6 = 24
(48 + 1) / (14 / 2) * 3 = 21
64 - (4 + 4) ^ 2 – 1 = -1

Şunu bir kez daha belirtmek gerekir ki, parantez içindeki ifadelerde, önce en içteki paranteze ait işlem gerçekleştirilir.
Buraya
kadar sözüne ettiğimiz 5 aritmetik operatörden başka QuickBASIC diline
özgü bir operatör daha vardır. “ \ ” işareti kalansız bölmeyi (tamsayı
bölmesini) sağlar. Örneğin, “7 \ 2” işleminin sonucu 3,5 değil 3
olacaktır.

Programlama
dillerinde bilgileri işlemek için kullanılan en yararlı araçlardan
biride koşullu bir ifadedir. Koşullu ifade bir özellik, değişken veya
veride bulunan değere göre işlem yapmamızı sağlar.


If...Then Karar Yapısı
Bir
If...Then karar yapısı programdaki bir koşulu denetlememizi ve çıkan
sonuca göre hareket etmemizi sağlar. En basit biçimiyle “If Koşul Then
Bildiri” gibi kullanılabilir.


Select Case Karar Yapısı
Döngüler
belirli işlemleri belirli sayıda veya herhangi bir şart sağlanana kadar
tekrarlamak amacı ile kullanılırlar. Visual Basic’de kullanılan
döngüler aşağıda verilmiştir.

Örneğin C’deki for döngüsü do-while döngüsü…

İşte Küçük bir Kod Mimarisi:

main() /* ana fonksiyon*/
{
printf("Merhaba C."); /* cikartma durumu */

}

Ve daha karmaşık bir program yapısı

main()
{
int xx;

for (xx=5;xx<15; xx=xx+1)
{
if (xx==Cool
break;
printf("Break döngüsünün içinde, xx in değeri simdi %d\n",xx);
}
for (xx=5;xx<15;xx=xx+1)

{
if (xx==Cool

continue;
printf("Continue döngüsünün içinde, xx in değeri simdi %d\n",xx);
}
}


PROGRAMIN KALİTESİNİ BELİRLEYEN ÖLÇÜTLER

· Program işini doğru yapmalı
· Mümkün olduğunca hızlı çalışmalı
· Sistem kaynaklarını gereksiz yere harcamamalı
· Program kodu okunabilir ve anlaşılabilir olmalı.
· Birbirinden bağımsız modüllerin minimum inter aktivitesinden oluşmalı
· Bakım ve güncellenmesi kolay olmalı
· Hatalar lokal olmalı. ( Bir bölümde oluşacak bir hata tüm programı etkilememeli.)
· Verilen süre içinde tamamlanmalı
· Gerekli yazlı dokümanlar hazırlanmış olmalı. (Kullanma kılavuzu, yardım dosyaları vs.)

Bu
arada Programcılık öğrenmek sadece sözdizimsel (syntax) kurallarını
öğrenmek demek değildir. İyi düşünmek ve matematiksel bir zekâya sahip
olmak gerekir diye düşünüyorum.

Şimdi
arkadaşlar bu konuları derinlemesine ele alacağız ama ben bu
anlatımlarda dil olarak C ve C++’den faydalanmayı düşünüyorum. Onun
için benim ve birçok "ciddi" kitabın görüşü "C++’ya başlamadan önce C
öğrenmenin gerekmediği"dir. Doğrudan C++’den başlamak gerekir. Tabii ki
C biliyorsanız C++ öğrenmeniz kolay olur. Yine Benim kişisel görüşüm
her bilgisayar mühendisinin, özellikle yazılım geliştirme ile uğraşacak
olanların, C++’yı iyi bilmesi ve anlaması gerektiğidir, belki
kullanmayacak bile olsak... Kafanıza göre takılın… Tabii bütün bu
anlattıklarım sadece C ve C++ için geçerli değil tüm programlama
dilleri için evrensel olan konulardır. Diğer programlama dillerinden de
yeri geldikçe (avantajlarında-dezavantajlarından) değinmeye çalışacağım.


Bundan sonraki dersimiz de inşAllah Operatörler, karar deyimleri, matematiksel ve mantıksal ifadeler olacaktır…
Saygılarımla arz ederim…
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:44 am

Yazılım Mühendisliği 1968 yılından bu yana var olan yeni bir
mühendislik alanıdır.Programlama dillerin çıkışı ile birlikte ortaya
çıkmıştır. Yazılım Mühendisliği, yazılım sistemlerinin mühendislik
prensipleri çerçevesinde tasarımı, üretimi ve işletilmesini hedefler.
Bilgisayar sistemleri artık günlük hayatın her alanında yoğun ve etkin
bir şekilde kullanılmakta olduğundan, Yazılım Mühendisliği tüm
işalanlarında uygulamaları olan bir alandır.
Üniversitelerdeki
Bilgisayar Mühendisliği tam olarak şekillendirilemese de yazılım
Mühendisliği Bilgisayar Mühendisliğinin bir alt koludur.
Yazılım tasarlama, Kontrol etme, geliştirme alanlarında hizmet eden ve
günümüzde çok aranan bir meslek gurubu haline gelmiş Mühendislik
türüdür.
Günümüzde yazılım sistemleri,
–Bankacılık
- Eğitim
-Haberleşme
–Otomotiv
–Sağlık
–Şirket yönetimi
–Telekomünikasyon sistemleri
–Hava taşımacılığı gibi
çok geniş alanlarda kullanılan bilgisayar sistemlerinin çok önemli ve kritik bir parçasını oluşturmaktadır.
Saygılar...
Microsoft Yazılım Mühendisliği Eğitimi
Bu işin tanımsal kısmı şudur: Yazılım Mühendisleri, bir bilgisayarın
gerekli fonksiyon ve görevlerini yerine getirebilmesi için gerekli olan
basamakları mantıksal bir sıra ile düzenleyen ve çok detaylı bir
komutlar bütünü olan “program” veya “yazılım” ları yazan ve test eden
kişilerdir.Temel ingilizce bilgisi ve bilgisayar kullanma becerisi olan
herkes bu programlara katılabilir.
Kimler Katılmalı : Yazılım önümüzdeki yıllarda sosyal hayatımızda
etkisini bu gün olduğundan daha da fazla artıracaktır. Projelerini
masaüstü ve Internet platformuna taşımak isteyenler bu eğitime
katılabilirler. Yazılım Mühendisleri, Türkiye `de iş bulma garantisine
sahip ender insanlardan biridir.
İşin özü ise şudur:
Türkiyede yetkili kılınan Microsoft Çalışma ortakları tarafından sınav yapılır...
Yazılım Mühendisi olmak isteyen bir kişi bu sınavları başarıyla geçmelidir.
Her sınavın ücreti 50 $ dır.
Sınavlar genel olarak Veri tabanları(SQL), Programlama (Asp.NET, VB.NET) gibi sınavları vererek bu ünvanı elde edebilirsin...
MCP,MCAD,MCDBA ... gibi unvanları vardır.
ilk sınavı kazanan herkes MCP (Microsoft Certificated Professional)
olur. Sonra sınav sonuçlarına göre bu ünvanları alırsın.. Şunuda
söyleyim ben ankarada çalıştım ve VB.NET eğitimide verdim.. bu kursu
alan elemanlar boşta kalmadı.. Hatta aranan eleman bile oldular.
Detaylı bilgiyi : [Linkleri görebilmek için üye olun veya giriş yapın.]
sitesinden temin edebilirsin..
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:44 am

Programlama Dillerinde Operatörler:
Operatörler
Her dilin
kendine göre kuralları olmakla birlikte bazı temel taşlar dediğimiz her
dilde de aynı özellikleri taşıyan yapılar vardır. İşte bu dersimiz bu
temel taşlardan biri olan Operatörleri mercek altına alacağız.
Özellikle C ve Pascal dillerinde bu karşılaştırmayı yaparak daha iyi
anlaşılacağını düşünüyorum.

OPERATÖRLERİN SINIFLANDIRILMASI

Operatörleri üç biçimde sınıflandırabiliriz:

  1. class=Msonormal style="MARGIN: 0cm 0cm 0pt; mso-margin-top-alt: auto;
    mso-margin-bottom-alt: auto; mso-list: l5 level1 lfo1; tab-stops: list
    36.0pt">Operatörlerin İşlevlerine Göre Sınıflandırılması class=Msonormal style="MARGIN: 0cm 0cm 0pt; mso-margin-top-alt: auto;
    mso-margin-bottom-alt: auto; mso-list: l5 level1 lfo1; tab-stops: list
    36.0pt">Operatörlerin Operand Sayılarına Göre Sınıflandırılması
  2. Operatörlerin Konumlarına Göre Sınıflandırılması
OPERATÖRLERİN İŞLEVLERİNE GÖRE SINIFLANDIRILMASI

Operatörleri temel olarak işlevlerine göre 6 gruba ayırabiliriz:
1.Aritmetik Operatörler
2.
İlişkisel Operatörler
3.
Mantıksal Operatörler
4.
Bit Operatörler
5.
Gösterici Operatörleri
6. Özel Amaçlı Operatörler

Matematiksel (Aritmetik) Operatörler
Matematiksel işlemlerimizi yaptırabilmemiz için aşağıdaki operatörleri kullanabiliriz.
İlişkisel Operatörler
İlişkisel operatörler iki değer arasındaki ilişkiyi sorgularlar. Bunlara "karşılaştırma operatörleri" de denir.

Mantıksal Operatörler
Mantıksal
işlemler yapan operatörlerdir. Ve, veya, değil gibi bilgisayarında
temelini oluşturan ifadelerin değer kazanmasını sağlayan operatörlerdir.

Bit Operatörler
Bit seviyesinde işlem yapan operatörlerdir.
Gösterici Operatörleri
Adres işlemlerinde kullanılan operatörlerdir.
Özel Amaçlı Operatörler
Fonksiyon
çağırma (Önceden hazırlanmış bir işlevi istenilen yerde çalışmasını
sağlamak) ve öncelik değiştirme, yapı elemanına erişme, tür dönüştürme
(girilen karakterlerin sayıya çevrilmesi), Uzunluk, Koşul, Atama,
İşlemli atama

C dilinde Operatörler
Operatörler,
nesneler veya sabitler üzerinde önceden tanımlanmış birtakım işlemleri
yapan atomlardır. Operatörler mikroişlemci tarafından bir faaliyete
neden olurlar ve bu faaliyet sonunda da bir değer üretilmesini
sağlarlar. Programlama dillerindeki her operatör bir yâda birden fazla
makine komutuna karşılık gelir.
C’de her ifade en az bir operatör içerir. İşte örnekleri:

c=a * b / 2;
3 operatör vardır: =, *, /
d = fonk();
2 operatör vardır: =, ()
c = a > 4;
2 operatör vardır: =, >
++x
1 operatör vardır: ++
......
......

Her
operatörün operandları (değişken) vardır. Değişken nesnesi tam olarak
karşılamadığı için Operand’ı tercih ettim. İşleme giren anlamında
düşünelim. Operandlar operatörlerin işleme soktukları sabitler ya da
nesnelerdir:

a + b
Operatör: +, operandları: a ve b
b > 3
Operatör: ++ , operandları: b ve 3

Aritmetik operatörler 4 işlemle ilişkili olan operatörlerdir:
*
Çarpma
/
Bölme
%
Mod alma (bölümden elde edilen kalan)
+
Toplama
-
Çıkartma

İlişkisel operatörler iki değer arasındaki ilişkiyi sorgularlar. Bunlara "karşılaştırma operatörleri" de denir:
>
Büyük
<
Küçük
>=
Büyük ya da eşit
<=
Küçük ya da eşit
= =
Eşit
!=
Eşit değil

Mantıksal operatörler mantıksal işlemler yapan operatörlerdir.
!
Değil (not)
&&
Ve (and)
II
Veya (or)

Bit operatörleri bit seviyesinde işlemler yapar:
~
Değil (bitwise not)
<<
Sola kaydırma (left shift)
>>
Sağa kaydırma (right shift)
&
Ve (bitwise and)
^
Özel veya (bitwise exor)
I
Veya (bitwise or)

Gösterici operatörleri adres işlemlerinde kullanılan operatörlerdir:
*
İçerik Alma (indirection)
&
Adres alma (adress of)
[]
İndeks (index)
->
Yapı gösterici

Özel amaçlı operatörler:
( )
Fonksiyon çağırma ve öncelik değiştirme
.
Yapı elemanına erişme
(tür)
Tür dönüştürme
sizeof
Uzunluk
?:
Koşul
=
Atama
+=, *=, /=, ...,
İşlemli atama

OPERATÖRLERİN OPERAND SAYILARINA GÖRE SINIFLANDIRILMASI

Operatörleri işleme soktukları operandların sayılarına göre de sınıflandırabiliriz:
1.1 operandlı operatörler (Unary Operators)
2.
2 operandlı operatörler (Binary Operators)
3. 3 operandlı operatörler (Ternary operators)

Programlama dillerinde 2’den fazla operand alan operatörlere pek rastlanmaz.C’de 3 operand alan ve ismine "koşul operatörü"
denilen istisna bir operatör vardır.

Örneğin;
*, /, +, -, =, %, <=, = =, >=, ... iki operandlı operatörlerdir.
++, - -, !, .... tek operandlı operatörlerdir.

OPERATÖRLERİN KONUMLARINA GÖRE SINIFLANDIRILMASI

Operatörleri konumlarına göre 3 gruba ayırabiliriz:
1.Önek(prefix) operatörler
2.
Araek(infix) operatörler
3.
Sonek(postfix) operatörler

NOT: Hatta bunların fonksiyonlarını hazırlatmak için Bilgisayar
Mühendisliğinde ödevler verilir.Gerekli olan varsa temin ederim… maXXTor

Bir
operatörün operandlerının önünde bulunmasına önek (prefix) durumu
denir. Sembolik makine dillerinde (assembly languages) operatörlerin
operandlarının önünde (prefix) bulunduğunu görüyoruz.
MOV AX, BX ifadesinde AX ve BX birer operand; MOV ise bir operatördür.

Operatör operandlarının arasında bulunuyorsa buna araek(infix) durumu denir.
a + b ifadesinde a ve b birer operand; + ise bir operatördür.

Operatör operandlarının arkasında bulunuyorsa buna da sonek(postfix) durumu denir.
a++ ifadesinde a bir operand; ++ ise operatördür. ++ operatörü prefix durumunda da bulunabilir: ++a .
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:45 am

ARİTMETİK OPERATÖRLER

Aritmetik
operatörler dört işlemle ilgili olan operatörlerdir. Aritmetik
operatörlerin listesi ve kendi aralarındaki önceliği şöyledir:

++ --
Sağdan sola


+ / %
Soldan sağa


+ -
Soldan sağa


=
Atama operatörü C’nin en düşük öncelikli operatörlerinden birisidir.



+ ve - Operatörleri
İki operandlı
(binary) araek(infix) operatörlerdir.+ iki operandı toplamak , - iki
operandın farkını almak için kullanılır. operandlar herhangi bir türden
olabilir.

* ve / Operatörleri
İki operandlı
araek operatörlerdir.* operandları çarpmak, / ise operandları bölmek
için kullanılır. Operandlar herhangi bir türden olabilir.+ ve -
operatörlerinden önceliklidirler.

% Operatörü
İki operandlı
araek bir operatördür.% operatörü sol taraftaki operatörün sağ
taraftaki operatöre bölümünden elde edilen kalanı bulmak için
kullanılır.% operatörünün iki operandı da tamsayı türlerinden (char,
int, long, short) olmalıdır.
Örneğin;
c = 10 % 3;

10’un 3’e bölümünden elde edilen kalan 1’dir. (c=1)

% operatörü , * ve / operatörleri ile soldan sağa eşit önceliğe sahip; + ve - operatörlerinden daha yüksek önceliklidir.
Örneğin;
c=10 % 4 +1 ;
İŞLEM1: 10 % 4 =2
İŞLEM2: İŞLEM1 +1 =3
İŞLEM3: c=İŞLEM2

Artırma (++) ve Eksiltme (--) Operatörleri
Tek operand
alırlar. Önek ya da sonek durumunda bulunabilirler.++ operatörü
operandı olan değişkenin içeriğini bir artırmak; -- operatörü operandı
olan değişkenin içeriğini bir eksiltmek için kullanılır. Bu operatörler
diğer aritmetik operatörlerden daha yüksek önceliğe sahiptir.
İşlevlerini iki biçimde inceleyebiliriz:

1.Yalın
olarak kullanıldıklarında ( başka hiçbir operatör olmaksızın ) önek ya
da sonek durumları arasında hiçbir fark yoktur.++, "1 artır"; -- ise "1
eksilt" anlamına gelir.
++x;, x++; ikisi de aynı anlama gelir ve x = x + 1; demektir.
--x;, x--; ikisi de aynı anlamdadır ve x = x - 1; demektir.

Örneğin;
...
x = 10;
++x; /*x=11*/
x++; /*x=12*/
...
x = 20;
--x; /*x=19*/
x--; /*x=18*/
...

2.Diğer operatörlerle birlikte kullanıldığında (örneğin atama operatörü ile) önek e sonek biçimleri farklı anlamlara gelir:
Önek durumunda artırma ve eksiltme işlemi, diğer aritmetik operatörlerden daha yüksek öncelikli yapılır.
x = 10;
y = ++x;
/* x = 11, y = 11 */
Burada x = x +1 işlemi yapılır; böylece x =11 olur. Daha sonra bu değer y’ye atanır.
++ ve -- sonek durumundaysa artırma ve eksiltme işlemi söz konusu ifadenin en son işlemi en son işlemi olacak biçimde yapılır.
x = 10;
y = x++;
/* x = 11, y = 10*/
Bu örnekteki, y = x++ ifadesini ele alalım. ++ sonek durumunda
olduğundan artırım hemen değil, ifadenin son işlemi olacak biçimde,
ifadenin en sonunda yapılır. Yani y değişkenine x’in içindeki ifade
atanır; daha sonra x’in değeri 1 artırılır.

Örnek1;
x = 10;
y = 5;
z=x ++ % * 4 --y;
İşlem sırası:
i1: --y........4
i2: x % 4 .....2
i3: i2 * i1 ...8
i4: z=i3.......8
i5: x++........11
Bu durumda x = 11, y = 4, z =8 ’dir.
Örnek2;
c = 20;
d = 10;
a = b = d + c --;
İşlem sırası:
i1: d + c........30
i2: b = i1...30
i3: a = i2....30 a = b demektir.
i4: c--.......19
Bu durumda a = 30, b = 30, c = 19, d = 10 olur.
Örnek3;
a = 10;
b = a++ + ++a;
İşlem sırası:
i1: ++a........11
i2:a + i1......22
i3: b = i2....22 a = b demektir.
i4: a = a + 1.......12
Bu durumda a = 12, b = 22, olur.

3.Fonksiyon
çağrılırken aynı değişken birden fazla parametre içinde kullanılmşsa ,
hiçbiri ++ ve -- operatörleriyle ,işleme sokulmuş olmamalıdır.Örneğin;
a = 10;
b = fonk(a , ++a);
ifadesinde fonksiyon hangi parametrelerle çağrılıyor.? fonk(10, 11) ile
mi, yoksa fonk(11,11) ile mi? Şimdi siz fonk(10,11) ile çağrılmasının
daha uygun olduğunu düşünebilirsiniz. Oysa sistemlerin çoğunda
parametreler sağdan sola doğru ele alınırlar.
Bir değişken parametre olarak ( diğer parametrelerle kullanılmamak
koşuluyla önek ya da sonek durumunda bulunabilir. Aşagıdaki ifadeler
geçerlidir
b = fonk(++a)
......
b = fonk(a++);
Artırma ve eksiltme operatörlerinin operandı mutlaka bir nesne olmalıdır.

İLİŞKİSEL OPERATÖRLER

İlişkisel
operatörler iki değer arasında karşılaştırma yapan operatörlerdir.Bu
nedenle bu operatörlere karşılaştırma operatörleri de denir. İlişkisel
operatörlerin hepsi iki operand alır. Aralarındaki öncelik ilişkisi
aşağıdaki gibidir:
< > >= <= Soldan sağa
== != Soldan sağa
İlişkisel operatörler ile aritmetik operatörler arasında öncelik ilişkisinin de basit bir kuralı vardır:
Bütün ilişkisel operatörler aritmetik operatörlerden düşük önceliklidir
Programlama dillerinin çoğunda mantıksal veri türleri vardır ve
ilişkisel operatörlerin ürettiği değerler bu türlerdendir. Oysa C’de
mantıksal veri türü yerine yine int türü kullanılır. Mantıksal bir veri
türünün tamsayı türü ile aynı olması C’ye esneklik ve doğallık
kazandırmıştır.
C’ de ilişkisel operatörlerin ürettiği değerler , "koşul sağlanıyorsa 1, sağlanmıyorsa 0 " olan int türünden değerlerdir.
Örnek1;
a = 5 > 2; /*a = 1*/
....
b = 3 == 3; /* b = 1*/
....
c = 4 <= 1; /* c = 0*/
Örnek2;
x = 10;
y = 20;
z = y <= x + 10;
İşlem sIRASI:
i1: x + 10......20 Aritmetik operatörü öncelikli
i2: y <= i1.....1 20<=20 koşulu sağlanıyor, üretilen değer 1
i3: z = i3......1 Atama operatörü en az önceliklidir.
Örnek3;
a = 10;
b = 20;
c = a == 10 > b +1;
İşlem Sırası:
i1: b + 1.......21 Aritmetik + operatörü öncelikli
i2: 10 < i1.....1 < operatörü == operatöründen daha öncelikli
i3: a == i2.....0 Koşul sağlanmıyor
i4: c = i3......0
Örnek4;
a = 10 * 2 +1 >= 4 * 4 +5 == 5 > 5 - 3 * 2;
İşlem Sırası;
i1: 10 * 2.............20
i2: 4 * 4..............16
i3: 3 * 2..............6
i4: i1 + 1.............21
i5: i2 + 5.............21
i6: 5 - i3.............-1
i7: i4 >= i5...........1
i8: 5 > i6.............1
i9: i7 == i8...........1
i10: a = i9............1

MANTIKSAL OPERATÖRLER

Operandları üzerinde mantıksal işlem yapan operatörlerdir. Bu operatörler operandlarını Doğru (true) ya da Yanlış (false) olarak yorumladıktan sonra işleme sokarlar. C’ de öncelikleri birbirinden farklı üç tane mantıksal operatör vardır:
! Değil(not) Sağdan sola
&& Ve (and) Soldan sağa
II Veya(or) Soldan sağa

! (değil)
operatörü tek operand alır ve her zaman önek durumundadır; diğer iki
operatör ise iki operandlıdır ve araek durumundadırlar.

1.C’de Mantıksal Doğru ve Yanlış Değerleri
Programlama dillerinin hepsinde mantıksal işlemler iki tür veri üzerinde gerçekleştirilirler: Doğru ve Yanlış.
Mantıksal operatörlerin ürettikleri değerler yine "doğru" ya da
"yanlış" olabilen mantıksal değerlerdir. İlişkisel operatörleri
açıklarken değinmiştik: C’de mantıksal veri türü olmadığından,
mantıksal veriler yerine tamsayılar kullanılmaktadır.
C’de ilişkisel bir operatörün ürettiği değer , koşulun sağlanma
durumuna göre 1(Doğru) ya da 0(Yanlış) sayılarıdır; ancak bir sayı
mantıksal olarak yorumlanacağı zaman şu kural geçerlidir:
-Sayı sıfır ise Yanlış.
-Sayı sıfır dışı bir değer ise , yani negatif ya da pozitif herhangi bir sayı ise Doğru.
Örneğin aşağıdaki sayıların mantıksal yorumlarını inceleyelim:
-11 Doğru
0 Yanlış
+99 Doğru
Bir ilişkisel operatör herhengi iki türden operand alabilir, fakat
ürettiği değer 1 ya da 0 tamsayılarıdır. Bu sayılar mantıksal
operatörler tarafından Doğru ya da Yanlış olarak yorumlanırlar.
Mantıksal operatörlerin de ürettikleri değerler ilişkisel operatörlerde
olduğu gibi "int" türünden "1(doğru)" ya da "0(Yanlış) " sayılarıdır.

2.Mantıksal Operatörlerin Diğer Operatörlere Göre Öncelik Durumları
Değil operatörü(!) dışındaki iki mantıksal operatör, ilişkisel
operatörlerden düşük önceliklidir. Değil operatörü ise en yüksek
önceliğe sahip aritmetik operatörlerden artırma(++) ve eksiltme(--) ile
sağdan sola eşit önceliklidir.
Şimdiye kadar incelediğimiz operatörlerin öncelik sıralarını yüksek öncelikten düşük önceliğe doğru şu şekilde özetleyebiliriz:

( )
Soldan Sağa
! ++ __
Sağdan sola
* / %
Soldan sağa
+ -
Soldan sağa
> >= < <=
Soldan sağa
== !=
Soldan sağa
&&
Soldan sağa
II
Soldan sağa
=
Sağdan Sola

Değil (not) İşlemi ve ! Operatörü
Tek operand alan ve her zaman önek durumunda bulunan ! operatörü Doğru
değerini Yanlış değere; Yanlış değerini Doğru değere dönüştürür.
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:45 am

Pascalda Operatorler
Aritmetik operatörler dört
işlem için kullandığımız +, -, / ve * ’dan oluşmaktadırlar. Sıksık
kullandığımız bu operatörlerin yanında iki sayının bölümünden kalanı
veren MOD, iki tamsayının bölümünün sonucunda tamsayı üreten DIV
programlarımızda sık kullandığımız aritmetik operatörlerdir. Tam ve
gerçel sayıların aritmetik işlemleri için kullanılan operatörlere
ilişkin liste aşağıdaki tabloda verilmiştir.

Operatörİşlem Operand Tipi Sonucun Tipi
+Toplama real, integer real, integer
- Çıkarmareal, integerreal, integer
*Çarpma real, integer real, integer
/ BölmeReal, integerReal
Div Tamsayı Bölmeintegerİnteger
Mod Kalan Bulmaintegerİnteger

Bu işlemler arasındaki işlem önceliği sırası Bölüm 3’de anlatılmıştı.
Div Operatörü
İki tamsayının bölümünün tamsayı kısmını verir.
123/4=30.75
123 div 4=30
Mod Operatörü
Tamsayı tipindeki operandların bölümünü yapar ve sonucun kalan kısmını bir tamsayı değer olarak üretir.
123/4=30.75
123 mod 4 =3

/’ operatörü
operand olarak kullanılan değerlerin tipi yâda bölümün sonuç değeri ne
olursa olsun real tipte sonuç üretir. Bu nedenle bir bölümün sonucunun
bir tamsayı değişkene direkt olarak aktarılması söz konusu değildir.

2/1=1.0000000E+00
Bir bölüm işleminin tamsayı değişkene aktarılabilmesi için real değerleri integere dönüştüren fonksiyonlardan yararlanılabilir.
Trunc(2.123/1)=2 sonucu integer olarak elde edilir.
Aritmetiksel işlemlerde kullanılan operandların biri real diğeri integer ise sonuç real olacaktır.
1+2.0=3.0000000E+00
Pascalda üs almak için bir operatör yoktur. Ancak “Exp” ve “Ln” fonksiyonları yardımıyla üs alma işlemleri yapılabilmektedir.
Örneğin bir a sayısının b. üssünü bulmak için;
Exp(b*Ln(a)) yazılır.
Örnek; Exp(2*ln(2))=4
Exp(3*ln(2))=8
İlişkisel Operatörler
Diğer programlama
dillerinde de olduğu üzere, Pascal programlama dilinde iki veya daha
fazla operand arasındaki ilişkilerin araştırılmasını yapan ilişkisel
operatörler, toplu olarak aşağıdaki tabloda verilmiştir.

Operatörler Anlamı
= Eşit
<> Eşit Değil
>= Büyük eşit
< Küçük
> Büyük
<= Küçük eşit
Karşılaştırmalardan elde
edilen sonuç daima Boolean tipte olacaktır. Yapılan karşılaştırmanın
sonucu doğru ise true, yalnış ise false değeri elde edilir.

Mantıksal Operatörler
Aşağıdaki tablolarda görüldüğü gibi 4 adet mantıksal operatör vardır. Bunlar;
AND : İki operand doğru ise sonuç doğru,
OR : İki operand dan en az biri doğru ise sonuç doğru,
XOR : İki operandın sadece birinin doğru olması hali için sonuç doğru,
NOT : Operand
yanlış ise sonuç doğru şeklinde sıralanıp tanımlanabilir. Aşağıdaki
tablolarda A ve B nin Doğru (T) ve/veya Yanlış (F) oluşlarına göre
işlem sonucu görülmektedir.

Mantıksal operatörlerin
operandları bir ilişkisel operasyon veya sadece bir boolean olabilir.
Bir tek koşul cümlesi içinde birden fazla ilişkisel operatör var ise
bunlar mantıksal operatörler ile birleştirilmeli ve her bir ilişkisel
operasyon ifadesi parantez içinde yazılmalıdır.

AND
X1
X2
SONUÇ
0
0
0
0
1
1
1
0
1
1
1
1





OR
X1
X2
SONUÇ
0
0
0
0
1
0
1
0
0
1
1
1

XOR
X1
X2
SONUÇ
0
0
0
0
1
1
1
0
1
1
1
0

NOT
X1
SONUÇ
0
1
1
0



1‘ler Doğruyu 0’lar Yanlışı temsil etmektedir. Bu tüm yapılarda (ve tüm dillerde ) aynıdır.
İşlevsel Operatörler
Programcı tarafından
FUNCTION bildiri deyimiyle özel amaçlar için tanımlanan fonksiyonlarla,
Turbo Pascalda tanımlı olan standart fonksiyonlar işlevsel fonksiyonlar
olarak adlandırılır. Bunlardan sadece bir kaçı aşağıda örnek olarak
verilmiştir. İşlevsel operatörler Pascal Arşivi Bölümü altında daha
ayrıntılı olarak işlenecektir.

Örnekler: SQRT(4)=2.0000000E+00 (Verilen bir sayının Karekökünün alınması)
SQR(4)=16 (Verilen bir sayının Karesinin alınması)
Sin(60*Pi/180)=8.660E-01 (Bir sayının sinüsünün hesaplanması)
Matematiksel Formüller
Normal olarak elle yazılan
formüllerin bir bilgisayar programına yazımı için belirli bazı kurallar
vardır. Matematiksel ifadelerin bilgisayarın anlayacağı şekilde yazımı
sırasında dikkat edilecek önemli bir nokta, matematik operatörleri
arasındaki işlem önceliğine dikkat edilmesidir.

Aşağıda verilen cebirsel ifadelerin Pascal programlama dilinde yazımlarını inceleyiniz.
Örnek 1. Cebirsel İfade Pascal karşılığı
) 2 ( / . 2 x Z Z . = z:=2*sqrt(z)/(2-x)
Yukarıdaki örnekte işlem sırası;
1. Z’nin karekökü alınır
2. 1 nolu işlem 2 sabiti ile çarpılır
3. (2-x) değeri hesaplanır
4. 2 nolu işten elde edilen sonuç 3 nolu işlemin sonucuna bölünür.
Örnek 2. Cebirsel İfade Pascal karşılığı
a c
q
x
.
= x:=q/(c-a)
Örnek 3. Cebirsel İfade Pascal karşılığı
.=B
2
-4.A.C DELTA:=SQR(B)-4*B*C
Aşağıda verilen matematiksel eşitlikleri Pascal programlama dili kurallarına göre yazınız.
Karşılaştırma Oparatörleri
<‘Küçüktür
<=‘Küçük Eşittir
>‘Büyüktür
>=‘Büyük Eşittir
=‘Eşittir
<>‘Eşit Değildir

Mantıksal Operatörler

AND Operatörü
OR Operatörü
XOR Operatörü
NOT Operatörü

Aritmetik İfadeler

Programlama sırasında bazı
matematiksel işlemler gerekecektir. Aşağıda aritmetik operatörler ve
hangi işleme karşılık geldikleri listelenmiştir.

+ " Toplama
- " Çıkarma
* " Çarpma
/ " Bölme
^ " Üs (kuvvet) alma
Aksi belirtilmedikçe,
matematiksel işlemlerde önce kuvvet alma işlemi yapılır. Daha sonraki
öncelik çarpma ve bölmeye aittir. En son işlem yapılan aritmetik
operatörler ise toplama ve çıkarmadır. Aynı önceliğe sahip matematiksel
işlemler söz konusu olduğunda önce soldaki işlem gerçekleştirilir. Eğer
matematiksel işlem parantez içeriyorsa, önce parantezlerin içindeki
kısımlar çözümlenir.

Eğer işlemlerimizin karışmasını istemiyorsak, yazdığımız matematiksel formüllerimizde parantez kullanırız.
((19 – 3) / (3 – 1) ^ 2) * 6 = 24
(48 + 1) / (14 / 2) * 3 = 21
64 - (4 + 4) ^ 2 – 1 = -1
Şunu bir kez daha belirtmek gerekir ki, parantez içindeki ifadelerde, önce en içteki paranteze ait işlem gerçekleştirilir.
Buraya kadar sözüne
ettiğimiz 5 aritmetik operatörden başka QuickBASIC diline özgü bir
operatör daha vardır. “ \ ” işareti kalansız bölmeyi (tamsayı
bölmesini) sağlar. Örneğin, “7 \ 2” işleminin sonucu 3,5 değil 3
olacaktır.

Programlama dillerinde
bilgileri işlemek için kullanılan en yararlı araçlardan biride koşullu
bir ifadedir. Koşullu ifade bir özellik, değişken veya veride bulunan
değere göre işlem yapmamızı sağlar.

If...Then Karar Yapısı
Bir If...Then karar yapısı
programdaki bir koşulu denetlememizi ve çıkan sonuca göre hareket
etmemizi sağlar. En basit biçimiyle “If Koşul Then Bildiri”gibi
kullanılabilir.

Select Case Karar Yapısı
Döngüler belirli işlemleri
belirli sayıda veya herhangi bir şart sağlanana kadar tekrarlamak amacı
ile kullanılırlar. Visual Basic’de kullanılan döngüler aşağıda
verilmiştir.

Örneğin C’deki for döngüsü do-while döngüsü…
NOT: Pascal ile ilgili olan kısımda Pascal 7.0 ile Programlama A.ORAL’ın kitabından kesitler kullanılmıştır…
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:45 am


  • Evet Akış diyagramları hazırlamak için gerekli programlar burda:
1-Word>Çizim>Otomatik şekil>Akış çizelgesi
2-İngilizce akış diyagramı programı :
[Linkleri görebilmek için üye olun veya giriş yapın.]
3- [Linkleri görebilmek için üye olun veya giriş yapın.]
4- [Linkleri görebilmek için üye olun veya giriş yapın.]

Buda bu anlattıklarımı güzelce izah eden bir flash Programlama
dilinden Akış diyagramına ve Akış diyagramından programlama diline
çevrimi gösteren bir örnek:
[Linkleri görebilmek için üye olun veya giriş yapın.]
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:45 am

Programlama Dilleri hakkında geniş Bilgi için:
[Linkleri görebilmek için üye olun veya giriş yapın.]
ve tabiî ki google.com’ a teşekkürlerimizi arz ederiz…

Diller, Anlamları, Kullanıldıkları alanlar ve Avantajları:
Makine Dili’nde Bellek Kullanımı ile İlgili Açıklamalar
Makine Dili bilgisayarın
temel dilidir. Program hangi dil kullanılarak yapılırsa yapılsın,
sonuçta makine diline dönüştürülerek çalışacaktır. Bu dönüşüm
derleyicilerin görevleri arasındadır. Yorumlayıcıda biraz daha
farklıdır (Yorumlayıcı ve Derleyici ile ilgili bir yazıdan bu seriden
sonra gelecek). Bilgisayarlar Makine Dili hariç hiçbir dili doğrudan
okuyamazlar, diğer bütün dilleri önce makine diline çevirir, ardından
çalıştırırlar.

Diğer taraftan Makine
Dili’nin en ilkel dildir. Ancak ilkel olması yavaş olması anlamına
gelmez. En eski bilgisayarlardan günümüzün en hızlı, en gelişmiş
bilgisayarlarına kadar geçen sürede bilgisayarların köklü
değişikliklere uğramasına rağmen, makine dili temelde hep aynı
kalmıştır…

Günümüz PC’lerinde bellek,
“segment” adı verilen parçalara ayrılır. Bu parçaların her biri 65536
BYTE yani 64KB’lıktır. Bu da hexadecimal olarak $10000’lik bir alana
tekabül eder ($0000 - $FFFF arası).

EMS (Extended Memory
Segment) sürücüsü olmadan belleğin 1 MB’ından daha fazlasını
kullanamayız. Segmentler de $0000 - $FFFF arasında tanımlanmıştır. EMS
olmaksızın kullanabileceğimiz bellek yapısı aşağıdaki gibidir:

0000:0000
0000:0001
0000:0002
:

:
İşletim sistemi gibi
sürücü hazırlama gibi çok hızlı işlem yapılması gereken sistem
programlarının hazırlanmasında kullanılır. Makine dili, genel olarak 50
ile 300 arasında komuta (intruction) sahiptir

C ve C++’ın Programlama Dilleri Arasındaki Yeri

Bilgisayar dünyası 1960’lardan bu yana pek çok dille
tanıştı. Başlangıçta her şey 1’lerden ve 0’lardan meydana geliyordu.
İkilik taban (Binary Digits). O zamanlar “komut” kavramı bile
gelişmemişti. Bilgisayara komut vermek için daha önceden belirlenmiş
sayılar kullanılıyordu. O zamandan bu zamana temel programlama
mantığında çok fazla bir değişim olmadı. Değişen ve gelişen programlama
dilleri oldu. Bu programlama dilleri yakın bir zamana kadar
teknolojiden bağımsızken günümüzde tek başlarına pek bir anlam ifade
etmiyorlar. Yeni çıkan bir programlama dili genellikle başka bir dilden
hareketle yazılmış oluyor. “Makine Dili” hariç bütün diller başka bir
dil temel alınarak yazılmıştır ve hepsinin temeli “Makine Dili”ne
dayanır. Peki, C++ bu dillerin içinde nerede ve eğer ana programlama
dilimiz makine diliyse, neden yabancı bir dile ihtiyaç duyuyoruz? Şimdi
bu sorulara yanıt arayalım...

Makine dili en hızlı,
bilgisayar kaynaklarına doğrudan erişimi sağlayan ancak o oranda da
ilkel bir dildir. Bu cümledeki zıtlığı yaratan “ilkel” kavramıdır.
Ancak burada kullanılan ilkel kelimesi hiçbir şekilde makine dilinin
tercih edilmemesi gerektiğini ifade etmez. Hatta mümkün olduğunca
makine dili kullanmak çok daha “kaliteli” sonuç verecektir. Ne yazık ki
makine dili kullanımı birçok proje için çok zor, zaman zaman
işkencedir. Değişken sayısının çok az oluşu, matematik işlemlerinin
yetersizliği, komutların kısa ve karmaşık isimlendirilmesi, bazı
komutların bazı alanlarca sınırlandırılmaları, ilkelliği oluşturan
temel nedenlerdir.

Makine dili kullanılarak,
önceleri daha kullanışlı makine dili editörleri programlandı. Bunlarda
artık sadece sayılardan oluşan adresler yerine yavaş yavaş “label” yani
“etiket” diye isimlendirdiğimiz harflerden oluşan tanımlama satırları
eklendi. Zamanla makine dilinden programlanan bazı program parçalarını,
tek bir komut halinde kullanan, ileri düzey diller geliştirildi. Şu
anda dünyada 100’lerce programlama dili var. Özel amaçlı ve genel
amaçlı 10’larca dil büyük kitlelerce kullanılıyor. Bunların hepsinin
bir tek ortak özelliği var: yazılan programı makine diline çevirir ya
da doğrudan makine dilinden komut komut çalıştırır. Bu işi rakipsiz
denebilecek kadar iyi yapan tek dil ise C++. C’ye rakip diller ya yine
C kullanarak yazılmıştır, ya da C’nin türevlerinden biridir. Kısaca
özetlemek gerekirse, C++ hem ileri düzey kullanım rahatlığına sahip hem
de oldukça hızlı bir dildir.

Sırada Basic, Pascal
Fortran… v.b. gibi aklıma gelen tüm dillerin Anlamları, Kullanıldıkları
alanlar ve Avantajlarından bahsedeceğim… Bu arada bazı dillere tam
hakim olmadığım için belki yetersiz bilgi veya yanlış bilgi verebilirim
bilenler uyarsın lütfen...
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:46 am

Pascal
(Paskal okunur) bilgisayar
programlama dili pek çok öğrenciye bilgisayar programlamayı öğreten ve
çeşitli sürümleri bugün hala yaygın olarak kullanılmaya devam eden en
önemli programlama dillerinden biridir. İlk Macintosh işletim
sisteminin çoğu ve TeX Pascal ile yazılmıştır.

Bilgisayar bilimcisi
Niklaus Wirth Pascal’ı 1970’te yapısal programlamayı derleyiciler için
daha kolay işlenir hale getirebilmek amacıyla geliştirmiştir. Adını
matematikçi ve düşünür Blaise Pascal’dan alan Pascal, Algol programlama
dilinden türemiştir. Wirth, Pascal’dan başka Modula-2 ve Oberon
programlama dillerini de geliştirmiştir. Bu diller Pascal’a benzerler
ve ayrıca nesneye yönelik programlamayı da desteklerler.

Pascal ve C Karşılaştırması
Pascal ve C dilleri
yaklaşık aynı zamanlarda geliştirilmişlerdir ve aralarında önemli
benzerlikler vardır. Orijinal Pascal ile C’nin ikisi de yapısal
programlama fikrini gerçekleştiren küçük ve yordamsal dillerdir.
İkisinde de dinamik bellek ayırma ve işaretçi işleme (İng. pointer
manipulation) mümkündür. Ancak, bu iki dil dışarıdan bakıldığında
farklı görünürler (C programları genelde Pascal programlarından
kısadır).

Tartışma yaratan
farklılıklardan bir tanesi, Pascal’ın atama için := ve karşılaştırma
için = imlerini kullanmasıdır. Matematikte = imi her iki amaç için de
kullanıldığından, programcılar bazen yanlışlıkla Pascal’da :=, C’de ise
== kastedildiği halde daha kısa olan = imini kullanırlar. C’nin
tasarımcıları atama işleminin karşılaştırma işleminden daha sık
kullanıldığını, dolayısıyla kısa olan imin atama işlemi için
kullanılması gerektiğini savunurlar. Pascal’ın savunucuları ise,
yanlışlıkla atama yapmanın yanlışlıkla karşılaştırma yapmaktan çok daha
tehlikeli olduğunu savunurlar. Bu savunma, eğer, C’de olduğu gibi, bir
if ifadesi içinde atama yapılabiliyorsa, kesinlikle doğrudur.

Bu tartışma, iki dilin
tasarım mantıkları arasındaki farka işaret eder. Pascal, en azından
kısmi olarak, bir eğitim dili olarak tasarlanmıştır. Yanlışlıklara yol
açabilecek sözdizimi yapılarından kaçınılmış, sözdiziminin anlaşılması
kolay olmasına dikkat edilmiştir. C’nin tasarımcıları ise dili
programların kısa olması için tasarlamışlardır.

Bu iki dil arasındaki başka
bir fark da, Pascal’ın "strongly typed" olmasıdır. Yani, bir değişken
kullanılmadan önce belirli bir tipe sahip olmak üzere tanımlanmalıdır
ve faklı tiplerden iki değişken birbirlerine atanamazlar. Bu sınırlama
pek çok programlama yanlışını önler.

C’nin tersine, Pascal’da iç içe fonksiyon tanımlamak mümkündür.
Orijinal Pascal’da program
parçaları ayrı ayrı derlenemezler ve derleme anında boyutu bilinmeyen
diziler kullanmak mümkün değildir. Ancak bu sınırlamalar, Pascal’ın
bazı sürümlerinde kaldırılmıştır.

Birçok ortamda kullanmak
için çok fazla derleyicisi vardır. Bazıları Pascalı kendileri için iyi
bir dil ve programlama ortamı olarak düşünmemiştir. Bunların başında C
programlayıcıları (hatta C’nin oluşturucularından olan Brian Kernighan,
1981’de yazdığı makalesi Pascal Niçin Benim En Sevdiğim Dil Değildir
yazısı ile bu tartışmayı alevlendirmiştir.) başta gelir. Tabii amaç
burada tartışma çıkartmak değil kim ne isterse kullanabilir. Bence
Pascal Da Delphi sayesinde çok daha farklı ortamlara taşınarak hayatını
idame ettiriyor. Öte yandan, 1980’lerde Apple Lisa ve Macintosh gibi
büyük projeler Pascal’a dayanıyorlardı. Aradan geçen zaman içinde,
Pascal gelişmeyi sürdürmüş ve bu sayede Kernighan’ın eleştirileri artık
modern Pascal sürümleri için geçerli olmaktan çıkmıştır. Yeterli
bilgiye sahip olmayan pek çok kimse bugün hala bu eleştirilerin geçerli
olduğunu düşünmektedir. Pascal üzerindeki bu haksız damga, bugün
Pascal’ın önündeki en büyük sorunlardan biridir.

Wikipedia ve google’ dan yararlanılmıştır...
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:46 am

Borlan C++ 5.02
Derleyicisini takdim derim..

Toplam 85 MB

[Linkleri görebilmek için üye olun veya giriş yapın.]
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:46 am

Evet Arkadaşlar Programlama Dillerinden dewam ediyoruz... Daha önce C,C++ ve Pascal hakkında bilgi verdik.
COBOL PROGRAMLAMA DİLİ COBOL: Common Business Oriented Language ticari uygulamaya yönelik yüksek seviyeli bir dildir.
COBOL 1959 senesinde Amerika Birleşik Devletleri
hükümetinin de işbirliği ile o zamanın bilgisayar üreticileri ve
kullanıcıları tarafından üretildi. İngilizce’ye benzer bir dil olan
COBOL 1960 senesinde CODASYL tarafından geliştirilerek COBOL 60 adı
altında piyasaya çıktı. COBOL’un çıkış tarihinde bu zamana bir çok
COBOL türleri oluşturuldu. COBOL 68,COBOL 74 (Ansi COBOL) vs. Bu gün
mikro bilgisayarlar için yapılmış birçok COBOL türleri mevcuttur. Level
II COBOL, Microsoft
COBOL (MS-COBOL) vs. Bizim burada
anlatacağımız ise MS-COBOL dur. MS-COBOL’da neler yapabiliriz, sorusuna
ise kısaca şöyle cevap verebiliriz, örneğin Muhasebe, Personel, Stok,
Emlak ve akla gelen her türlü ticari programı yazmak
mümkündür.
MS-DOS programı olduğundan insanlarımız Windows tabanlı programları
tercih etmeye başladılarsa da COBOL hala sağlamlığını korumaktadır.

Bu arada derleyicilerle ilgili bir anlam
kargaşasının olduğunu gördüm. Arkadaşlar Programlama dilleri
derleyicileri için Kullanılan derleyici program içerisinde kendi
editörü vardır. YAni Borland derleyicisini indirdik C dilinde program
yapmak için baska neye gerek var demek yanlıştır. Programlama dilleri
hakkında bilgiye ve Derleyici, Yorumlayıcı hakkındaki sunuyu yakında
bulabilirsiniz.
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:46 am

FORTRAN PROGRAMLAMA DİLFORTRAN (FORMULA TRANSLATION) kelimelerinin ilk hecelerinden türetilen FORTRAN, bilimsel
hesaplamaları yapmak için geliştirilmiştir. Birkaç sürümü vardır (FORTRAN IV, FORTRAN 77,FORTRAN 90 )
Sembolik programlama dillerinin ilki olan FORTRAN programlama dili 1950’li yılların sonlarında ortaya
çıkmış ve insanlarla bilgisayar arasındaki iletişimde getirmiş olduğu yenilik ve kolaylıklar nedeniyle yaygın
bir kullanım alanı bulmuştur. Bu dilin sürekli olarak geliştirilmesi sonucu kullanımı daha da esnekleşmiş ve uygulama
kapsamına giren konular genişlemiştir.
FORTRAN Karakterleri FORTRAN programlama dilinin deyimlerini yazabilmek için kullanılan karakterler şunlardır:
0’dan 9’a kadar 10 tane rakam,
A’ dan Z’ ye kadar İngiliz alfabesinde kullanılan büyük ve küçük 26 harf,
=, %, $, [, (, ) ve ]
gibi özel işaretler ve işlem işaretleridir.
İşlem işaretlerinde ,(+) toplamayı, (-) çıkarmayı, (/),bölmeyi ve (*) da çarpmayı simgeler
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
Holyone
Yönetici
Yönetici
Holyone


Mesaj Sayısı Mesaj Sayısı : 3850
Paylaşım Gücü Paylaşım Gücü : 9917
Rep Point Rep Point : 106
Kayıt tarihi Kayıt tarihi : 25/02/09
Yaş Yaş : 31

Programlama Giriş Empty
MesajKonu: Geri: Programlama Giriş   Programlama Giriş EmptyPaz Eyl. 27, 2009 9:46 am

Şu ana Kadar anlatılmış Diller : Assembly, C, C++, Cobol, Fortran, Pascal
Python
Python kullanımı basit fakat gerçek bir dildir. Büyük programlar için
kabuktan daha uygundur ve C’den çok daha fazla hata denetimi yapar.
Python çok yüksek seviyeli
bir dil olup C ile verimli şekilde yazılması günler alabilecek yüksek
seviyeli veri tiplerine sahiptir ( sözlükler ve listeler gibi). Daha
genel veri tipleri sayesinde Python Awk hatta Perl’den çok daha geniş bir yelpazede uygulama alanı bulabilir. Ayrıca Python’da pek çok şey en az o dillerdeki kadar kolaydır.

Python ile programlarınızı daha sonra diğer Python programlarınızda
tekrar kullanabileceğiniz modüllere ayırabilirsiniz. Python geniş bir
standart modül koleksiyonu ile size gelmektedir. Dosya giriş/çıkışı,
ses, resim, matematiksel işlemler vs. ile ilgili modüller de vardır.
Python yorumlanan bir dil olduğu için program geliştirme sırasında size
önemli miktarda zaman kazandırabilir çünkü derleme ve bağlama
gerekmemektedir. Yorumlayıcıyı etkileşimli olarak da kullanabilirsiniz;
böylece dilin özelliklerini kolayca deneyebilir, hızlı bir şekilde
küçük programlar yazabilir, ya da aşağıdan-yukarı program geliştirme
sırasında fonksiyonlarınızı test edebilirsiniz. Yorumlayıcı bir hesap
makinesi olarak da kullanılabilir.
Python ile son derece sıkı ve okunabilir programlar yazabilirsiniz.
Birkaç nedenden Python programları eşdeğer C veya C++ programlarından
çok daha kısadırlar:

  • Yüksek seviyeli veri türleri ile karmaşık işlemler tek bir ifede ile yazılabilir.
  • Deyimlerin gruplanması başlama/bitme deyimleri (begin, end veya {} gibi) yerine blokların girintili yazılması ile sağlanır.
  • Değişken veya argüman bildirimlerinin yapılması gerekmez.
Python genişletilebilir: Eğer C programlamayı biliyorsanız
Python’a kolayca yeni modüller ekleyebilir ya da programınızın hızlı
çalışması gereken kısımlarını C ile yazabilirsiniz. C programlarınıza
da Python yorumlayıcısını bağlayabilir ve Python ile ek özellikler
eklenebilen programlar yazabilirsiniz. Python programlama dili adını
korkunç bir sürüngenden değil, `Monty Python’s Flying Circus’’ adlı bir
BBC komedi dizisinden almıştır.
Sayfa başına dön Aşağa gitmek
http://www.webs-team.tr.gg
 
Programlama Giriş
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» 15dkda oyun yapmak(programlama bilgisine gerek yok)(ags ile)
» VBasic' e Giriş
» Xml Giriş
» Java'ya Giriş
» Ruby - Giriş

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
 :: Arşivlenmiş Ve Silinmiş :: Çöp Kutusu-
Buraya geçin: