Skip to content

Commit 7d8b113

Browse files
gnwxsumn2u
authored andcommitted
translated numbers section
1 parent 9d89f5a commit 7d8b113

File tree

4 files changed

+340
-0
lines changed

4 files changed

+340
-0
lines changed

tr/numbers/README.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
layout: editorial
3+
chapter: 3
4+
pageNumber: 16
5+
---
6+
7+
# Bölüm 3
8+
9+
# Numbers (Sayılar)
10+
11+
JavaScript **sadece tek bir sayı türüne** sahiptir - 64 bit float point. Java'daki `double` ile aynıdır.
12+
Diğer programlama dillerinin çoğundan farklı olarak, ayrı bir tamsayı türü yoktur, bu nedenle 1 ve 1.0 aynı değerdir. Bir sayı oluşturmak kolaydır, `var` anahtar sözcüğü kullanılarak diğer değişken türlerinde olduğu gibi yapılabilir.
13+
14+
Sayılar sabit bir değerden oluşturulabilir:
15+
16+
```javascript
17+
// This is a float:
18+
let a = 1.2;
19+
20+
// This is an integer:
21+
let b = 10;
22+
```
23+
24+
Veya başka bir değişkenin değerinden:
25+
26+
```javascript
27+
let a = 2;
28+
let b = a;
29+
```
30+
31+
Tam sayılar 15 basamağa kadar tam olarak doğru bir şekilde temsil edilebilir. Ancak, 16 veya daha fazla basamaklı bir tam sayı tanımlamaya çalıştığınızda, JavaScript bu sayıyı yakınsama (approximation) yöntemiyle temsil etmeye başlar.
32+
33+
```javascript
34+
let x = 999999999999999; // x'in değeri 999999999999999 olacak.
35+
let y = 9999999999999999; // y'nin değeri 10000000000000000 olacak.
36+
```
37+
38+
Sayıların önünde `0x` varsa **hexadecimal** formatta kullanılırlarr.
39+
40+
```javascript
41+
let z = 0xff; // 255
42+
```

