Kayıtlar

Girdimize en yakın palindrom değeri bulan program (Python3 ile)

Resim
Girdimize en yakın palindrom değeri bulan program (Python3 ile)  Merhabalar, yeni yazıma hoşgeldiniz. Bu sefer palindrom sayılar ile uğraşalım istedim. Nedir bu palindrom sayılar? Biz bu sayıları program yardımıyla nasıl bulabiliriz? gibi sorulara cevap arayacağız. Palindrom sayılar hakkında kısa bir vikipedi yazısını altta görmektesiniz. Yukarıda gördüğünüz palindrom sayıların hepsini biz programda göstermeyeceğiz tabi ki. Bizim amacımız girdiğimiz herhangi bir değere en yakın palindrom sayı değerini bulmak. Bunu yaparken ilk başta yukarı gitmekteyiz. Eğer yukarı ve aşağı aynı mesafede iki ayrı palindrom değer var ise, biz yukarıdaki değeri ekranda göstereceğiz. Siz isterseniz bunu değiştirebilir veya ikisini aynı anda gösterecek şekilde kodu düzenleyebilirsiniz. Artık orası size kalmış.  Altta çıktı görselimizi görmektesiniz. Hemen devamında kaynak kodumuzu da bulabilirsiniz. Çıktı görseli Kaynak kod import sys # Kütüphanemizi çağırıyoruz. # Bu alttaki fonksiyonda bir

Playspin Uygulaması (Flutter ile)

Resim
Playspin Uygulaması (Flutter ile) Merhabalar arkadaşlar, bu sefer karşınızda Flutter ile yapılmış bir uygulama ile karşınızdayım. Bu uygulama ile tek zar, çift zar gibi random değerler üretebiliyorsunuz. Sade bir kullanımı olan uygulama olarak kaynak kodunu github'ta paylaşmış bulunmaktayım. Uygulamanın nasıl çalıştığını gösteren videoyu, kaynak kod ve apk linkini aşağıdan bulabilirsiniz.  Video Şimdi ilk başta videomuzu görelim, bakalım uygulamamız nasıl çalışıyormuş. Kod (main.dart) Şimdi main kodumuzu burada paylaşalım ve neler yaptığımızı görelim. Gerekli açıklamaları yorum satırlarına ekledim. import 'package:flutter/material.dart' ; import 'dart:math' ; //burad kutuphanelerimiz cagiriyoruz. String dropdownValue = 'Tek Zar' ; String dropdownValueOld = 'Tek Zar' ; String producedValue = "Bekleniyor!" ; //bunlar kullanacagimiz degiskenlerimiz. void main () { runApp( MyApp ()) ; //buradan projemizi baslatiyoruz. } class MyApp extends St

Pencereler Arası Haberleşme w/ PyQt5

Resim
Merhabalar bu yazımda sizler için PyQt5 ile bir deneme yapmak istedim. Bu denemede iki pencere arasında veri gönderimi yapmaya çalışacağız. Hadi hiç vakit kaybetmeden çalışmalara başlayalım. Şimdi ilk başta PyQt5 hakkında bilginiz olduğunu varsayarak ilerleyeceğim için bilmeyenleri şu youtube playlist'ine davet ediyorum. Bu eğitimin içinde de bulunan bir olayı yapıyor olacağız bizde.  Bildiğiniz üzere PyQt5 ile masaüstü uygulamaları tasarlayabiliyoruz. Gayet başarılı bir şekilde işlemlerimizi halledebiliyoruz ama benim aklıma çok önemli bir olay takılmıştı. İki tane ayrı sayfa açmak durumunda kalsam ne yapacaktım? Tabi bunu yapabilmek düşündüğüm kadar zor değilmiş. Sizlere de hemen aşağıda göstereyim. İlk arayüzü oluşturalım Bu görüntü ile hem arayüzün QtDesigner üzerinde nasıl durduğunu, hemde preview modda nasıl durduğunu görebilirsiniz. Bir tane label ve bir tane de buton ekleyerek bitirdim işimi. İkinci arayüzü oluşturalım Burada ikinci arayüzü görmektesiniz. Bir tane yazı yaz

-bash: sudo: command not found (çözümlü)

