Dosya ikonu

Otobiyografik Sayı Olanları Listeleme

Bu dosyayı indirebilirsiniz
Otobiyografik Sayı Olanları Listeleme isimli içerikte, sayı kümesindeki otobiyografik nitelikteli sayıların bulunması öğretilmektedir.

Otobiyografik Sayı Olanları Listeleme


Otobiyografik Sayı, Bir sayının soldan birinci rakamı o sayıda toplam kaç adet “0“ rakamı kullanıldığını, ikinci rakamı o sayıda toplam kaç adet “1“ rakamı kullanıldığını, üçüncü rakamı toplam kaç adet “2“ rakamı kullanıldığını gösteren sayıdır.

Dosyamızda da, bu tanıma uıyan sayıların farklı yöntemlerle nasıl bulunacağı ele alınmaktadır.

Merak edenlere ya da ihtiyacı olanlara faydalı olması temennisiyle.

[TAB]
[TABCHILD=Python]
Kod:
[num for num in xl("B5:B12")[0] if all([str(num).count(str(index)) == int(digit) for index, digit in enumerate(str(num))])]
[/TABCHILD]
[TABCHILD=Formül - Excel 365]
Kod:
=SÜTUNA(MAP(B5:B12;LAMBDA(b;b/(b=--ARALIKBİRLEŞTİR(UZUNLUK(b)-UZUNLUK(YERİNEKOY(b;SIRALI(UZUNLUK(b))-1;))))));2)
[/TABCHILD]
[TABCHILD=Power Query]
Kod:
let
    Kaynak = Excel.CurrentWorkbook(){[Name="Tablo1"]}[Content],
    Sonuç = Table.SelectRows(Kaynak, each
    let
        a = Text.From([Sayılar]),
        b = List.Transform({0..Text.Length(a)-1},
            each Text.Length(Text.Select(a,Text.From(_)))),
        c = List.Transform(Text.ToList(a), Number.From)
    in c = b)
in
    Sonuç
[/TABCHILD]
[TABCHILD=VBA - KTF]
Kod:
Function otobiyografik(alan As Range) As Variant
v = alan.Value
ReDim snc(1 To 1, 1 To UBound(v))
For sat = 2 To UBound(v)
    kontrol = True: snc(1, 1) = v(1, 1): d = -1
    For u = 1 To Len(CStr(v(sat, 1))) - 1
        adet = Int(Mid(CStr(v(sat, 1)), u, 1)): d = d + 1
        say = Len(CStr(v(sat, 1))) - Len(Replace(CStr(v(sat, 1)), CStr(d), ""))
        If say <> adet Then: kontrol = False: Exit For
    Next
    If kontrol = True Then: s = s + 1: snc(1, s + 1) = CStr(v(sat, 1))
Next
ReDim Preserve snc(1 To 1, 1 To s + 1)
otobiyografik = Application.Transpose(snc)
End Function
[/TABCHILD]
[/TAB]
  • Sevdim
Tepkiler: Mehmet
Geri
Üst Alt