tr/numbers/advanced.md

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
---
2+
chapter: 3
3+
pageNumber: 21
4+
---
5+
6+
# Advanced Operators (İleri Düzey Operatörler)
7+
8+
Operatörler parantez olmadan bir araya getirildiklerinde, uygulanma sıraları operatörlerin _önceliği_ tarafından belirlenir. Çarpma `(*)` ve bölme `(/)`, toplama `(+)` ve çıkarmadan `(-)` daha yüksek önceliğe sahiptir.
9+
10+
```javascript
11+
// önce çarpma işlemi, daha sonra toplama işlemi yapılır
12+
let x = 100 + 50 * 3; // 250
13+
// parantez içindeki işlemler önce hesaplanır
14+
let y = (100 + 50) * 3; // 450
15+
// aynı önceliğe sahip işlemler soldan sağa doğru hesaplanır
16+
let z = (100 / 50) * 3;
17+
```
18+
19+
Kod yazarken çeşitli gelişmiş matematik operatörleri kullanılabilir. İşte bazı ileri düzey matematik operatörlerinin bir listesi:
20+
21+
- **Modulo (Kalan) operatörü (`%`)**: Modulo operatörü, bir bölme işleminin kalanını döndürür. Örneğin:
22+
23+
```javascript
24+
console.log(10 % 3); // 1
25+
console.log(11 % 3); // 2
26+
console.log(12 % 3); // 0
27+
```
28+
29+
- **Üs alma operatörü (\* \*)**: Üs alma operatörü bir sayıyı başka bir sayının kuvvetine yükseltir. Daha yeni bir operatördür ve tüm tarayıcılarda desteklenmez, bu nedenle bunun yerine `Math.pow` işlevini kullanmanız gerekebilir. Örneğin:
30+
31+
```javascript
32+
console.log(2 ** 3); // 8
33+
console.log(3 ** 2); // 9
34+
console.log(4 ** 3); // 64
35+
```
36+
37+
- **Arttırma operatörü (`++`)**: Arttırma operatörü bir sayıyı bir artırır. Kullanılacak elemanın önüne veya sonuna eklenebilir. Örneğin:
38+
39+
```javascript
40+
let x = 1;
41+
x++; // x is now 2
42+
++x; // x is now 3
43+
```
44+
45+
- **Azaltma operatörü (`--`)**: Azaltma operatörü bir sayıyı bir azaltır. Kullanılacak elemanın önüne veya sonuna eklenebilir. Örneğin:
46+
47+
```javascript
48+
let y = 3;
49+
y--; // y is now 2
50+
--y; // y is now 1
51+
```
52+
53+
- **Math objesi**: `Math` objesi, JavaScript'te matematiksel fonksiyonlar ve sabit değerler sağlayan hazır bir objedir. Bir sayının karekökünü bulmak, bir sayının sinüsünü hesaplamak veya rastgele bir sayı oluşturmak gibi ileri düzey matematik işlemleri gerçekleştirmek için `Math` objesinin fonksiyonlarını kullanabilirsiniz. Örneğin:
54+
55+
```javascript
56+
console.log(Math.sqrt(9)); // 3
57+
console.log(Math.sin(0)); // 0
58+
console.log(Math.random()); //0 ile 1 arasında rastgele bir sayı
59+
```
60+
61+
Bunlar JavaScript'te bulunan ileri düzey matematik operatörleri ve fonksiyonlarına sadece birkaç örnek. Program yazarken ileri düzey matematik işlemleri gerçekleştirmek için kullanabileceğiniz çok daha fazlası vardır.
62+
63+
{% exercise %}
64+
`num1` ve `num2` üzerinde işlem yapmak için aşağıdaki ileri düzey operatörleri kullanın.
65+
66+
{% initial %}
67+
let num1 = 10;
68+
let num2 = 5;
69+
70+
// num1'in değerini artırmak için ++ operatörünü kullanın.
71+
const result1 =
72+
// num2'nin değerini azaltmak için -- operatörünü kullanın.
73+
const result2 =
74+
// num2'yi num1'e eklemek için += operatörünü kullanın.
75+
const result3 =
76+
// num2'yi num1'den çıkarmak için -= operatörünü kullanın.
77+
const result4 =
78+
79+
{% solution %}
80+
let num1 = 10;
81+
let num2 = 5;
82+
83+
// ++ operator to increment the value of num1.
84+
85+
num1++;
86+
const result1 = num1; // 11
87+
// -- operator to decrement the value of num2.
88+
num2--;
89+
const result2 = num2; // 4
90+
// += operator to add num2 to num1.
91+
num1 += num2;
92+
const result3 = num1 // 15
93+
// -= operator to subtract num2 from num1.
94+
num1 -= num2;
95+
const result4 = num1 // 11
96+
97+
{% validation %}
98+
assert(result1 === 11 && result2 === 4 && result3 === 15 && result4 === 11 );
99+
100+
{% context %}
101+
{% endexercise %}
102+
103+
## Nullish coalescing operator '??'
104+
105+
`nullish coalescing operator`, `null/undefined` değilse ilk argümanı, `null/undefined` ise ikincisini döndürür. İki soru işareti `??` olarak yazılır. `x ?? y`'nin sonucu şudur:
106+
107+
- eğer `x` tanımlanmışsa, o zaman `x`,
108+
- eğer `y` tanımlanmamışsa, o zaman `y`.
109+
110+
{% hint style="info" %}
111+
Dile yeni eklenmiştir ve eski tarayıcıların desteklemesi için polyfills'e ihtiyaç duyabilir.
112+
{% endhint %}

