Yıldızlarla veya rakam ve harflerin kendilerini kullanarak büyük rakamlar, büyük harfler oluşturma

Merhabalar, herkese iyi forumlar…
Forumda bu konuyu epey aradım, bazı anahtar kelimelerden yakalamaya çalıştım fakat bulamadım.
Yıldızlarla veya rakam ve harflerin kendilerini kullanarak büyük rakamlar, büyük harfler oluşturmanın programı, formülü, döngüsü var mı acaba? Daha önce böyle çalışması olup yol gösterecek yada bu forumda görmüş yada bir başka yerde görüp linkini paylaşabilecek olan olursa çok sevinirim. Şimdiden teşekkürler…

Resimlerdeki gibi elimle manuel oluşturmuş olduğum fonksiyonlara işimi görmeye çalışıyorum lakin böyle epey uzun oluyr :slight_smile: Eğitim videolarında ve forumlarda yıldızlarla üçgen, kare, piramit, basamak vb şekiller yapanlar var fakat hiç rakam oluşturanı göremedim bulamadım. Dün geceden beri arıyorum…


Ekrana yazmayı planladığınız bütün sembolleri bir şekilde koda dökmeniz lazım. Şu anki çözümünüzde memnun olmadığınız kısım ne ki? Sembollerin boyutunun değiştirilememesi mi?

Konuyla alakalı bilgim yok ama figlet in kaynak kodlarını okuyabilirsen belki yararı olur zira çok gelişkin bir şey işte senin yapmak istediğin gibi ne deniyosa buna

Bir yerden görüp beğenip taş-kağıt-makas oyun programı yapmıştım, yaklaşık 70 satır tuttu. Birden fazla oynanıyor ve kazanan tarafın skoru arıyor. Oyun sonunda skoru bu rakamlarla göstermek istiyorum. Bu yaptığımı beğenmediğim taraf ; 10 farklı fonksiyon oluşturulması. Çok uzun satır oluyor. Ve skora göre ilgili fonksiyonu çağırmak için bir sürü if-else oluşturmam gerekiyor. 1 tane fonksiyon oluşturabilseydim ve skordaki rakamları bu fonksiyonun içerisine parametre olarak atayabilseydim çok mutlu olurdum :slight_smile:

1 Beğeni

Kaynak kodları derken, işte bu resimde gösterdiğim gibi sadece print’lerle manuel oluşturulmuş birşey…

Bu karakterleri yazmadan sorumlu bütün kodlar başka bir modüle yani kod dosyasına alınabilir.

Sözlükleri kullanabilirsiniz.

1 Beğeni

Şekilleri elinle yazmak istemiyorsan figlet ile yazdırıp kopyala yapıştır yapabilirsin diye düşünmüştüm.

1 Beğeni

Rakamları tanımlayan fonksiyonları if’lerle değil de sözlükleri kullanarak çağırmak iyi fikirmiş. Çok teşekkürler…

Figlet konusunu ilk defa duyuyorum. Nereden bakabilirim? Bir göz atmak isterim. Teşk.

Sormadım hangi işletim sistemi kullanıyosun diye ama illa linux vardır diye düşünerek apt-get install figlet şeklinde indirip figlet test yaz mesela şekil şukul şeyler yapıyo. Kopyala yapıştır yaparsın xd github tada var ordan windows a kurulurmu bilmiyorum.

1 Beğeni

Maalesef Linux değil, Windows. Sizden cevap gelene kadar konuyu biraz google’da baktım. Evet Linux’ta oluyormuş :frowning:

