Büyük Harflerin Küçük Harflere Oranı


28

Bu meydan okumada siz ve arkadaşlarınız hangi durumun daha iyi, büyük harf mi, küçük harf mi olduğu üzerinde tartışıyorsunuz? Bunu öğrenmek için, bunu sizin için yapacak bir program yazıyorsunuz.

Esolangs arkadaşlarınızı korkuttuğu ve ayrıntılı kod sizi korkuttuğundan, kodunuzun mümkün olduğu kadar kısa olması gerekir.


Örnekler

PrOgRaMiNgPuZzLeS & CoDe GoLf
0.52 uppercase

DowNGoAT RiGHtGoAt LeFTGoat UpGoAT
0.58 uppercase

Foo BaR Baz
0.56 lowercase

Özellikler

Giriş yalnızca ASCII karakterlerinden oluşacaktır. Alfabetik olmayan tüm karakterler dikkate alınmamalıdır. Her durumun en az 1 karakteri olacak

Çıktı, toplam alfabetik karakterlerin üzerinde en fazla görünen durumun miktarı olmalıdır. En az 2 ondalık basamağa kadar kesin bir ondalık olmalıdır . Büyük harf daha sık görünüyorsa, çıktı uppercase, veya ile bitmelidir lowercase.

Asla aynı miktarda büyük ve küçük harf olmaz.


7
Esolangs arkadaşlarımı korkutmuyor. Bu, kodumun çılgınca ayrıntılı olabileceği anlamına mı geliyor?
Alex A.

@AlexA. Ayrıntılı kod sizi korkutuyor, bu nedenle kodunuzun da golfle oynaması gerekecek.
Downgoat

16
Doğru, yinelenen Java kabuslarımı unutmuştum.
Alex A.

4
Sadece bir vaka ile girdi olacak mı?
Manatwork

1
"En az 2 ondalık basamağa kadar hassas" en az iki ondalık basılacak mı, yoksa ikinci bir sıfır basamağı bırakılabilir mi?
HVD

Yanıtlar:


2

Pyth - 40 bayt

Bu ilk defa oldukça havalı olan vectorized string formatlama kullandım.

Kml-zrzd2eS%Vm+cdsK" %sercase"Kc"upp low

Test Takımı .


7

JavaScript (ES6) 87 bayt

Düzenle 1 byte kaydedilmiş thx ETHProductions
Düzenleme 1 byte kaydedilmiş thx l4me

Anonim bir işlev. Uzun, ama daha fazlasını golf oynamanın bir yolunu bulamadım.

s=>(l=t=0,s.replace(/[a-z]/ig,c=>l+=++t&&c>'Z'),l/=t,l<.5?1-l+' upp':l+' low')+'ercase'

Daha az golf oynadı

s=>( // arrow function returning the value of an expression
  // here I use comma for clarity, 
  // in the golfed version it's all merged in a single expression
  t = 0, // counter for letters
  l = 0, // counter for lowercase letters 
  s.replace(
    /[a-z]/ig, // find all alphabetic chars, upper or lowercase
    c => // execute for each found char (in c)
        l += ++t && c>'Z', // increment t, increment l if c is lowercase
  ),
  l /= t, // l is the ratio now
  ( l < .5 // if ratio < 1/2
    ? (1-l) +' upp' // uppercase count / total (+" upp")
    : l +' low'     // lowrcase count / total (+" low")
  ) + 'ercase' // common suffix
)

Bir byte kullanarak tasarruf edebileceğini düşünüyorum &&` ${t-l>l?1-l/t+'upp':l/t+'low'}ercase` .
ETHProductions

Ayrıca, c=>l+=++t&&c>'Z'çalışacak, sanırım ...?
ETHProductions

@ETHProductions ilk ipucunuz kullanışlı görünmüyor, ikincisi zekice, thx
edc65

1
Unungolf versiyonunu bir açıklama ile görebilir miyiz?
Cyoce

@Cyoce açıklaması eklendi - aslında çok basit
edc65

4

CJam, 47 45 bayt

q__eu-\_el-]:,_:+df/" low upp"4/.+:e>"ercase"

Çevrimiçi deneyin.

Çok uzun süre golf oynamamak ...

açıklama