Resim
  -bash: sudo: command not found (çözümlü) Evet arkadaşlar herkese selamlar. Bu yeni yazımda hata çözümü ekliyor olacağım. Çünkü, bazı hatalara çok denk geliyorum ve tekrardan arayıp bulmam zaman alıyor. Yerini kaydetsem de nereye kaydettiğimi unutuyorum. O yüzden çözümleri buraya da atacağım ve işi tertemiz halledeceğim. İlk hatamız başlıkta bulunmaktadır. Hemen bununla karşılaşırsak ne yapacağız beraber bakalım. Evet ilk başta karşımıza hatamız geldi diyelim. Burada dediği gibi ilk bu update komutunu yazdığınızda alıyor olacaksınız bu hatayı. Muhtemelen yeni bir linux işletim sistemi kurmuşsunuzdur kabul ediyorum. Bir anda ne yapacağım ben diye şaşırıp kalmayın ve hemen yetkiyi elinize alın. $ su ve $ apt-get update $ su komutunu yazdıktan sonra sizden şifrenizi isteyecektir. Şifrenizi girdikten sonra içeride olacağız. İçeriye girdiğiniz gibi ilk yapacağınız iş $ apt-get update komutuyla güncellemektir.  $ apt-get install sudo Bu komutumuz ile 'sudo' adlı komutumuzu indiri

Python Dictionary Kullanımı

Resim
Python Dictionary Kullanımı Merhabalar, bu yazımızda python dilinde dictionary yöntemi nasıl kullanılır onu inceleyeceğiz. Bunun için yazmış olduğum iki kodu açıkladım ve çıktılarının görsellerini paylaştım. Hadi yazımızı okumaya başlayalım. Dictionary, veri değerlerini anahtar:değer çiftlerinde depolamak için kullanılır. Dictionary veri yapısı json veri yapısına oldukça benzerdir. Bunun en önemli özelliği zaman karmaşıklığının düşük olması diyebiliriz. Bunun için Stackoverflow 'da Yacobi adında kullanıcın yazmış olduğu yazıyı sizlere aktarmak isterim.  Python dict bir karma haritadır, bu nedenle en kötü durumu, karma işlevi kötüyse ve çok sayıda çarpışmayla sonuçlanırsa O(n) olur. Ancak bu, eklenen her öğenin aynı karmaya sahip olduğu ve bu nedenle büyük bir Python uygulaması için son derece olası olmayan aynı zincire eklendiği çok nadir bir durumdur. Ortalama zaman karmaşıklığı elbette O(1)'dir. En iyi yöntem, kullandığınız nesnelerin karmalarını kontrol etmek ve bunlara bak

Her eve lazım terminal komutları

Resim
Her eve lazım terminal komutları Bu yazımızda sizin için her zaman lazım olacağını düşünmediğim komutları ekleyeceğim bu yazıma. Tabi ki her zaman lazım olmaması problem değil çünkü lazım olduğunda direkt ulaşabiliyor olmanız çok hoş olacak ondan eminim. Hele ki benim baya işime yaradıkları kesin. Böyle bir içerik fikri işteyken geldi aklıma. Olayımız daha hızlı terminal komutlarımıza ulaşabilmek. Hadi şimdi başlayalım daha çok iş var. 1. find ~</Document> -iname *<name>*.txt Bu yukarıda gördüğünüz komut ile bilgisayarda herhangi bir arama yapabilirsiniz. Buna ihtiyaç olmadığını düşünüyorsanız minik bir örnek olarak büyük projeleri verebilirim. Herhangi bir hata aldığınızda size şu dosyada bu yok dediğinde onun nerede olduğunu asla bilemeyebilirsiniz. Bunun sayesinde aradığınız her ne ise direkt olarak nerelerde bu var sizin karşınıza seriyor. Tabi ki sudo ile yapmanız gerekebilir. İlk başta fınd diyerek başlıyoruz ve aramak istediğimiz yeri belirtiyoruz. Tabi isterseniz

Insertion Sort Nedir?

Resim
Insertion Sort Nedir? Genelde kart oyunları gibi sıralama gerektiren oyunlarda insanlar elindeki kartları sıralamak için farkında olmadan bu algoritmayı uygulamaktadır. Karmaşıklığı N^2 olduğu için verimlilik konusunda biraz düşündürücü olan bu algoritma nasıl çalışır hep beraber bakalım. 1. Verilen dizinin insertion sort aşamaları Birinci dizi:  [22, 27, 16, 2, 18, 6] [22, 27, 16, 2, 18, 6] [16, 22, 27, 2, 18, 6] [2, 16, 22, 27, 18, 6] [2, 16, 18, 22, 27, 6] [2, 6, 16, 18, 22, 27] 2. Big-O gösterimi ve time complexity Worst case:  En kötü durumda diziyi komple sıralamak gerekmektedir çünkü dizi tam tersi sırada verilmiştir. İlk basamakta 1 tane işlem yapılır yani ilk elemanla ikincinin yeri değiştirilir. İkinci basamakta ise 2. ve 3.elemanın yerini değiştirdikten sonra 1. ve 2. elemanın yeri değiştirilir yani 2 işlem yapılmış olur. Bu şekilde devam edildiğinde 1+2+3+4+...+n-1 = (n*(n-1))/2 bu da n^2 eşitliğine denktir. Burada big-o gösterimi ise O(n^2) olmaktadır. Best case:  En iyi d