# Hesap Makinesi olarak TPD

TPD, her yazdığınız satıra tepki verir ve sonuç üretir. Başlamak için en basit yol matematiksel ifadeleri denemektir. TPD matematiksel ifadeleri çalıştırır ve değişken değerleri penceresinde gösterir.

Aşağıda göreceğiniz üzere, bizim matematik dersinden aşina olduğumuz bir format kullanılmaktadır.

### Toplama işlemi

\
3 + 2\
19 + 81

### Çıkarma işlemi

\
3 - 2\
19 - 13

### Bölme ve çarpma işlemi

\
3 \* 2\
6 / 2

### İşlemlerin birlikte kullanılması

İşlemler karmaşık şekilde birbirleriyle de kullanılabilir.

\
4+3\*2\
10/2 \* 5

Burada dikkat edilmesi gereken husus, işlem önceliğine dikkat edilmesidir. Bölme ve çarpma işlemi, toplama ve çıkarma işlemi üzerinde üstünlük sahibidir. Beraber kullanıldıklarında önce çarpma veya bölme işlemi yapılır.

Yalnız, parantez kullanılarak oluşturulan işlem önceliği hepsinden üstündür ve önce parantez içindeki işlem yapılır.

\
2\*(10 - 3\*(1+2))

Bu örnekte ise; önce `(1+2)` işlemi önce yapılacak, ardından `3` ile çarpılma işlemi, sonra `10`'dan bu sayı çıkarılacak ve en sonunda `2` ile çarpma yapılacak.

## Uygulama

Öğrendiklerimizin TPD üzerinde uygulanması şonucu aşağıdaki çıktıyı görürüz.

Kodlama yapmak için [turkceprogramlamadili.org](https://mehmetakifakkus.github.io/turkceprogramlamadili/) adresini ziyaret edebilir ve deneme yanılma yapabilirsiniz.

![](https://699050433-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M0__xF7J5c3ynybFVu4%2F-M0__yja6Tx7gSr2uqsd%2F-M0_a-zaRDWuxBGDQKAc%2Fmatematik%C4%B0%C5%9Flemleri.png?generation=1582252448382537\&alt=media)

## Gelecek Konu

Bu işlemleri yapıyoruz ama bunları hafızada bi yerlerde saklasak ve tekrar kullansak nasıl olur? Harika bir fikir değil mi? Öyleyse bir sonraki konumuz olan **değişkenlere** başlamanın zamanı gelmiş demektir.

\
function qsa(sel) {\
&#x20;   return Array.apply(null, document.querySelectorAll(sel));\
}\
\
//deneme ismindeki tüm editörler codemirror editorü olacak\
qsa(".deneme").forEach(function (editorEl) {\
&#x20; CodeMirror.fromTextArea(editorEl, {\
&#x20;   mode: "simplemode",\
&#x20;   readOnly: true,\
&#x20;   lineNumbers: true,\
&#x20;   theme: 'eclipse'\
&#x20; });\
});\
\
//deneme ismindeki tüm editörler codemirror editorü olacak\
qsa(".oneline").forEach(function (editorEl) {\
&#x20; CodeMirror.fromTextArea(editorEl, {\
&#x20;   mode: "simplemode",\
&#x20;   readOnly: true,\
&#x20;   lineNumbers: false,\
&#x20;   theme: 'eclipse2'\
&#x20; });\
});<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mehmet-akif-akkus.gitbook.io/turkce-programlama-diline-giris/giris/basit-bir-hesap-makinesi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
