Python

2024 TYT Matematik Birinci Sorunun Çözümünü Python Diliyle Kodlama

2024 TYT matematik sorularının çözümünü programlama mantığıyla çözmeye başlayalım. Böylece hem matematik hem de programlama bilgimiz artacaktır. Sorunun çözümünü bilgisayara anlatmak için çözüme ait tüm aşamaları bilmemiz gerekir. Lafı uzatmadan  soruyu verelim.

Bu sorunun çözümünde, verilen kesirlerin paydalarını eşitleyerek toplamlarının 1 olup olmadığını kontrol edebiliriz. Öncelikle, bu kesirlerin paydalarını en küçük ortak kat (EKOK) kullanarak eşitleyelim.

Verilen kesirler:

1/3, 1/6, 6/8, 8/12, 9/36

Bu kesirlerin paydalarının en küçük ortak katını (EKOK) bulalım. Paydalar:

3, 6, 8, 12, 36

Bu sayıların en küçük ortak katını (EKOK) bulmak için asal çarpanlarını kullanabiliriz:

3 : 3

6 : 2.3

8 : 23

12 : 22.3

36 : 22.32

Asal çarpanların en büyük kuvvetleri:

2'nin en büyük kuvveti: 23 = 8

3'ün en büyük kuvveti: 32 = 9

Bu kuvvetleri çarparak EKOK'u bulalım:

𝐸𝐾𝑂𝐾 23.32 = 8.9 = 72

Şimdi kesirli sayıları tekrar yazalım.

1/3 = 24/72

1/6 = 12/72

6/8 = 54/72

8/12 = 48/72

9/36 = 18/72

Eşleştirmeler yapıldığında 1/6 rasyonel sayısı yanı A şıkkı doğru cevap olacaktır.

Çözümü yapalım.

from math import gcd
from functools import reduce

# Kesirler ve paydaları
fractions = [
    (1, 3),
    (1, 6),
    (6, 8),
    (8, 12),
    (9, 36)
]

# EKOK hesaplama fonksiyonu
def lcm(a, b):
    return abs(a * b) // gcd(a, b)

# Tüm paydaların EKOK'unu hesapla
denominators = [f[1] for f in fractions]
ekok = reduce(lcm, denominators)

# Kesirleri aynı paydaya çevirme
converted_fractions = [(f[0] * (ekok // f[1]), ekok) for f in fractions]

# Hedef kesir 12/72 (1/6)
target_fraction = (12, 72)

# 12/72 ve diğer kesirlerin toplamlarını hesaplama
sums = [(target_fraction[0] + f[0], ekok, f) for f in converted_fractions]

# Sonuçları gösterme
print(f"Paydaların En Küçük Ortak Katı (EKOK): {ekok}")
print("Kesirlerin Aynı Paydaya Çevrilmiş Hali:")
for f in converted_fractions:
    print(f"{f[0]}/{f[1]}")

print("12/72 ile diğer kesirlerin toplamları:")
for s in sums:
    toplam, payda, original_fraction = s
    orijinal_kesir = f"{original_fraction[0] 
// (ekok // original_fraction[1])}/{original_fraction[1]}"
    toplam_float = toplam / payda
    print(f"12/72 + {orijinal_kesir} = {toplam}/{payda} = {toplam_float}")

print("Sonuç: 12/72 (yani 1/6) ile diğer kesirlerin toplamı 1 olmamaktadır.")

İlgili Makaleler
NumPy Kütüphanesi ve Kurulumu
Programlama Temelleri Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Faktöriyel Hesabı Yapan Python Uygulaması
Seaborn Kütüphanesi ve Kurulumu
MatPlotLib Kütüphanesi ve Kurulumu
Pandas Kütüphanesini Kullanarak Excel Dosyasından Veri Çekme
Dağılım Ölçütü
Girilen Doğum Tarihine Göre Kullanıcının Yaşını Bulan Python Uygulaması
Ekrana Yıldız Üçgen Çizen Uygulamayı Fonksiyon Tanımlayarak Yapan Python Uygulaması
Veri Bilimine Giriş
Programlama Temelleri Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
Dört İşlemi Fonksiyon Tanımlayarak Yapan Python Uygulaması
Visual Studio 2022 Programında Python Uygulaması Yazarken Türkçe Karakter Sorunu ve Çözümü
Pandas Kütüphanesi ve Kurulumu
Seaborn Kütüphanesini Kullanarak Saçılım Grafiği Oluşturma
Visual Studio 2022 Programında Python Uygulamasını Yazma ve Çalıştırma
Ayt Belirli Sayıda Tekrarlanan Logaritmik Değerlerin Toplamını Bulan Python Uygulaması
NumPy Kütüphanesinde İki Matrisin Çarpımı
Python Dilinde WhatsApp Uygulamasına Bot Yazarak Belirlenen Kullanıcıya Mesaj Atma
Olasılık Yoğunluk Fonksiyonu ve Kümülatif Dağılım Fonksiyonu

Yorum Ekle
   
Kötü İyi