DaHaSiVaR.CoM

Simple Machines Forum
Smf.gen.tr Ödüllü
Seo Webmaster Yarışması
  ANASAYFA |  BUGÜN GİRİŞ YAPANLAR |  ARA |  BİZE ULAŞIN  
Simple Machines Forum Smf.gen.tr Ödüllü Seo Webmaster Yarışması

Kayıt Ol
Forumumuzu en iyi şekilde kullanabilmek için lütfen kayıt olun.
Giriş Yap
Eğer forumda mevcut bir hesabınız varsa lütfen giriş yapın.
Forumumuza Yeni Moderatör Arkadaşlar Alınacaktır.İlgilenen Üyelerimiz Moderatörlük Başvurusu Bölümünden Başvurularını Yapabilirler...
22 Kasım 2008, 01:03:26
Hoşgeldiniz, Ziyaretçi.Lütfen giriş yapın veya kayıt olun.
Konu Bilgileri Kısayollar
Konu Başlığı Programlama Temeli Algoritma
Cevaplar 3
Sonraki Sonraki Konu
Görüntüleyenler0 Üye ve 1 Ziyaretçi konuyu incelemekte.
Görüntülenme 1289
Önceki Önceki Konu

Sayfa: [1]   Aşağı git
  Yazdır  
Gönderen Konu: Programlama Temeli Algoritma  (Okunma Sayısı 1289 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
31 Aralık 2007, 13:35:51
Deneyimli Üye
*
Üye No: 2925
Mesaj Sayısı: 227
Rep Puanı: 27

Üyelik Bilgileri

Algoritma (başlangıç)   
Bilgisayarın temelinde algoritma yani programlama mantığı vardır. Algoritma; belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir. Şöyle de diyebiliriz: karşımıza çıkan problemi çözmek için kafamızda veya bir kağıt üzerinde tasarladığımız işlem yolu da diyebiliriz.
Bilgisayarlar kendilerine sorulan sorulara hemen cevap veren, bir sürü problemi çözen aygıtlar değillerdir. Bilgisayarda yapılan iş, önce insanın akıl süzgecinden geçer , insanlar tarafından etraflıca tasarlanır, planlanıp programlanır. Bu nedenle, önce bilgisayara problemin çözümü öğretilmelidir. Dolayısıyla problemi öncelikle bizim çözmemiz gerekir. Bu adımdan sonra da bunu bilgisayarın anlayacağı bir programlama diline çevirmek gerekir. İşte burada programcı kavramı ön plana çıkar.
Günlük hayatımızda, evde, iş yerinde veya eğitimimiz için kullandığımız tüm elektronik eşyalar; daha da genelleyecek olursak kısaca yaşamımızı kolaylaştıracak her türlü alet ve malzemede bilgisayar kodları kullanılıyor. Programlama da bu aletleri harekete geçirecek bilgisayar kodlarının bütünüdür. Bu programları yapmamızdaki amaç hayatı robotlaştırmak değildir. Aksine daha kolay yaşanır hale getirmektir. Zamandan, iş gücünden ve buna benzer bir çok unsurdan kar elde etmek için programlama vardır. Ve gelişerek var olmaya da devam edecektir.

Soru Çözme Adımları
   
İster bilgisayarla ister bilgisayarsız soru çözmek için belirli bir yol vardır. Ancak bu yol ile sağlıklı bir çözüme ulaşılabilir. Bilgisayar kullanarak soru çözmek için sonuca giden yolun tam olarak belirlenmesi gerekir. Doğru bir yol izleyebilmek için, çıkılan ve ulaşılan yer tanımlanmalıdır. Aynı soru için değişik çözüm yolları geliştirilebilir. Unutmamalıyız ki biz bilgisayara ne öğretirsek oda bize dönüt olarak onu verecektir. Yani kurduğumuz algoritma doğru ise alacağımız sonuç doğru, değilse haliyle yanlış olacaktır.

Soru Çözme Adımları :
Bilgisayar ortamında bir problem çözülürken aşağıdaki adımlara dikkat edilmelidir.
a-) Soru Tanımlama: Her şeyden önce çözülecek soru tam olarak anlaşılmalıdır. Yanlış anlaşılmış bir sorunun çözümü yanlış olacak ve istenileni vermeyecektir.Bu adımda yapılacak en ufak bir hata daha sonraki adımların yeni baştan yapılmasını gerektirebilir. Sorunun tanımı yapılırken var olan bilgiler, anlamları ve birbirleri ile ilişkileri tanımlanmalıdır. Daha sonra istenenler belirlenmeli ve bunların var olan bilgiler ile ilişkileri öğrenilmelidir. Son olarak yapılacak işlemler belirlenir. Mümkün ise örnek veriler ile elde edilen sonuçlar değerlendirilmelidir.
b-) Algoritma Geliştirme: Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Kısaca algoritma mevcut bilgilerden istenilenlere erişme yöntemidir. Soru tanımını tam olarak yaptıktan sonra, çözüm için yol aramak gerekir. Genellikle bir sorunun birden fazla çözüm yolu olabilir. Bunlardan en uygunu seçilmeye çalışılır. Soru ne kadar karışık olursa olsun, alt birimlere bölünür. Her birimin çözümü ayrı, ayrı yapılır. Bu yapılırken birimler arası ilişki sürekli olarak korunur.
c-) Girdi ve Çıktı Biçimi Belirleme: Sonuçların dış ortama, dolayısıyla insana aktarımı düzgün bir biçimde yapılmalıdır. Programcı program çıktısı olarak almak istediği dökümün biçimini tasarlar. Bir döküm biçimi tasarlanırken anlaşılır ve kullanılabilir olmasına özen gösterilmelidir. Genellikle programa, çözdüğü soruna ilişkin bazı verilerin dışarıdan verilmesi gerekir. Örneğin bir denklem takımının kökleri bulunacaksa, ilgili katsayıların programa verilmesi gibi.
d-) Akış Şemasını Çizme: Akış şeması belirli bir işin yapılabilmesi için, basit işlemlerle şema halinde gösterilmesidir. Kısaca algoritmanın şemalarla gösterilmesidir. Algortima geliştirildikten sonra, daha iyi anlaşılabilir olması ve programlama dillerine aktarımı daha kolay olması nedeniyle, akış şeması haline getirilir. Böylece sorunun çözüm basamakları, birbirleri ile ilişkileri ve bilgi akışı daha kolay görülebilir ve yanlışlıklar düzeltilebilir.
e-) Kodlama: Akış şemaları çizildikten sonra, sorunu yapısına uygun bir programlama dili seçilir. Bu dil ile akış şemaları dilin kurallarına uygun olarak bilgisayarın anlayabileceği duruma getirilir.
f-) Programı Sınama: Program yazıldıktan sonra, sonuçları daha önceden bilinen veriler girilerek, eldeki sonuçlarla çıkan sonuçlar karşılaştırılır. Programın doğru çalışıp çalışmadığı sınanır.