q               e# Read input.
__eu-           e# Get only the lowercase characters.
\_el-           e# Get only the uppercase characters.
]:,             e# Get the lengths of the two strings.
_:+             e# Sum of the lengths.
df/             e# Lengths divided by the sum of the lengths.
" low upp"4/.+  e# Append the first number with " low" and the second " upp"
:e>             e# Find the maximum of the two.
"ercase"        e# Output other things.

4

Japt , 58 bayt

A=Uf"[a-z]" l /Uf"[A-Za-z]" l)>½?A+" low":1-A+" upp" +`ÖÐ

(Not: SE daha önce özel bir karakter çıkardı Ö, bu yüzden lütfen uygun kodu almak için bağlantıyı tıklayın)


İyi iş! İlk regex'iniz (dolar işaretleri dahil) "[a-z]", ikincisi ile değiştirilebilir "A-Za-z". 0.5eşittir ½. Son tırnak işaretini de kaldırabilirsiniz.
ETHProductions,

Belirtilen değişiklikler ve string sıkıştırma ile 58 A=Uf"[a-z]" l /Uf"[A-Za-z]" l)>½?A+" low":1-A+" upp" +`\x80ÖÐelde ederim: Son üç baytın ham versiyonunu elde edebilirsiniz Oc"ercase.
ETHProductions,

@ \x80Hiçbir şey görünmedi ve ÖÐ"vaka" üretti ... Belki de kesilen bazı invisi karakterleri? Btw, kendi
modumu

@ETH Tamam, o invisi-char'ı kullanmayı başardı :)
nicael

Ne yazık ki, regex ayrıştırıcısının çalışması için dizgelerin içinde ters eğik çizgiler iki katına çıkarılmalıdır. Bu durumda, "\w"sadece tüm s'lerle eşleşir wve "\\w"hepsiyle eşleşir A-Za-z0-9_. Bu yüzden tutmak zorunda kalacaksın "[a-z]".
ETHProductions,

4

R , 133 123 118 108 106 105 104 bayt

@ Ovs sayesinde 10 bayt, @Giuseppe sayesinde 8, @ngm sayesinde yine 10 bayt. Bu noktada, gerçekten baytları sağladığım ve başkalarının çıkardığı işbirliğine dayalı bir çaba;)

function(x)cat(max(U<-mean(utf8ToInt(gsub('[^a-zA-Z]',"",x))<91),1-U),c("lowercase","uppercase")[1+2*U])

Çevrimiçi deneyin!


1 bayt daha tıraş etti.
JayCe

3

Matl , 49 50 bayt

Dergiden daha önceki olan dilin geçerli sürümünü (4.1.1) kullanır .

jt3Y2m)tk=Ymt.5<?1w-YU' upp'h}YU' low'h]'ercase'h

Örnekler

>> matl
 > jt3Y2m)tk=Ymt.5<?1w-YU' upp'h}YU' low'h]'ercase'h
 > 
> PrOgRaMiNgPuZzLeS & CoDe GoLf
0.52 uppercase

>> matl
 > jt3Y2m)tk=Ymt.5<?1w-YU' upp'h}YU' low'h]'ercase'h
 > 
> Foo BaR Baz
0.55556 lowercase

açıklama

j                   % input string
t3Y2m)              % duplicate. Keep only letters
tk=Ym               % duplicate. Proportion of lowercase letters
t.5<?               % if less than .5
    1w-             % compute complement of proportion
    YU' upp'h       % convert to string and append ' upp'
}                   % else
    YU' low'h       % convert to string and append ' low' 
]                   % end
'ercase'            % append 'ercase'

3

Julia, 76 74 bayt

s->(x=sum(isupper,s)/sum(isalpha,s);(x>0.5?"$x upp":"$(1-x) low")"ercase")

Bu, bir dizgeyi kabul eden ve bir dize döndüren bir lambda işlevidir. Aramak için değişkene atayın.

Ungolfed:

function f(s::AbstractString)
    # Compute the proportion of uppercase letters
    x = sum(isupper, s) / sum(isalpha, s)

    # Return a string construct as x or 1-x and the appropriate case
    (x > 0.5 ? "$x upp" : "$(1-x) low") * "ercase"
end

Edc65 sayesinde 2 bayt kaydedildi!


1
U, elbette ercaseyerine 2 bayttan tasarruf sağlayabilircase
edc65 17

@ edc65 Harika bir fikir, teşekkürler!
Alex A.

3

