c# Web

2022 TYT Matematik Üçüncü Sorunun Çözümünü c# Diliyle Web Sayfasında Kodlama

2022 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.

Mine'nin tahtadan sildiği sayının ya tabanının ya da kuvvetinin 3'e eşit olduğunu biliyoruz. Bu, silinen sayının taban ya da kuvvetinde 3 olmadığını gösterir.

Kalan dört sayıya bakalım:

8 = 23

9 = 32

64 = 43

81 = 34

Bu sayıların her birinde ya taban ya da kuvvet 3'e eşittir. Halbuki 36 = 62 sayısında taban ya da kuvvetinde 3 sayısı bulunmamaktadır. Bu nedenle, Mine'nin tahtadan sildiği sayı 36'dır. Cevap C şıkkıdır.

Sorunun kodlamasını yapalım.

Web sayfasını kodlayalım.

<!DOCTYPE html>
<html lang="tr">
<head runat="server">
    <meta charset="utf-8" />
    <title>Mine'nin Tahtadan Sildiği Sayıyı Bulun</title>
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/
4.5.2/css/bootstrap.min.css" rel="stylesheet" />
    <style>
        .correct {
            color: green;
        }
        .incorrect {
            color: red;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
        <div class="container mt-5">
            <h1 class="mb-4">Mine'nin Tahtadan 
Sildiği Sayıyı Bulun</h1>
            <p>Mine, tahtaya yazdığı aşağıdaki beş 
sayıdan her birini üslü sayı olarak ifade ediyor:</p>
            <ul>
                <li>8 = 2<sup>3</sup></li>
                <li>9 = 3<sup>2</sup></li>
                <li>36 = 6<sup>2</sup></li>
                <li>64 = 4<sup>3</sup></li>
                <li>81 = 3<sup>4</sup></li>
            </ul>
            <p>Mine, bu sayılardan birini tahtadan sildikten sonra 
kalan dört sayının her birinin, ya tabanının ya da kuvvetinin 
3 sayısına eşit olduğunu görüyor.</p>
            <p><strong>Buna göre, Mine’nin tahtadan sildiği 
sayı kaçtır?</strong></p>

            <div class="form-check">
                <input class="form-check-input" type="radio" 
name="answer" id="optionA" value="8" runat="server" />
                <label class="form-check-label" for="optionA">
A) 8 = 2<sup>3</sup></label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="radio" 
name="answer" id="optionB" value="9" runat="server" />
                <label class="form-check-label" for="optionB">
B) 9 = 3<sup>2</sup></label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="radio" 
name="answer" id="optionC" value="36" runat="server" />
                <label class="form-check-label" for="optionC">
C) 36 = 6<sup>2</sup></label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="radio" 
name="answer" id="optionD" value="64" runat="server" />
                <label class="form-check-label" for="optionD">
D) 64 = 4<sup>3</sup></label>
            </div>
            <div class="form-check">
                <input class="form-check-input" type="radio" 
name="answer" id="optionE" value="81" runat="server" />
                <label class="form-check-label" for="optionE">
E) 81 = 3<sup>4</sup></label>
            </div>

            <button type="submit" class="btn btn-primary mt-3" 
runat="server" onserverclick="SubmitAnswer">Cevabı Kontrol Et</button>
            <p id="result" class="mt-3" runat="server"></p>
        </div>
    </form>
</body>
</html>

Kod kısmını yapalım.

protected void SubmitAnswer(object sender, EventArgs e)
{
    string selectedValue = Request.Form["answer"];
    bool isCorrect = false;

    if (!string.IsNullOrEmpty(selectedValue))
    {
        int number = int.Parse(selectedValue);
        isCorrect = IsCorrectAnswer(number);
    }

    if (isCorrect)
    {
        result.InnerHtml = "Doğru cevap! Mine'nin 
tahtadan sildiği sayı 36'dır.";
        result.Attributes["class"] = "correct";
    }
    else
    {
        result.InnerHtml = "Yanlış cevap, tekrar deneyin.";
        result.Attributes["class"] = "incorrect";
    }
}

private bool IsCorrectAnswer(int number)
{
    var numbers = new[] { 8, 9, 36, 64, 81 };
    var remainingNumbers = new List<int>(numbers);
    remainingNumbers.Remove(number);

    foreach (var num in remainingNumbers)
    {
        var (baseNum, exponent) = GetBaseAndExponent(num);
        if (baseNum != 3 && exponent != 3)
        {
            return false;
        }
    }
    return true;
}

private (int baseNum, int exponent) GetBaseAndExponent(int number)
{
    for (int baseNum = 2; baseNum <= number; baseNum++)
    {
        int exponent = 0;
        int temp = number;

        while (temp % baseNum == 0)
        {
            temp /= baseNum;
            exponent++;
        }

        if (temp == 1)
        {
            return (baseNum, exponent);
        }
    }
    return (1, 1); // Hata durumunda döndürülecek değer
}

İlgili Makaleler
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem İkinci Yazılı Çalışma Soruları
2020 TYT Matematik Ortakatlı Kuralıyla İlgili Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama1
Web Tabanlı Uygulama Geliştirme Dersi İkinci Dönem Birinci Yazılı Çalışma Soruları
Visual Studio 2022 Programında Asp.Net Web Application Şablonu Görünmüyor Hatasını Düzeltme
Core Mvc Projesinde Tuple Nesneleri Post Etme ve Yakalama İşlemleri
Seri Port Yardımıyla Arduino Devresine Bağlanıp Ledleri Asp.Net Web Uygulamasından Yakıp Söndürme
Sitenin Alexa Dünya Sıralamasını Kodlarla Öğrenme
Personele Ait Boy ve Kilo Bilgilerine Göre İdeal Kiloyu Bulan Uygulamayı Asp.Net İle Yapınız
Bir Otobüs Firmasına Ait Bilet Satış İşlemlerini Class(Sınıf) Tanımlayarak Yapan c# Form Uygulaması
Asp.Net Uygulamasında Manual Olarak JSON Oluşturma
Web Uygulamalarında SqLite Kullanımı
Asp.Net Uygulamalarında DataList (Veri Listeleme) Kontrolü
C# Uygulamasında Miladi Takvimi Hicri Takvime, Hicri Takvimi Miladi Takvime Dönüştürme
RadioButton ile Cinsiyet Bilgisini Alan Asp.Net c# Uygulaması
2022 TYT Matematik Onbirinci Sorunun Çözümünü c# Diliyle Web Form Sayfasında Kodlama
Asp.Net Uygulamalarında Modal PopUp Oluşturma
Asp.Net Uygulamalarında RequiredFieldValidator İşlemi
Visual Studio 2019 Programında c# İle Hazırlanan Web Projesini Local Sunucuda Yayınlama
Core Mvc Projesinde SqlServer Kullanarak Üye Takibi Yapan Web Projesini Tasarlama4

Yorum Ekle
   
Kötü İyi