Algoritma Hazırlanması
   
Algoritmanın bir sorunun çözümü için izlenecek yolun tanımı olduğunu belirtmiştik. Bu yolun açıklanabilmesi için, algoritmada kullanılan bazı tanım ve kurallar vardır. Şimdi bu tanım ve kuralları inceleyelim.

1.Değişken Kavramı:
Farklı zamanlarda farklı değerler alabilen bilgi sahalarına verilen sembolik adlardır. Bilgisayar işlem yaparken RAM belleği (geçici bellek) kullanır. İşte program yazılırken programcının Ram belleği kullanmasını sağlayan değişkenlerdir. Değişkenler Ram bellekte tahsis edilmiş odacıklar olarak düşünülebilir. Yani bir değişken tanımlandığında ram bellekte bir odacık (bir bölüm) açılır ve bu bölüme değişken ismiyle ulaşılır. Program içinde kullanılacak olan değişkenler problemin tanımı ve girdi-çıktı belirleme aşamalarında belirlenmelidir.
Örneğin klavyeden girilen iki sayının toplamını bulan program yazılırken 3 tane değişken tanımlanmalıdır. Çünkü klavyeden 2 tane sayı girilecek ve bu sayılar toplanarak 3. bir değişkene aktarılacaktır.
Soru: Klavyeden girilen 3 sayının aritmetik ortalaması bulunurken kaç değişken tanımlanmalıdır.