Perl 6 ,  91 70 69 63   61 bayt

{($/=($/=@=.comb(/\w/)).grep(*~&' 'ne' ')/$/);"{$/>.5??$/!!1-$/} {<low upp>[$/>.5]}ercase"} # 91
{$/=m:g{<upper>}/m:g{\w};"{$/>.5??$/!!1-$/} {<low upp>[$/>.5]}ercase"} # 70
{"{($/=m:g{<upper>}/m:g{\w})>.5??$/!!1-$/} {<low upp>[$/>.5]}ercase"} # 69
{"{($/=m:g{<upper>}/m:g{\w})>.5??"$/ upp"!!1-$/~' low'}ercase"} # 63

{"{($/=m:g{<:Lu>}/m:g{\w})>.5??"$/ upp"!!1-$/~' low'}ercase"} # 61

Kullanımı:

# give it a lexical name
my &code = {...}

.say for (
  'PrOgRaMiNgPuZzLeS & CoDe GoLf',
  'DowNGoAT RiGHtGoAt LeFTGoat UpGoAT',
  'Foo BaR Baz',
)».&code;
0.52 uppercase
0.580645 uppercase
0.555556 lowercase

2
Grev kod blokları? Bu yeni bir şey ...
Bojidar Marinov

1
Max ("0.55 upp", "0.45 low") için üçlü değiştirerek 3 karakter kaybedersiniz: Deneyin
Phil H

3

C #, 135 bayt

gerektirir:

using System.Linq;

Gerçek işlev:

string U(string s){var c=s.Count(char.IsUpper)*1F/s.Count(char.IsLetter);return(c>0.5?c+" upp":1-c+" low")+"ercase";}

Açıklama ile:

string U(string s)
{
    var c = s.Count(char.IsUpper) // count uppercase letters
               * 1F               // make it a float (less bytes than (float) cast)
               / s.Count(char.IsLetter); // divide it by the total count of letters
    return (c > 0.5 
        ? c + " upp"  // if ratio is greater than 0.5, the result is "<ratio> upp"
        : 1 - c + " low") // otherwise, "<ratio> low"
        + "ercase"; // add "ercase" to the output string
}

3

Python 2, 114 110 bayt

i=input()
n=1.*sum('@'<c<'['for c in i)/sum(c.isalpha()for c in i)
print max(n,1-n),'ulpopw'[n<.5::2]+'ercase'

1
Sen değiştirerek 2 bayt kaydedebilirsiniz ['upp','low'][n<.5]ile 'ulpopw'[n<.5::2]değiştirerek 3 üzeri ve [n,1-n][n<.5]birlikte max(n,1-n).
PurkkaKoodari



2

PHP, 140 129 karakter

İlk golf turum - 'standart' bir dil için hiç de fena değil, ha? :-)

Orijinal:

function f($s){$a=count_chars($s);for($i=65;$i<91;$i++){$u+=$a[$i];$l+=$a[$i+32];}return max($u,$l)/($u+$l).($u<$l?' low':' upp').'ercase';}

@Manatwork sayesinde 129 karaktere kadar kısaltıldı:

function f($s){$a=count_chars($s);for(;$i<26;$u+=$a[$i+++65])$l+=$a[$i+97];return max($u,$l)/($u+$l).' '.($u<$l?low:upp).ercase;}

Yorumlarla:

function uclcratio($s)
{
  // Get info about string, see http://php.net/manual/de/function.count-chars.php
  $array = count_chars($s);

  // Loop through A to Z
  for ($i = 65; $i < 91; $i++) // <91 rather than <=90 to save a byte
  {
    // Add up occurrences of uppercase letters (ASCII 65-90)
    $uppercount += $array[$i];
    // Same with lowercase (ASCII 97-122)
    $lowercount += $array[$i+32];
  }
  // Compose output
  // Ratio is max over sum
  return max($uppercount, $lowercount) / ($uppercount + $lowercount)
  // in favour of which, equality not possible per challenge definition
         . ($uppercount < $lowercount ? ' low' : ' upp') . 'ercase';
}

Verildiğine göre $u+=…, zaten error_reportingvarsayılan olarak, bu yüzden susturma uyarıları olduğunu varsayalım . Sonra bazı tırnak kaldırın: ' '.($u<$l?low:upp).ercase.
Manatwork,

