En küçük zengin tek sayı, Python programlama

Eğer bir sayının kendisi hariç tam bölenleri toplamı sayıdan büyükse o sayıya zengin sayı diyoruz. Örneğin 12 nin bölenleri 1,2,3,4,6 nın toplamı 16>12 olduğu için zengin sayıdır. En küçük tek zengin sayı nedir?

Basit bir programla bunu bulabiliriz,

def bolenler(n):
  return sum([i for i in range(1,n//2+1) if n%i==0])

sayi = 1
while sayi>bolenler(sayi):
  sayi+=2
print(sayi)
Yorum Durumu: Yorum yok --- Kategori: Bilişim, Zeka Soruları --- Etiketler: , , ---

Palindrom dizi, python programlama çözümü

Uzunluğu 2 veya daha büyük olan ve aynı zamanda tersten ve düzden yazılışları aynı olan karakter dizilerine palindrom denilmektedir. Örneğin “aaa”, “aba”, “cc” birer palindrom iken, “acaba”, “abc”, “a” birer palindrom değildir. Bir karakter dizisinin içerisinden ardışık olarak seçilen herhangi bir parçaya ardışık alt dizi denilmektedir. Örneğin “acaba” dizisi için “aca”, “ab” birer ardışık alt dizi iken, “cb”, “aaa” ardışık alt dizi değildir. 4 karakter uzunluğunda, ardışık alt dizilerinin hiçbiri palindrom olmayan kaç farklı karakter dizisi vardır? [Alfabede 29 karakter vardır]

Sorumuz bu. Elbette çözmek için başka yöntemler var ama estetik bir program parçasını da eklemek istedim.

sonuc = 0
for a in range(29):
    for b in range(29):
        for c in range(29):
            for d in range(29):
                if c != d and b != c and a != b and b != d and a != d:
                    sonuc += 1

print(sonuc)
Yorum Durumu: Yorum yok --- Kategori: Bilişim, Zeka Soruları --- Etiketler: , , ---

Bitkilerin gizli yaşamı

1966 yılında, Amerika’nın tanınmış yalan makinesi uzmanı Clee Backster, güvenlik görevlilerine poligraf aygıtının kullanımı eğitimini verdiği okulunda uykusuz bir gece daha geçirdi. Sonra sırf eğlence olsun diye, yalan makinesinin elektrotlarını kocaman yapraklı tropikal bitkisinin üzerine yerleştirdi. Yalan makinesi çeşitli korku, sevinç, şaşkınlık gibi durumların elektriksel değişimlerini ölçtüğüne göre, belki bitki de su dökünce seviniyordur diye alaylı alaylı güldü.

Bitkiyi suladığında galvanometre zikzaklar çizerek aşağı doğru indi. Oysa yukarı doğru bir hareket bekliyordu Backster. Yaprağını sıcak kahveye soktuğunda da beklediği tepkiyi görmedi. Sonunda kibriti alıp bitkiyi yakmayı düşündüğünde her şey değişti. Bitki çılgınca galvanometrenin ibresini tavan yaptırdı. İnanamadı Backster. “Nasıl yani?” dedi kendi kendine, “Bitki düşüncelerimi mi okudu?”.

İnsanlık tarihinin önünde yeni bir dünya açılıyordu artık. Deneyler deneyleri kovaladı. Bitkilerin sadece düşünceleri okumakla kalmayıp çevrelerindeki her şeyi hissettikleri de çıktı ortaya. Kaynar suya atılan karideslerin ölümlerini, eline iğne battığında duyulan acıyı da hissediyordu bitkiler. Hatta kilometrelerce ötede olunsa bile yaşanan sevinç ve üzüntüleri de hissediyordu. Hatta korkudan baygınlık bile geçiriyordu.

Bir gün şehir dışından gelen bir botanikçi bayan içeri girdiğinde bütün bitkiler sessizleşti. Hiç birinden tepki gelmiyordu. Sanki hepsi birden sessizliğe bürünmüştü. Taaa ki o bayan havaalanından uçağa binip gittikten 45 dakika sonra yeniden tepki vermeye başladılar. Bayan botanikçinin bitkileri kurutup ölçümler yaptığını öğrendiği zaman anladı Backster, bayanı görünce bitkilerin korkudan bayıldıklarını.

Bir deney tasarladı. 6 yardımcısına aynı gece aynı saatlerde yapmak üzere farklı görevler verdi. Görevlerden biri gece yarısı gelip laboratuvardaki bitkilerden birini söküp parçalamaktı. Ertesi gün o gece bitkiyi parçalayan yardımcı içeri girdiğinde bütün bitkiler çılgınlar gibi haykırmaya başladı (galvanometrelerin ibrelerinin tavan yapmasını böyle adlandırıyor Backster). Bu deneyden anlaşıldı ki bitkiler sadece hissetmiyor, aynı zamanda hafızaları da var. Ve Amerika’da bazı adlî vakalarda bitkilerin şahitliğine başvurulmaya başlandı. Bitkiler asla yanlış sonuç vermiyordu çünkü yalan nedir bilmiyorlardı.

Bu çalışmalar makale olarak yayınlanmaya başlayınca dünyanın dört bir yanından bilim insanları konu üzerinde çalışmalara başladılar. Sonuçlar akıl almaz.

Koparılmış bir yaprak, kendisine güzel sözler söylenmesi durumunda normal yapraktan aylarca daha uzun süre canlı kalabiliyor. 120 km mesafedeki bir acıyı, sevinci hissedebiliyor.

İnsanların düşüncelerini okuyabiliyor, kötülük yapanları hafızasına kaydedebiliyor. Aynı zamanda bu bilgileri diğer bitkilerle de paylaşıyor.

Kendisine kötü davranılan bitki üzüntüsünden intihar bile ediyor.
Yanındaki bitkinin susuz kalması durumunda kendi suyunu onunla paylaşıyor.

Bitkiler, bütün canlılarla iletişim kurma konusunda bizim hayallerimizin ötesinde bir hassasiyete sahip. Her biri doğanın bir parçası. Belki bir gün onları daha iyi anlama imkânımız olursa bize tarihin bütün yaşanmışlıklarını bile anlatabilirler. Avatar filminin esin kaynağı da bu çalışmalar ve elde edilen sonuçları.

Bilelim ki dünyanın herhangi bir yerinde bir bitkiye kötü davranılırsa, bütün bitkiler bunu hissediyor.

Hani “Kirazlı Kaz Dağı değil” diyorlar ya, emin olun Kirazlı’da kesilen bir ağacın acısını sadece Kaz Dağlarında değil, Munzur’daki, Kuzey Ormanlarındaki, Salda’daki, Toroslardaki ağaçlar da hissediyor. Bir gün biz de hissedeceğiz…


Kaynak: Bitkilerin Gizli Yaşamı, Peter Tompkins/Christopher Bird, 1973, Sungur Yayınları, Çev: Sulhi Dölek. Derleyen: Osman Kutlu

Yorum Durumu: Yorum yok --- Kategori: Bilim --- Etiketler: , , , ---

Python Programlama ile zeka soruları

Sorumuz şu: Okunuşunda ki harfleri birbirinden farklı en büyük üç haneli sayı nedir?

Elbette bu soruyu elle de çözmek mümkün ama epey deneme yanılma yapmak gerekir. Örneğin yüzbir, okunuşunda harfler farklı, yüzdört yine okunuşunda ki harfleri farklı daha büyük bir sayı.

Gelin bu sorumuzu python ile çözdürelim.

def yaziyap(sayi):
    birler = ["","bir","iki","üç","dört","beş","altı","yedi","sekiz","dokuz"]
    onlar = ["","on","yirmi","otuz","kırk","elli","altmış","yetmiş","seksen","doksan"]
    sayi=str(sayi)
    if sayi[0]=="1":
        return "yüz"+onlar[int(sayi[1])] + birler[int(sayi[2])]
    else:
        return birler[int(sayi[0])]+"yüz" + onlar[int(sayi[1])] + birler[int(sayi[2])]

for n in reversed(range(999)):
    if len(yaziyap(n)) == len(set(yaziyap(n))):
        print(yaziyap(n))
        break

def kısmı bir fonksiyondur, gelen sayının okunuşunu döndürür geriye. Diğer önemli kısım ise gelen string bilginin işlenişidir. if kısmında yaptığımız gelen kelimenin harflerini sayıyoruz, bir de küme yapıp sayıyoruz. Kümelerin şöyle bir güzelliği var ki aynı elemandan birden fazla kabul etmiyor.

Yorum Durumu: Yorum yok --- Kategori: Bilişim, Zeka Soruları --- Etiketler: , , , , ---

Python Programlama Örnekleri

C/C++ , C#, PHP, Small Basic, Java, Delphi sonrasında Python programlama diline de merak saldım ve epey esnek, programcı dostu metotları ve yazım şekli ile iyi ki de öğrenmişim diyorum. Bir kaç dilden benzerlikler var hepsinin en iyi yönleri alınarak yapılmış gibi sanki. Ve özellikle yine meraklı olduğum zeka sorularını çözmekte çok daha iyi.

Bellek kullanımı ve hız konusunda C++ kadar hızlı olmasa da yazım kolaylığı ve daha kısa kodlar yazma konusunda oldukça iyi. Öncelikle girintili yazım kurallarına göre yapılandırıldığı için otomatik olarak okunurluğu ve geliştirilebilirliği arttırıyor, ekip çalışmasına yatkın hale geliyor. Metotlar konusunda ise oldukça zengin ve programcının ihtiyaç duyduğu metotların neredeyse hepsi mevcut.

Bu yazımda bir kaç zeka sorusunun çözümünü programlama ile yapacağım. Zamanla da yorumlara eklerim veya sizin sormak istediğiniz sorular olursa beraber çözmeye çalışırız.

Devamını oku
Yorum Durumu: Yorum yok --- Kategori: Bilişim --- Etiketler: , , , ---

Rüya yorumcuları arıyoruz

Evden veya mobil bağlanan, rüya yorum sitemizde rüya yorumu yapacak, konu ile az çok bilgili, psikolojiye meraklı, sezgisel yönü iyi olan çalışma arkadaşları arıyoruz. Başvurularınızı buradan veya rüya sitemiz olan RuyadaRuya.com adresinden bana ulaşarak yapabilirsiniz.

Ücretlendirmeyi ve şartları konuşuruz.

Yorum Durumu: Yorum yok --- Kategori: Gündem --- Etiketler: , , ---

Kibrit Oyunu

Bir masa üzerine 1.000.000 (bir milyon) kibrit çöpü bırakılmıştır. İki kişi bu kibrit çöpleri ile aşağıdaki kurala göre oyun oynuyorlar. Sırası gelen oyuncu bir asal sayı p ve negatif olmayan bir n sayısı seçip masa üzerinden p^n tane kibrit çöpünü alabiliyor. (örneğin 8, 1, 25, 5 ,49, 125 vs) En son kibrit çöpünü alan oyuncu oyunu kazanıyor?


Oyunu hangisi kazanır ve nasıl bir taktik uygulaması gerekir?

Yorum Durumu: Yorum yok --- Kategori: Zeka Soruları --- Etiketler: , , , ---