2. Aktarma Deyimi:
Aktarma deyimi yada operatörü değişkenlere değer aktarmak için kullanılır. A=5 yada A=A+1 şeklindeki bir yazılımda ?=? sembolü aktarma deyimi adını alır. Aktarma deyiminin sağ tarafındaki değer yada matematiksel ifadenin sonucu, sol tarafındaki değişkene aktarılır. Aktarma yapılırken değişkenin aldığı bir önceki değer kaybolur. Bu işlem matematiksel mantıkla karıştırılmamalıdır. Matematikte A=A+1 yanlış olduğu halde, bilgisayar mantığında doğrudur.

3.Matematiksel Mantık ve Karar Sembolleri:
Algoritmada kullanılan karar sembolleri aşağıdaki tabloda belirtilmiştir.




Örnekler:
Dyili=1984
Yas=2004-1984
1. Sayi=-5
2. Eğer Sayi<0 ise Yaz ?Sayı Negatif?
3. Eğer Sayi>0 ise Yaz ?Sayı Pozitif?
4. Eğer Sayi=0 ise Yaz ?Sayı Sıfırdır?

Yukarıdaki örnekte Sayi değişkenine -5 değeri aktarılmıştır. Diğer satırlarda ise Sayi değişkenin içeriğine bakılarak bir mesaj verilmektedir. Bu örnekte yalnızca 2. satırdaki şart sağlanır ve ekrana ?Sayı Negatiftir? mesajı yazılır.

Bir veya birden fazla koşul bazı bağlaçlarla bir araya getirilerek daha karmaşık sorular sorulabilir. Örneğin yas (kişinin yaşı) değişkeninin içeriği kontrol edilmek istendiğinde şöyle bir şart cümlesi kullanılabilir:
Yas=-5
Eğer yas<0 Veya Yas=0 ise Yaz ?Yanlış Değer Girildi?
Algoritmada kullanılabilecek bağlaçlar VE, VEYA, DEĞİL bağlaçlarıdır.

VE Bağlacı: Ve bağlacı ile söylenmek istenen her iki koşulun da sağlanmasıdır. VE bağlacı ile bağlanmış önermelerden en az birinin yanlış olması sonucu yanlış yapar.

VEYA Bağlacı: VEYA bağlacı ile bağlanan koşullardan en az birisi doğru ise sonuç doğrudur. İkiden fazla önermeler için, önermelerden en az birinin doğru olması sonucu doğru yapar.

DEĞİL Bağlacı: DEĞİL bağlacı doğruyu yanlış, yanlışı doğru yapar.DEĞİL tek bir önerme veya koşul üzerinde uygulanır. VE, VEYA ise iki önerme veya koşul üzerinde uygulanır. Doğru=1 ve Yanlış=0 tanımıyla, aşağıdaki tabloda bağlaçların x ve y?nin alacağı değerlere göre sonuçları gösterilmiştir.




4. Matematiksel İşlemler:
Matematiksel işlemleri algoritmada aynen kullanamayız. Bilgisayar mantığına göre matematiksel ifadelerin yeniden yazılmaları gerekir. Algoritmada işlem öncelik sırası kuralları aşağıda verilmiştir. Parantez kullanılarak işlem öncelik sıraları değiştirilir. İç içe kullanılan parantezlerde öncelik en içtekindedir. Aynı işlem önceliğine sahip elemanlarda işlem soldan sağa doğrudur.

Akış Şeması Hazırlama
   
Geliştirilecek olan yazılımın genel yapısının şematik gösterimine akış şeması veya blok diyagramı adı verilir. Akış diyagramları, yazılımı oluşturacak program parçalarını ve bu parçaların birbirleri ile olan ilişkilerini belirler. Bir bilgisayar programının oluşturulmasında akış diyagramlarının hazırlanması, algoritma oluşturma aşamasından sonra gelmektedir. Bilgisayar programının oluşturulması sırasında algoritma aşaması atlanarak, doğrudan akış diyagramlarının hazırlanmasına başlanabilir. Programlama tekniğinde önemli ölçüde yol almış kişiler bu aşamayı da atlayarak direkt olarak programın yazımına geçebilirler.Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içinde yazılmış olması ve adımlar arasındaki ilişkilerin (iş akışı) oklar ile gösterilmesidir.Akış şemalarında kullanılan semboller, anlamları ve kullanış amaçları aşağıdaki tabloda verilmiştir