ve sanırım Linux’ta daha bir sürü şekiller yapılabiliyor :(((

günümüzde linux kurmak ve kullanmak eskisi kadar zor değil. microsoft store üzerinden kali linux veya debian ı tek tıkla windows a kurabiliyorsunuz. 100 150 mb boyutu var. al sana linux apt-get install figlet indir 5 dk sürmez. ayrıca android telefonun varsa termux uygulamasını indirip apt-get install figlet ile de figleti kurabilrsin. ssh ile windows cmd den alırsın şekilleri :smiley: android in de bir linux olduğunu söylesem kimse itiraz etmez umarım. en kötü sanal makinaya bile kurulabilir linux ?

1 Beğeni

Kendi bilgisayarım olduğunda anaconda’yı kurduktan sonra ilk işim Linux kurmak olacak :slight_smile:
Şuan şirket bilgisayarı kullanıyorum ve kullanıcı oturumuyla giriş yaptığımız için program kurulmaya çalıştığımda sistem admin şifresi istiyor :frowning:
Android telefonum da yok :smiley: uzun zamandır iPhone kullanıyorum…

debian veya linux mint i usb ye kurup live olarak çalıştırıp terminalden figlet i kullanabilrsin. sadece usb de çalışır bi sorun olmaz diye düşünüyorum tabi karar senin :smiley:

hatta bak aklıma ne geldi google colab da kullanabilrsin. gmail adresin ile giriş yapıyosun sana free linux makina veriyo bi terminal açıp bunu yazarsan gene olur hiç linux kurmanada gerek kalmaz. !apt-get install figlet diye kurulabilir en mantıklısı bu bence :smiley:

1 Beğeni

Geçenlerde bununla ilgili @m.halil hoca bir proje yapmıştı.


Bu yapacağınız işlem bir kereye mahsus ise,

https://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something%20

gibi banner oluşturucu siteler işinizi görebilir.

2 Beğeni

Birisi yapmış. :confused: bakabilirsin.

Kendi ev dizininize kurabilirsiniz. Örn:
C:\Kullanıcılar\obligar dizininin içinde herhangi bir yere kurabilirsiniz.

1 Beğeni
12:55:36 16 aib@vivaldi:/tmp% banner banner

 #####     ##    #    #  #    #  ######  #####
 #    #   #  #   ##   #  ##   #  #       #    #
 #####   #    #  # #  #  # #  #  #####   #    #
 #    #  ######  #  # #  #  # #  #       #####
 #    #  #    #  #   ##  #   ##  #       #   #
 #####   #    #  #    #  #    #  ######  #    #

12:55:58 0 aib@vivaldi:/tmp% echo figlet | figlet
                                          
   m""    "           ""#             m   
 mm#mm  mmm     mmmm    #     mmm   mm#mm 
   #      #    #" "#    #    #"  #    #   
   #      #    #   #    #    #""""    #   
   #    mm#mm  "#m"#    "mm  "#mm"    "mm 
                m  #                      
                 ""                       
12:56:06 0 aib@vivaldi:/tmp% echo toilet | toilet
                                          
   m             "    ""#             m   
 mm#mm   mmm   mmm      #     mmm   mm#mm 
   #    #" "#    #      #    #"  #    #   
   #    #   #    #      #    #""""    #   
   "mm  "#m#"  mm#mm    "mm  "#mm"    "mm 
                                          
                                          

Bonus:

12:56:41 16 aib@vivaldi:/tmp% fortune | cowsay
 _____________________________
< Rome wasn't burnt in a day. >
 -----------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||
2 Beğeni

Yazilarin resimlerine normalde prensip geregi bakmiyorum fakat forumda yenisin ve daha once kimse uyarmamis:

Resimdeki gibi yaparsan gereksiz uzun/zor olur. Asil yapman gereken, cizilecek harfi/sayiyi alip satirlari string veya array olarak dondurecek bir fonksiyon veya dict.

Butun bir fontu yapmak tabi ki uzun ve sikici olacaktir; onun icin de resim dosyasini acip pixelleri okuyup string’i kendi cikartan bir program yazabilirsin. Dinamik yazi resmi uretmek icin ideal GTK/Cairo ama baslangic icin ImageMagick de is gorur: convert -pointsize 12 label:5 -threshold 67% text.png

1 Beğeni

Çok teşekkür ederim. Bu hocanın yazdığı kodları bir inceleyeceğim. Sanırım işimi görebilir.

Bir kereye mahsus değil. Oyun skoruna göre değişecek. Örneğin; 1-0, 2-0 veya 3-2 vb oyun sonucunu büyük olarak yazdırmak istiyorum.

skor = [["   ", "1111", "     ", "00000000", "", ""],
        ["     ", "11", "     ",  "00", "  ", "00"],
        ["     ", "11", "     ",  "00", "  ", "00"],
        ["     ", "11", " ### ",  "00", "  ", "00"],
        ["     ", "11", "     ",  "00", "  ", "00"],
        ["     ", "11", "     ",  "00", "  ", "00"],
        ["     ", "11", "     ",  "00000000", "", ""]]

for i in skor:
    print(*i)

image

Her rakam için matrisler oluşturup matrisleri yan yana dizeyim dedim böyle de zor oluyor, her skor sonucuna göre matris oluşturmak zormuş :slight_smile:

1 Beğeni