tr/numbers/math.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
chapter: 3
3+
pageNumber: 17
4+
---
5+
6+
# Math
7+
8+
`Math` objesi JavaScript'te matematiksel işlemlerin gerçekleştirilmesini sağlar. Statiktir ve bir yapıcısı (**constructor**) yoktur. Math objesi oluşturmadan Math objesinin fonksiyonlarını kullanılabilirsiniz. Bazı matematik özellikleri aşağıda açıklanmıştır:
9+
10+
```javascript
11+
Math.E; // Euler sayısını döndürür
12+
Math.PI; // PI değerini döndürür
13+
Math.SQRT2; // 2'nin karekökünü döndürür
14+
Math.SQRT1_2; // 1/2'nin karekökünü döndürür
15+
Math.LN2; // 2'nin doğal logaritmasını döndürür
16+
Math.LN10; // 10'un doğal logaritmasını döndürür
17+
Math.LOG2E; // E'nin 2 tabanında logaritmasını döndürür
18+
Math.LOG10E; // E'nin 10 tabanında logaritmasını döndürür
19+
```
20+
21+
Bazı matematik yöntemlerine örnek olarak şunlar verilebilir:
22+
23+
```javascript
24+
Math.pow(8, 2); // 64
25+
Math.round(4.6); // 5
26+
Math.ceil(4.9); // 5
27+
Math.floor(4.9); // 4
28+
Math.trunc(4.9); // 4
29+
Math.sign(-4); // -1
30+
Math.sqrt(64); // 8
31+
Math.abs(-4.7); // 4.7
32+
Math.sin((90 * Math.PI) / 180); // 1 (the sine of 90 degrees)
33+
Math.cos((0 * Math.PI) / 180); // 1 (the cos of 0 degrees)
34+
Math.min(0, 150, 30, 20, -8, -200); // -200
35+
Math.max(0, 150, 30, 20, -8, -200); // 150
36+
Math.random(); // 0.44763808380924375
37+
Math.log(2); // 0.6931471805599453
38+
Math.log2(8); // 3
39+
Math.log10(1000); // 3
40+
```
41+
42+
Matematik metoduna erişmek için, gerektiğinde argümanlarla doğrudan metotları çağrılabilir.
43+
44+
| Method | Description |
45+
| ------------------ | ---------------------------------------------------------------------------------- |
46+
| `abs(x)` | `x`'in mutlak değerini döndürür |
47+
| `acos(x)` | `x`'in arkkosinüs değerini radyan cinsinden döndürür |
48+
| `acosh(x)` | `x`'in hiperbolik arkkosinüsünü döndürür |
49+
| `asin(x)` | `x`'in radyan cinsinden arksinüsünü döndürür |
50+
| `asinh(x)` | `x`'in hiperbolik arksinüsünü döndürür |
51+
| `atan(x)` | `x`'in arktanjantını `-PI/2` ile `PI/2` arasında sayısal bir değer olarak döndürür |
52+
| `atan2(y,x)` | İki argümanın bölümünün arktanjantını döndürür |
53+
| `atanh(x)` | `x`'in hiperbolik arktanjantını döndürür |
54+
| `crbt(x)` | `x`'in küp kökünü döndürür |
55+
| `ceil(x)` | `x`'in en yakın üst tam sayıya yuvarlanmış hâlini döndürür |
56+
| `cos(x)` | `x`'in kosinüsünü radyan cinsinden döndürür |
57+
| `cosh(x)` | `x`'in hiperbolik kosinüsünü döndürür |
58+
| `exp(x)` | `x`'in üstel fonksiyonunu döndürür |
59+
| `floor(x)` | `x`'in en yakın alt tam sayıya yuvarlanmış hâlini döndürür |
60+
| `log(x)` | `x`'in doğal logaritmasını döndürür |
61+
| `max(x,y,z,... n)` | En yüksek değere sahip olan sayıyı döndürür |
62+
| `min(x,y,z,... n)` | En düşük değere sahip olan sayıyı döndürür |
63+
| `pow(x,y)` | x'in y. kuvvetini döndürür |
64+
| random() | 0 ile 1 arasında bir sayı döndürür |
65+
| round(x) | Sayıyı en yakın tam sayıya yuvarlar |
66+
| sign(x) | x negatifse -1, 0 ise null, pozitifse 1 döndürür |
67+
| sin(x) | x'in sinüsünü radyan cinsinden döndürür |
68+
| sinh(x) | x'in hiperbolik sinüsünü döndürür |
69+
| sqrt(x) | x'in karekökünü döndürür |
70+
| tan(x) | Bir açının tanjantını döndürür |
71+
| tanh(x) | x'in hiperbolik tanjantını döndürür |
72+
| trunc(x) | Bir sayının tam kısmını döndürür |