Ayrıntılı bir akış şeması, yazılımı oluşturan işlemleri ve ilişkilerini en küçük detayına kadar belirler.
Bir bilgisayar programının geliştirilmesinde kullanılan programlama dili ne olursa olsun bu programların akış diyagramlarında genel olarak yalnız üç basit mantıksal yapı kullanılır. Bu mantıksal yapılardan en basiti sıralı yapıdır. Sıralı yapı, hazırlanacak programdaki her işlemin mantık sırasına göre nerede yer alması gerektiğini vurgular. Bu yapı sona erinceye kadar ikinci bir işlem başlayamaz.



Mantıksal yapılardan ikincisi Karar Verme yapısıdır (Şekil 1.3). Programlama sırasında If...Then... Else (Eğer?. <şart> ?.İse?.)yapısı ile tanıyacağımız bu mantıksal yapılar, birden fazla sıralı yapı seçeneğini kapsayan modüllerde, hangi şartlarda hangi sıralı yapının seçileceğini belirler.



Üçüncü mantıksal yapı çeşidini tekrarlı yapılar oluşturmaktadır. Yani döngü oluşturmak için kullanılan yapıdır. Döngüler aynı işlemin bir çok kez yapılmasını sağlar.Söz konusu üç değişik yapı, değişik kombinezonlarda kullanılarak istenilen işlevleri yerine getirecek programlar hazırlanabilir. Programların bu üç basit yapı ile sınırlandırılması program modüllerinin daha kolay tasarlanmasını sağlar.
Moderatöre Bildir   Logged
Robot Moderatör
Anahtar Kelime
*****
Offline Pasif

Mesajlar: 6,224


View Profile
Re: Programlama Temeli Algoritma
« Posted on: 22 Kasım 2008, 01:03:26 »

 
      uyari
Merhaba ziyaretçi. Öncelikle sitemize hoşgeldiniz. Ben robot moderatör olrak siteden daha fazla yararlanmanız için sitemize üye olmanızı öneririm. iyi eğlenceler.

giris  kayit
Anahtar Kelimeler: Programlama Temeli Algoritma oyunları, Programlama Temeli Algoritma programı, Programlama Temeli Algoritma oyunu indir, Programlama Temeli Algoritma program yükle, Programlama Temeli Algoritma download, Programlama Temeli Algoritma hikayeleri, Programlama Temeli Algoritma resimleri, Programlama Temeli Algoritma haber, Programlama Temeli Algoritma yükle, Programlama Temeli Algoritma videosu, Programlama Temeli Algoritma msn eklentisi, şarkı sözleri
Logged
esuma Nickli Üyemize Teşekkür Eden Kullanıcı: zeysin ( 23 Mayıs 2008, 13:35:29)
23 Mayıs 2008, 13:30:30
Yeni Üye
*
Üye No: 14709
Cinsiyet: Bayan
Mesaj Sayısı: 2
Nerden: izmir
Rep Puanı: 0

Üyelik Bilgileri

klavyaden dakika olarak girilen 5 şarkının toplam süresinin saat olarak hesaplayan programı yap çabuk yolla sınavımız varrrrrrrrrrrrrrrrrrr çabuk 30 puan almamız lazım  nolurrrrrrrrrrr 
Moderatöre Bildir   Logged
23 Mayıs 2008, 13:31:58
Yeni Üye
*
Üye No: 14709
Cinsiyet: Bayan
Mesaj Sayısı: 2
Nerden: izmir
Rep Puanı: 0

Üyelik Bilgileri

sana çabuk diyoruz hadiiiiiiiiiiii
Moderatöre Bildir   Logged
24 Mayıs 2008, 14:10:22
hhy89
Onursal Üye
*
Üye No: 6594
Cinsiyet: Bay
Mesaj Sayısı: 1,898
Rep Puanı: 1102