Tarafından tekrarlanacak tek bir forifadeniz varsa, etrafındaki parantezleri kaldırabilirsiniz. for($i=65;$i<91;$u+=$a[$i++])$l+=$a[$i+32];
Manatwork,

Başka bir uyarının fiyatı ile, forkontrol değişkeni başlatma işlemini 65..91 yerine 0..26 çevrerek yedekleyebilirsiniz.for(;$i<26;$u+=$a[$i+++65])$l+=$a[$i+97];
manatwork

Vay, teşekkür ederim @manatwork, PHP'nin ne kadar hoşgörülü olduğunu bilmiyordum! : D İkincisi çok akıllı. Fikirlerinizi 140-4-5-2 = 129 :-) seviyesine getirerek fikirlerinizi uyguladım.
Christallkeks

2

Ruby, 81 + 1 = 82

Bayrak -pile

$_=["#{r=$_.count(a='a-z').fdiv$_.count(a+'A-Z')} low","#{1-r} upp"].max+'ercase'

Şanslı ki, 0 ile 1 arasındaki sayılar için, sözlük bilgisi sıralama, sayısal sıralama ile aynıdır.


2

Ortak Lisp, 132 bayt

(setq s(read-line)f(/(count-if'upper-case-p s)(count-if'alpha-char-p s)))(format t"~f ~aercase"(max f(- 1 f))(if(> f .5)"upp""low"))

Çevrimiçi deneyin!


Testte 0.52 büyük harf küçük değil ...
RosLuP

1
@RosLuP, düzeltildi, çok teşekkürler!
Renzo

1

Gema, 125 karakter

\A=@set{l;0}@set{u;0}
<J1>=@incr{l}
<K1>=@incr{u}
?=
\Z=0.@div{@cmpn{$l;$u;$u;;$l}00;@add{$l;$u}} @cmpn{$l;$u;upp;;low}ercase

Örnek çalışma:

bash-4.3$ for input in 'PrOgRaMiNgPuZzLeS & CoDe GoLf' 'DowNGoAT RiGHtGoAt LeFTGoat UpGoAT' 'Foo BaR Baz'; do
>     gema '\A=@set{l;0}@set{u;0};<J1>=@incr{l};<K1>=@incr{u};?=;\Z=0.@div{@cmpn{$l;$u;$u;;$l}00;@add{$l;$u}} @cmpn{$l;$u;upp;;low}ercase' <<< "$input"
>     echo " <- $input"
> done
0.52 uppercase <- PrOgRaMiNgPuZzLeS & CoDe GoLf
0.58 uppercase <- DowNGoAT RiGHtGoAt LeFTGoat UpGoAT
0.55 lowercase <- Foo BaR Baz

-1 çünkü esolangs arkadaşlarınızı korkutuyor. (jk, çok oy verildi)
ev3 komutanı

1

Cidden, 58 bayt

" upp"" low"k"ercase"@+╗,;;ú;û+∩@-@-;l@ú@-l/;1-k;i<@╜@ZEεj

Hex Dump:

22207570702222206c6f77226b2265726361736522402bbb2c3b3ba33b
962bef402d402d3b6c40a3402d6c2f3b312d6b3b693c40bd405a45ee6a

Sadece indirilebilir tercüman üzerinde çalışıyor ... çevrimiçi olan hala bozuluyor.

Açıklama:

" upp"" low"k"ercase"@+╗                                    Put [" lowercase"," uppercase"]
                                                            in reg0
                        ,;;ú;û+∩@-@-                        Read input, remove non-alpha
                                    ;l@                     Put its length below it
                                       ú@-                  Delete lowercase
                                          l                 Get its length
                                           /                Get the ratio of upper/total
                                            ;1-k            Make list [upp-ratio,low-ratio]
                                                ;i<         Push 1 if low-ratio is higher
                                                   @        Move list to top
                                                    ╜@Z     Zip it with list from reg0
                                                       E    Pick the one with higher ratio
                                                        εj  Convert list to string.

1

Pyth, 45 bayt