tr/numbers/operators.md

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
---
2+
chapter: 3
3+
pageNumber: 19
4+
---
5+
6+
# Basic Operators (Temel operatörler)
7+
8+
Sayılar üzerinde matematiksel işlemler, aşağıdaki gibi bazı temel operatörler kullanılarak gerçekleştirilebilir:
9+
10+
- **Toplama operatörü (`+`)**: Toplama operatörü iki sayıyı birbirine ekler. Örneğin:
11+
12+
```javascript
13+
console.log(1 + 2); // 3
14+
console.log(1 + -2); // -1
15+
```
16+
17+
- **Çıkarma operetörü (`-`)**: Çıkarma operatörü bir sayıyı diğerinden çıkarır. Örneğin:
18+
19+
```javascript
20+
console.log(3 - 2); // 1
21+
console.log(3 - -2); // 5
22+
```
23+
24+
- **Çarpma operatörü (`*`)**: Çarpma operatörü iki sayıyı çarpar. Örneğin:
25+
26+
```javascript
27+
console.log(2 * 3); // 6
28+
console.log(2 * -3); // -6
29+
```
30+
31+
- **Bölme operatörü (`/`)**: Bölme operatörü bir sayıyı diğerine böler. Örneğin:
32+
33+
```javascript
34+
console.log(6 / 2); // 3
35+
console.log(6 / -2); // -3
36+
```
37+
38+
- **Remainder (Kalan) operatörü (`%`)**: Kalan operatörü, bir bölme işleminin kalanını döndürür. Örneğin:
39+
40+
```javascript
41+
console.log(10 % 3); // 1
42+
console.log(11 % 3); // 2
43+
console.log(12 % 3); // 0
44+
```
45+
46+
JavaScript yorumlayıcısı soldan sağa doğru çalışır. İfadeleri ayırmak ve gruplamak için matematikte olduğu gibi parantezler kullanılabilir: `c = (a / b) + d`
47+
48+
{% hint style="warning" %}
49+
JavaScript hem toplama hem de birleştirme için `+` operatörü kullanır. Sayılar eklenirken, dizeler (**string**) birleştirilir.
50+
{% endhint %}
51+
52+
`NaN` terimi, bir sayının geçerli bir sayı olmadığını belirten ayrılmış bir sözcüktür; bu, sayısal olmayan bir dizeyle aritmetik yaptığımızda ortaya çıkar ve `NaN` (Not a Number) ile sonuçlanır.
53+
54+
```javascript
55+
let x = 100 / "10";
56+
```
57+
58+
`parseInt` fonksiyonu bir değeri bir dize olarak çözümleyip ilk tamsayıyı döndürür.
59+
60+
```javascript
61+
parseInt("10"); // 10
62+
parseInt("10.00"); // 10
63+
parseInt("10.33"); // 10
64+
parseInt("34 45 66"); // 34
65+
parseInt(" 60 "); // 60
66+
parseInt("40 years"); //40
67+
parseInt("He was 40"); //NaN
68+
```
69+
70+
JavaScript'te, mümkün olan en büyük sayının dışında bir sayı hesaplarsak `Infinity` döndürür.
71+
72+
```javascript
73+
let x = 2 / 0; // Infinity
74+
let y = -2 / 0; // -Infinity
75+
```
76+
77+
{% exercise %}
78+
Matematik operatörleri +, -, \*, / ve %'yi kullanarak `num1` ve `num2` üzerinde aşağıdaki işlemleri gerçekleştirin.
79+
{% initial %}
80+
81+
let num1 = 10;
82+
let num2 = 5;
83+
84+
// num1 ile num2'yi toplayın.
85+
let addResult =
86+
// num2'den, num1'i çıkartın.
87+
let subtractResult =
88+
// num1 ile num2'yi çarpın.
89+
let multiplyResult =
90+
// num1 ile num2'yi bölün.
91+
let divideResult =
92+
// Num1'in num2'ye bölümünden kalanı bulun.
93+
let reminderResult =
94+
95+
{% solution %}
96+
let num1 = 10;
97+
let num2 = 5;
98+
99+
// Add num1 and num2.
100+
let addResult = (num1 + num2);
101+
// Subtract num2 from num1.
102+
let subtractResult = (num1 - num2);
103+
// Multiply num1 and num2.
104+
let multiplyResult = (num1 \* num2);
105+
// Divide num1 by num2.
106+
let divideResult = (num1 / num2);
107+
// Find the remainder num1 is divided by num2.
108+
let reminderResult = (num1 % num2);
109+
110+
{% validation %}
111+
assert(addResult === 15 && subtractResult === 5 && multiplyResult === 50 && divideResult === 2 && reminderResult === 0 );
112+
113+
{% context %}
114+
{% endexercise %}

0 commit comments

Comments
 (0)