Şimdi Ara

Programcılıkta Matematik Gerektiren Yerler

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
27
Cevap
1
Favori
2.585
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 12
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • Merhaba arkadaşlar merak etmişimdir programcılıkta yüksek matematik gerektiren yerler var mı ,
    Dil fark etmeden ?



  • Merhaba,

    Programlama alanında matematik kesinlikle gereklidir. Şöyle bir örnek vermek gerekirse; geçenlerde c programlama dersimiz vardı hoca bize bir soru sordu. Soru şöyle: "bir sayı, kendi basamak değerlerinin küpleri toplamına eşit ise armstrong sayısıdır. buna göre 3 basamaklı kaç tane armstrong sayı olduğunu bulan ve bu sayıları ekrana yazdıran c kodlarını yazın" diye, arkadaşımla ben algoritma geliştirmeye çalışıyoruz 3 basamaklı sayıyı nasıl rakamlarına ayırırız diye biz dizi falan oluşturup o şekilde yapmaya çalıştık ama yapamadık niye çünkü matematiğimiz çok az. Hoca cevabı gösterince anladık. Hoca direk sayı basamaklarına ayırmak için; birler basamağı için 10'a bölümünden kalanı, onlar basamağı için 100'e bölümünden kalanı 10'a böldü, ve yüzler basamağı için sayıyı 100'e böldü. Sonrada bunların küplerinin toplamını kontrol ederek sayının kendisine eşit olup olmadığını kontrol etti. Yani matematik kesinlikle gerekli, bi' kere algoritma oluşturabilmen için matematik çok önemlidir. Bu biraz basit örnek ama matematiğin gerektiği bir sürü yer var programlamada. Örneğin şu(http://forum.donanimhaber.com/m_83765548/tm.htm) konudaki yazıyı okursan anlayacaksın.




  • özgür beyin kullanıcısına yanıt
    Teşekkürler hocam,

    evet arkadaşlar bol örnek bekliyoruz
  • quote:

    Orijinalden alıntı: 3bacaklı adam

    Teşekkürler hocam,

    evet arkadaşlar bol örnek bekliyoruz

    Rica ederim, ne demek.
  • up layam bari
  • Matematik heryerde karşına çıkar. Programlama da örnek vererek gidersek bir işlem yapacaksın karışık bir ortalama alma işlemi.. sen işlem önceliğinin hangi durumda olacağını bilmezsen program sonucu sana yanlış verecektir.Yani matematik önemli ama ben çook önemli değil.Temel matematik.
  • zaten işlem önceliği falan herkesin bilmesi gerektiği temel konulardır
    benim merak ettiğim daha ağır matematik var mıdır
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • Pardon yüksek matematik demişsin görmedim. Kusura bakma.
  • Ne demek hocam önemli değil.
    Ben yorumunuz için teşekkür ederim
  • Programcılıkta öyle çok çok yüksek bir matematiğe ihtiyaç duymazsınız. Ama önce programcılıktan kastın ne olduğunu kesinleştirelim. Programmer'dan kasıt , aslında implementor'dur. Programcı , algoritma geliştirmez. Yazılım Mühendisleri ve algoritma tasarımcılarının geliştirdikleri sistemleri ve algoritmaları implement ederler. O yüzden öyle çok fantastik bir matematik ihtiyacı yok. Tabi sizin "Yüksek Matematik" anlayışınıza da bağlı. Temel problem çözme becerileri , çözümleri anlayabilmek için elbette gereklidir. Ama söz gelimi , bir programcının Fourier Analizi bilmesine , Vector Calculus bilmesine , Soyut Cebir bilmesine , Graf Teorisi (temel olarak belki) bilmesine , Lineer Cebir bilmesine gerek yoktur. Ama bir yazılım mühendisinin veya algoritma geliştirecek bir bilgisayar bilimcinin , pek çok matematik alanında ehil olması gerekir. Bu konuda en anlaşılır ve kapsamlı kaynak da bana göre , Knuth'unda yazarları içinde olduğu -ki zaten yaşayan bir efsane- Concrete Mathematics for Computer Scientists 'dir.

    *Concrete Mathematics ; conTINOUS and DIScrete Mathematics




  • spartico kullanıcısına yanıt
    TEŞEKKÜRLER
    peki hocam mühendis olmak için hangisine ihtiyaç duyarım
  • Türkiye'de Bilgisayar Mühendisliği dediğimiz zaman içine Computer Engineering ve Computer Science birlikte giriyor. Saçmasapan karma bir eğitim tarzımız var. Ama her koşulda , mühendislik matematiksiz olmaz.
  • özgür beyin kullanıcısına yanıt
    Matematik yazilimin alani degildir.

    O yuzden kesinlikle matematik bilmek gerekir gibi bir yargi'ya ulaşmamalıyız. Matematiğin kullanılacağı yerler vardır sıkıştırma algoritmaları gibi. Bunlarla ya da matematiğin lazım olduğu şeylerle ilgilenmiyorsan zaten gerek yok.

    Kaldı ki yüksek matematik deniyorsa zaten bunu kodu yazan kişi oturup hazırlamaz. Bu işin matematiği öyle basit değilse..

    Vektörler vs. gibi şeylerle çalışmıyorsanız ya da grafiklerle pek alakanız olmuyor.

    Kernel programcılarının bazıları matematik bilmez, bilenlerden iyi de kod yazabilirler.

    Matematik her insan için gereklidir. Programlamayı bir kenara bırakın matematik her insana gereklidir. Zekayı geliştirir, analitik düşünceyi vs.

    Açıkcası itiraf edeyim ben de matematik konusunda çok iyi değilimdir..

    Ama sistem programcısıyım :)

    Bir biyoloji deneyi için bir programcıdan kod yazması isteniyor. Bu durumda programcının biyoloji de bilmesi gerekiyor. Kimya deneyi için de kod isteniyor ve o zaman kimya da bilmesi gerekiyor. Trigonometri sayısızca alanda kullanılır ama programlamanın alanı değildir. Buna rağmen kod yazan kişiler trigonometrik algoritmaları kod'a döküyor. Trigonometri bilmeyen bir kişi verilen değerleri nasıl kullanılacağı belirtili algoritmalara dayanarak yapabilir. Bundan sonra test mühendislerine kalır. Reaktif güç hesaplamak için programcının mutlak suretle elektrik mühendisi olması gerekmiyor.

    Bazı ince detaylar vardır aslında önemli olan bence bilinmesi gereken.. Matematiksel semboller var. Çünkü algoritmaları anlamak için o sembolleri bilmek gerekiyor. Ama dediğim gibi bu algoritmalar ve bahsi geçen konular yüksek matematik işi konular.

    Sonuçta bir hipotenüs'ün hesabında semboller yerine yine sayısal değerler var.

    Kısacası yine de matematik bilmek iyidir. Analitik düşünce her zaman iyidir çünkü. Hiç bilmemek kötüdür. Ama az biliyorum diye programcı olamam demek de kötüdür.

    Bilgisayar Mühendisliği alanlarında biraz farklı o iş aslında. Türkiye sistemi karışık.




  • matematikten ziyade bence mantık daha önemlidir
  • Matematik ile alakalı program yapacaksan matematik, fizik ile alakalı program yapacaksan matematik+fizik, oyun yapacaksan kompozisyon+matematik+fizik+sanat+felsefe; hepsinde mantık.

    Veritabanı programında çoğunlukla mantık gibi gözüküyor.

    Web istemci tarafı da sanat+kompozisyon.

    Web sunucu tarafı mantık.
  • Türkiye'nin sistemi sizce de çok saçma değil mi ya? Adamlar yurt dışında okulu bırakıp neler yapıyor biz bıraksak tinerci olur çıkarız. Çünkü neden? Türkiye de mühendislik imzası olmadan veya üniversite bitirmeden iş bulmak ölüm. (ki okuyanların bile işsiz kaldığı bir ülkede yaşıyoruz)
  • piskomat kullanıcısına yanıt
    o zaman yurtdışına gitmek lazım eee şartlar böyle olunca işe yarıyacak insanlarımız yurtdışına kaçıyor
    ülkemiz gelişmiyor haliyle. bu benim düşüncem yani kimine göre doğru kimine göre yanlış olabilir tartışmaya gerek yok
  • Ornek istemissin.

    1)Apple in sacma zoom in zoom out yapan Frameworkunu anlamadigim icin, kendim bu isi yapicak bir algoritma gelistirdim. Bu algoritmada basitce zoom un oranini mevcut ekranla goruntulenen ekrandan cikartip, sonradan orantiyi kurup ekledim. Her ne kadar basit gorunsede ortada 10 tane farkli deger var hepsinin birbiriyle baglantisini matematiksel formul kurarak yaptim.

    2) Gomulu sistemlerde, fabrikasyon sistemi kuruyorduk, boy olcen bir sensor vardi fakat bu sonucta analog birsey ve 0 dan baslamiyor, olcebildigi degerler 20 mm ile 35 mm arasi, simdi 35 mm nin analog degeri 0 iken 20 mm nin analog degeri 900 oluyor, e bu durumda sen atiyorum 20 mm ile 25 mm yi referans aldin atiyorum 25 mm nin analog degeri 300 olsun, bu durumda 5mm icin 300 analog birim gerekiyor diyorsun, 30 mm lik birseyin analog degeri kac dersen o zaman 1800 analog birim cikiyor, halbuki 35 mm 900 analog birim. Halbuki direk oranlama yapamazsin cunku sensor lineer degil. Bunun yerine dogrunun egrisini bulman gerekiyor O da m = (Ay - By) / (Ax- Bx)

    3) Kariyer bakimindan cok ise yariyor.
    Ornegin "naber" diye bir girdiyi, ikinci bir girdi olan "benim" e 2. nin sirasina gore cevirip yaz. Ornegin "naber" ve "benim" in sonucu "benar" oluyor. Bu tarz bir soru google gibi firmalarin mulakatinda cikiyor.
    Simdi gelipte, "benim" deki harfleri tek tek "naber"dekilerle esletirirsen
    Yani b-n, b-a, b-b, b-e, b-r, e-n.... seklinde adam sana bunun karmasikligini sorar sende |A|*|B| dersin, yani bu da iki sozcugun kelime sayisinin carpimi 5*5 ten 25 eder(bunu karsilastirmak icin yazdim) bu durumda adam senden daha kisa surede yazmani isterler ornegin A+B surede yani 5+5 = 10 tane ediyor bu ornekte. Sende bu durumda matematiksel olarak ozellik bulup bunun cozumunu bulman gerekiyor, yani olay her zaman sayi degil ornegin diyorsun ki bi tane veri tipi yaparim bunda alfabenin her karakteri bulunur, once A dizisinden gecerim ve bulunan harflerin sayisal degerini yazarim, daha sonra B dizesinden gecerek bu onceki sayisal degerlerin olup olmadigini bulurum, varsa sayisal degerinin eslestigi sayida ciktisini yazar olayi bitiririm dersin.




  • quote:

    Orijinalden alıntı: ThisisaNightmare

    Ornek istemissin.

    1)Apple in sacma zoom in zoom out yapan Frameworkunu anlamadigim icin, kendim bu isi yapicak bir algoritma gelistirdim. Bu algoritmada basitce zoom un oranini mevcut ekranla goruntulenen ekrandan cikartip, sonradan orantiyi kurup ekledim. Her ne kadar basit gorunsede ortada 10 tane farkli deger var hepsinin birbiriyle baglantisini matematiksel formul kurarak yaptim.

    2) Gomulu sistemlerde, fabrikasyon sistemi kuruyorduk, boy olcen bir sensor vardi fakat bu sonucta analog birsey ve 0 dan baslamiyor, olcebildigi degerler 20 mm ile 35 mm arasi, simdi 35 mm nin analog degeri 0 iken 20 mm nin analog degeri 900 oluyor, e bu durumda sen atiyorum 20 mm ile 25 mm yi referans aldin atiyorum 25 mm nin analog degeri 300 olsun, bu durumda 5mm icin 300 analog birim gerekiyor diyorsun, 30 mm lik birseyin analog degeri kac dersen o zaman 1800 analog birim cikiyor, halbuki 35 mm 900 analog birim. Halbuki direk oranlama yapamazsin cunku sensor lineer degil. Bunun yerine dogrunun egrisini bulman gerekiyor O da m = (Ay - By) / (Ax- Bx)

    3) Kariyer bakimindan cok ise yariyor.
    Ornegin "naber" diye bir girdiyi, ikinci bir girdi olan "benim" e 2. nin sirasina gore cevirip yaz. Ornegin "naber" ve "benim" in sonucu "benar" oluyor. Bu tarz bir soru google gibi firmalarin mulakatinda cikiyor.
    Simdi gelipte, "benim" deki harfleri tek tek "naber"dekilerle esletirirsen
    Yani b-n, b-a, b-b, b-e, b-r, e-n.... seklinde adam sana bunun karmasikligini sorar sende |A|*|B| dersin, yani bu da iki sozcugun kelime sayisinin carpimi 5*5 ten 25 eder(bunu karsilastirmak icin yazdim) bu durumda adam senden daha kisa surede yazmani isterler ornegin A+B surede yani 5+5 = 10 tane ediyor bu ornekte. Sende bu durumda matematiksel olarak ozellik bulup bunun cozumunu bulman gerekiyor, yani olay her zaman sayi degil ornegin diyorsun ki bi tane veri tipi yaparim bunda alfabenin her karakteri bulunur, once A dizisinden gecerim ve bulunan harflerin sayisal degerini yazarim, daha sonra B dizesinden gecerek bu onceki sayisal degerlerin olup olmadigini bulurum, varsa sayisal degerinin eslestigi sayida ciktisini yazar olayi bitiririm dersin.

    Konumuzla alakası yok ama kusura bakmayın merak ettim yurt dışında hangi ülkedesiniz ?




  • ThisisaNightmare T kullanıcısına yanıt
    Cevabınız için teşekkürler hocam

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • 
Sayfa: 12
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.