AeSK.e,s/LzbkrBG1s[cGshMKd?H"upp""low""ercase

Çevrimiçi deneyin. Test odası.

açıklama

             rBG1               pair of alphabet, uppercase alphabet
    .e                          map k, b over enumerate of that:
      ,                           pair of
           b                          lowercase or uppercase alphabet
        /Lz                           counts of these characters in input
       s                              sum of that
                                    and
            k                         0 for lowercase, 1 for uppercase
   K                            save result in K
 eS                             sort the pairs & take the larger one
A                               save the number of letters in and the 0 or 1 in H

s[                              print the following on one line:
  cG                              larger number of letters divided by
    shMK                            sum of first items of all items of K
                                    (= the total number of letters)
        d                         space
         ?H"upp""low"             "upp" if H is 1 (for uppercase), otherwise "low"
                     "ercase      "ercase"

1

CoffeeScript, 104 karakter

 (a)->(r=1.0*a.replace(/\W|[A-Z]/g,'').length/a.length)&&"#{(r>.5&&(r+' low')||(1-r+' upp'))+'ercase'}"

coffeescript başlangıçta amaçlanan dönüş değerini "r" değerine bir argüman olarak iletmeye çalışıyordu, bu da başarısız oldu ve süper can sıkıcıydı çünkü r bir işlevdi, bir sayı değildi. &&Onları ayırmak için ifadeler arasına koyarak etrafa dolaştım .


1

Pyth, 54 53

@Maltysen sayesinde bir bayt kurtarıldı

K0VzI}NG=hZ)I}NrG1=hK;ceS,ZK+ZK+?>ZK"low""upp""ercase

Çevrimiçi deneyin

K0                  " Set K to 0
                    " (Implicit: Set Z to 0)

Vz                  " For all characters (V) in input (z):
  I}NG              " If the character (N) is in (}) the lowercase alphabet (G):
    =hZ             " Increment (=h) Z
  )                 " End statement
  I}NrG1            " If the character is in the uppercase alphabet (rG1):
    =hK             " Increment K
;                   " End all unclosed statements/loops

c                   " (Implicit print) The division of
  e                 " the last element of
    S,ZK           " the sorted (S) list of Z and K (this returns the max value)
+ZK                 " by the sum of Z and K

+                   " (Implicit print) The concatenation of
  ?>ZK"low""upp"    " "low" if Z > K, else "upp"
  "ercase"          " and the string "ercase".

,<any><any>[<any><any>)size bir bayt kurtarabilenle aynı olan iki arite komutudur
Maltysen

1

Yakut, 97 karakter

->s{'%f %sercase'%[(l,u=[/[a-z]/,/[A-Z]/].map{|r|s.scan(r).size}).max.fdiv(l+u),l>u ?:low: :upp]}

Örnek çalışma:

2.1.5 :001 > ['PrOgRaMiNgPuZzLeS & CoDe GoLf', 'DowNGoAT RiGHtGoAt LeFTGoat UpGoAT', 'Foo BaR Baz'].map{|s|->s{'%f %sercase'%[(l,u=[/[a-z]/,/[A-Z]/].map{|r|s.scan(r).size}).max.fdiv(l+u),l>u ?:low: :upp]}[s]}
 => ["0.520000 uppercase", "0.580645 uppercase", "0.555556 lowercase"] 

1

05AB1E , 28 bayt

ʒ.u}gság/Dò©_αð„Œ„›…#'ƒß«®èJ

Çevrimiçi deneyin!


ʒ.u}g                        # filter all but uppercase letters, get length.
     ság/                    # Differential between uppercase and input length.
         Dò©                 # Round up store result in register w/o pop.
            _α               # Negated, absolute difference.
              ð              # Push space.
               „Œ„›…         # Push "upper lower"
                    #        # Split on space.
                     'ƒß«    # Concat "case" resulting in [uppercase,lowercase]
                         ®èJ # Bring it all together.

1

Java 8, 136 130 bayt

s->{float l=s.replaceAll("[^a-z]","").length();l/=l+s.replaceAll("[^A-Z]","").length();return(l<.5?1-l+" upp":l+" low")+"ercase";}

-6 bayt @ProgramFOX 'C # .NET cevabı portu oluşturarak .

Çevrimiçi deneyin.

Açıklama:

s->{                  // Method with String as both parameter and return-type
  float l=s.replaceAll("[^a-z]","").length();
                      //  Amount of lowercase
  l/=l+s.replaceAll("[^A-Z]","").length();
                      //  Lowercase compared to total amount of letters
  return(l<.5?        //  If this is below 0.5:
          1-l+" upp"  //   Return `1-l`, and append " upp"
         :            //  Else:
          l+" low")   //   Return `l`, and append " low"
        +"ercase";}   //  And append "ercase"

