c# Web

2024 TYT Matematik Birinci Sorunun Çözümünü c# Diliyle Web Sayfasında 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.

Web sayfasının tasarımını yapalım.

<!DOCTYPE html>

<html lang="tr">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Rasyonel Sayılar Problemi</title>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/
4.5.2/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
    <form id="form1" runat="server">
        <div class="container mt-5">
            <h2 class="text-center">Rasyonel Sayılar Problemi</h2>
            <div class="row">
                <div class="col-md-12">
                    <p>Verilen kesirler:</p>
                    <ul>
                        <li>1/3</li>
                        <li>1/6</li>
                        <li>6/8</li>
                        <li>8/12</li>
                        <li>9/36</li>
                    </ul>
                    <asp:Button ID="calculate" runat="server" 
Text="Hesapla" CssClass="btn btn-primary" OnClick="Calculate_Click" />
                    <div id="result" class="mt-4">
                        <asp:Literal ID="ResultLiteral" 
runat="server"></asp:Literal>
                    </div>
                </div>
            </div>
        </div>
    </form>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/
3.5.1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/
4.5.2/js/bootstrap.min.js"></script>
</body>
</html>

Şimdi de kodları yazalım.

protected void Calculate_Click(object sender, EventArgs e)
{
    // Kesirler ve paydaları
    List<Fraction> fractions = new List<Fraction>
{
    new Fraction { Numerator = 1, Denominator = 3 },
    new Fraction { Numerator = 1, Denominator = 6 },
    new Fraction { Numerator = 6, Denominator = 8 },
    new Fraction { Numerator = 8, Denominator = 12 },
    new Fraction { Numerator = 9, Denominator = 36 }
};

    int ekok = Lcm(fractions.Select(f => f.Denominator).ToArray());

    // Kesirleri aynı paydaya çevirme
    List<Fraction> convertedFractions = fractions.Select(f =>
        new Fraction
        {
            Numerator = f.Numerator * (ekok / f.Denominator),
            Denominator = ekok
        }).ToList();

    Fraction targetFraction = new Fraction { Numerator = 12, 
Denominator = 72 };

    var sums = convertedFractions.Select(f => new
    {
        SumNumerator = targetFraction.Numerator + f.Numerator,
        SumDenominator = ekok,
        OriginalFraction = $"{f.Numerator / (ekok / f.Denominator)}/
{f.Denominator}"
    }).ToList();

    string resultHtml = $"<h4>Paydaların 
En Küçük Ortak Katı (EKOK): {ekok}</h4>";
    resultHtml += "<h4>Kesirlerin Aynı Paydaya Çevrilmiş Hali:</h4><ul>";
    foreach (var f in convertedFractions)
    {
        resultHtml += $"<li>{f.Numerator}/{f.Denominator}</li>";
    }
    resultHtml += "</ul>";

    resultHtml += "<h4>12/72 ile diğer kesirlerin toplamları:</h4><ul>";
    foreach (var s in sums)
    {
        resultHtml += $"<li>12/72 + {s.OriginalFraction} = 
{s.SumNumerator}/{s.SumDenominator} = 
({(double)s.SumNumerator / s.SumDenominator:F2})</li>";
    }
    resultHtml += "</ul>";

    resultHtml += "<h4>Sonuç: 12/72 (yani 1/6) ile diğer 
kesirlerin toplamı 1 olmamaktadır.</h4>";

    ResultLiteral.Text = resultHtml;
}

// EKOK hesaplama
private int Lcm(int[] numbers)
{
    return numbers.Aggregate(Lcm);
}

private int Lcm(int a, int b)
{
    return (a * b) / Gcd(a, b);
}

// EBOB hesaplama
private int Gcd(int a, int b)
{
    return b == 0 ? a : Gcd(b, a % b);
}

public class Fraction
{
    public int Numerator { get; set; }
    public int Denominator { get; set; }
}

İlgili Makaleler
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama
Öğrencilere Ait Performans ve Uygulama Notlarının Girildiği Core Mvc Projesi Tasarlama16
Visual Studio 2022 Programında Asp.Net Web Application Şablonu Görünmüyor Hatasını Düzeltme
Öğrencilere Ait Performans ve Uygulama Notlarının Girildiği Core Mvc Projesi Tasarlama9
Öğrencilere Ait Performans ve Uygulama Notlarının Girildiği Core Mvc Projesi Tasarlama11
Klavyeden Girilen İki Sayıyı Toplayan Programı Visual Studio 2022 Programında Web Sayfası Olarak Kodlayınız
Öğrencilere Ait Performans ve Uygulama Notlarının Girildiği Core Mvc Projesi Tasarlama15
Web Uygulamalarında Bilgisayarın İnternete Bağlı Olup Olmadığını Kontrol Etme
Öğrencilere Ait Performans ve Uygulama Notlarının Girildiği Core Mvc Projesi Tasarlama17
Kullanıcının Kullandığı Bilgisayarda Yazıcı İsimlerini Listeleme
İlk Üç Karakteri Harf Daha Sonraki Karakterler Sayı Olan Metin Girişini Jquery İle Kodlayınız
Web Uygulamalarında SqLite Veritabanında Uyeler Tablosunu Oluşturma
Core Mvc Projesinde Otomobil Satışı Yapan Web Projesini Tasarlama2
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama7
Visual Studio 2022 Programında Asp.Net Core Empty RazorPage Web Projesi Oluşturma
Web Uygulamalarında SqLite Veritabanında Uyeler Tablosuna Kayıt Girişi Yapma
Personele Ait Boy ve Kilo Bilgilerine Göre İdeal Kiloyu Bulan Uygulamayı Asp.Net İle Yapınız
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama2
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama6
2024 TYT Matematik Birinci Sorunun Çözümünü c# Diliyle Web Sayfasında Kodlama

Yorum Ekle
   
Kötü İyi