Üyelik Bilgileri WWW

hangi dilde yazılcak soleseydin daha cok yardım ederim ama algoritmasınında yardımcı oliim
dakika ile veriliosa kolay
1.Basla
2.Sarki1 Sarki2 Sarki3 Sarki4 Sarki5 i giriniz
3.Toplam_Sure=Sarki1+Sarki2+Sarki3+Sarki4+Sarki5
4.ToplamSaat=(Toplam_Sure/60)*60
5.ToplamDakika=[(Toplam_Sure/60.0)-ToplamSaat]*60
6.ToplamSure=(ToplamSaat) saat (ToplamDakika) dakika yaz
7.Bitir

simdi nasıl oldugunu anlatiim 1. adım basla 2.cide kullanıcıya giris yaptiriyoruz 3. de toplam sarkı suresini topladım 4. de toplamda sadece saatini hesapladım 5.de ise toplamda ki saati hesapladım 6.da da kac saat kac dakika oldugunu yazdırdım bitti ins anlatabilmisimdir isine yaradıysa ne mutlu bana

bunu daha da kısa yazabilirim ama anlaman icin uzun yazdım eger hangi dilde yazıldıgını solersen daha cok yardımcı olabilirim 
« Son Düzenleme: 24 Mayıs 2008, 14:11:26 Gönderen: hhy89 » Moderatöre Bildir   Logged

Arkadaslar uploadlarımızın artması icin bu 4.67Mb dosyayı gunde en az 1 kere indirirseniz seviniriz hersey sizin icin :gozkırp:
Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap
icinde surprizler var Grin
Sayfa: [1]   Yukarı git
  Yazdır  

DaHaSiVaR.CoM Etiketler
Programlama Temeli Algoritma

GoogleTagged

 
Gitmek istediğiniz yer:  

Benzer Konular
Konu Başlığı Başlatan Yanıtlar Görüntülenme Son Mesaj
temeli ne kaçırıyor? Zeka Sorulari patron 2 248 Son Mesaj 29 Mayıs 2007, 17:38:07
Gönderen: patron
C++ nasıl bir Programlama Dilidir? Programlama esuma 4 228 Son Mesaj 24 Ekim 2008, 09:59:43
Gönderen: esuma
Yapısal Programlama nedir ? Programlama esuma 0 362 Son Mesaj 15 Ocak 2008, 14:14:09
Gönderen: esuma
VBA (MAKRO PROGRAMLAMA) NEDİR? Programlama esuma 7 566 Son Mesaj 27 Ekim 2008, 23:19:27
Gönderen: azersun
Programlama Nedir? Programlama esuma 0 306 Son Mesaj 15 Ocak 2008, 14:25:25
Gönderen: esuma
LINEER PROGRAMLAMA... Programlama esuma 0 416 Son Mesaj 15 Ocak 2008, 14:31:16
Gönderen: esuma
JAVA ile Programlama, JAVA Dersleri Programlama esuma 0 304 Son Mesaj 25 Ocak 2008, 12:30:52
Gönderen: esuma
Pascal Programlama Dili Programlama NeverMore 4 228 Son Mesaj 23 Temmuz 2008, 18:28:08
Gönderen: Pa$hA*
Smf Kardeşliği.Com
smf.gen.tr aracılığı ile SMF kullanan siteler arasında yaptığımız SMF Kardeşliği listemizi görmek ister misiniz?

Bu site SM Forumlar Birliğinin Üyesidir
Seo yarışması sponsorları
SMF Destek VTD Design adtech ile reklam 2.0 dönemi başlıyor ve Trkycmhrytllbtpydrklcktr r10.net seo yarışması forum evden eve nakliyat Myhostum
MySQL Kullanıyor PHP Kullanıyor Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC | Kaliteli hosting için ForumSunucu
Genel
XHTML 1.0 Uyumlu! CSS Uyumlu!
Copyright © 2008 dahasivar.com - Her Hakkı Saklıdır.
|Site Map |Site Map2| Site Map3| Arşiv| Arşiv2 | Wap | Wap2 | Wap Forum | XML | Rss| Tagged| Url List