1

REXX, 144 bayt

a=arg(1)
l=n(upper(a))
u=n(lower(a))
c.0='upp';c.1='low'
d=u<l
say 1/((u+l)/max(u,l)) c.d'ercase'
n:return length(space(translate(a,,arg(1)),0))



1

Kotlin , 138 bayt

kod

let{var u=0.0
var l=0.0
forEach{when{it.isUpperCase()->u++
it.isLowerCase()->l++}}
"${maxOf(u,l)/(u+l)} ${if(u>l)"upp" else "low"}ercase"}

kullanım

fun String.y():String =let{var u=0.0
var l=0.0
forEach{when{it.isUpperCase()->u++
it.isLowerCase()->l++}}
"${maxOf(u,l)/(u+l)} ${if(u>l)"upp" else "low"}ercase"}

fun main(args: Array<String>) {
    println("PrOgRaMiNgPuZzLeS & CoDe GoLf".y())
    println("DowNGoAT RiGHtGoAt LeFTGoat UpGoAT".y())
    println("Foo BaR Baz".y())
}

1

Pyth, 40 39 bayt

Jml@dQrBG1+jdeS.T,cRsJJc2."kw񽙽""ercase

Burada dene

açıklama

Jml@dQrBG1+jdeS.T,cRsJJc2."kw񽙽""ercase
 m    rBG1                                For the lower and uppercase alphabet...
  l@dQ                                    ... count the occurrences in the input.
J                 cRsJJ                   Convert to frequencies.
               .T,     c2."kw񽙽"          Pair each with the appropriate case.
             eS                           Get the more frequent.
          +jd                    "ercase  Stick it all together.

1

PowerShell Çekirdek , 134 128 bayt

Filter F{$p=($_-creplace"[^A-Z]",'').Length/($_-replace"[^a-z]",'').Length;$l=1-$p;(.({"$p upp"},{"$l low"})[$p-lt$l])+"ercase"}

Çevrimiçi deneyin!

Veskah , işlevi bir filtreye dönüştürerek altı bayttan tasarruf ettiğin için teşekkürler !


1
Bir fonksiyon yerine bir filtre yaparak iki boş bayttan tasarruf edebilirsiniz, yani filtre F (kod)
Veskah

Bunun bir şey olduğunu bilmiyordum! Teşekkürler Veskah!
Jeff Freeman,

1

Tcl , 166 bayt

proc C s {lmap c [split $s ""] {if [string is u $c] {incr u}
if [string is lo $c] {incr l}}
puts [expr $u>$l?"[expr $u./($u+$l)] upp":"[expr $l./($u+$l)] low"]ercase}

Çevrimiçi deneyin!


1

APL (NARS), 58 karakter, 116 bayt

{m←+/⍵∊⎕A⋄n←+/⍵∊⎕a⋄∊((n⌈m)÷m+n),{m>n:'upp'⋄'low'}'ercase'}

Ölçek:

  h←{m←+/⍵∊⎕A⋄n←+/⍵∊⎕a⋄∊((n⌈m)÷m+n),{m>n:'upp'⋄'low'}'ercase'}
  h "PrOgRaMiNgPuZzLeS & CoDe GoLf"
0.52 uppercase
  h "DowNGoAT RiGHtGoAt LeFTGoat UpGoAT"
0.5806451613 uppercase
  h "Foo BaR Baz"
0.5555555556 lowercase

1

C, 120 bayt

f(char*a){int m=0,k=0,c;for(;isalpha(c=*a++)?c&32?++k:++m:c;);printf("%f %sercase",(m>k?m:k)/(m+k+.0),m>k?"upp":"low");}

test ve sonuç:

main()
{char *p="PrOgRaMiNgPuZzLeS & CoDe GoLf", *q="DowNGoAT RiGHtGoAt LeFTGoat UpGoAT", *m="Foo BaR Baz";
 f(p);printf("\n");f(q);printf("\n");f(m);printf("\n");
}

Sonuçlar

0.520000 uppercase
0.580645 uppercase
0.555556 lowercase

Ascii karakter kümesini varsayalım.



@ceilingcat eğer o 116 byte'ı güncelleyebilirsin ... Bu 120 byte benim için yeterliyse ...
RosLuP
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.