• 30-10-2007, 16:55:03
    #1
    Merhaba arkadaşlar benim bir sorunum var. basit bir script yapıcam not ortalamasını hesaplamak için. Mesela 10 quiz oluncak dolayısıyla 10 tane boşluk yapıcam. Ama ben mesela 5 boşluğu doldurup onların ortalamasını almak istersem nasıl yapıcam. Yani 5 quizin ortalamasını hesaplatmak istediğim zaman. Anlatabilmişimdir inş. Cevabınız için teşekkürler şimdiden.
  • 30-10-2007, 18:45:03
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    <%
    QuizSayisi = 5
    Toplam = 0

    For i = 1 To QuizSayisi
    Toplam = Toplam + CInt(Request.Form("quiz"& i))
    Next

    Response.Write "Ortalama: "& Toplam / QuizSayisi
    %>

    Forma da quiz1, quiz2 .. alanlar eklersen böyle yapabilirsin.
  • 30-10-2007, 21:35:26
    #3
    burda textboxların name kısmını quiz1 quiz2 yapıcam dime.

    ama birde 10 quiz alanı var 5 tanesini girince adam script diğerilerinide sayacak 0 olduğu için
  • 31-10-2007, 12:43:09
    #4
    Kod işin mantığını veriyor sadece. Ek kontrollerle istediğin gibi yapabilirsin. Mesela aşağıdaki kod, alana sayı girilmezse veya 100'den büyük bir sayı girilirse, o sınavn notunu 0 kabul eder.

    Alıntı
    <%
    QuizSayisi = 5
    Toplam = 0

    For i = 1 To QuizSayisi
    Not = Request.Form("quiz"& i)
    If IsNumeric(Not) = False OR Not > 100 Then Not = 0
    Toplam = Toplam + CInt(Not)
    Next

    Response.Write "Ortalama: "& Toplam / QuizSayisi
    %>
    Name kısımları da quiz1 quiz2 şeklinde olmalı..
  • 31-10-2007, 17:30:58
    #5
    <%
    QuizSayisi = 5
    Toplam = 0
    For i = 1 To QuizSayisi
    if CInt(Request.Form("quiz"& i)) <> 0 Then
    Toplam = Toplam + CInt(Request.Form("quiz"& i))
    Else
    Exit for
    End if
    Next
    cikar = i - 1
    bol = Toplam / cikar
    Response.Write "Ortalama: "& bol
    %>
    Böyle yaptım çalıştı. Yazayım ihtiyacı olan arkadaş olursa kullanır.
  • 31-10-2007, 17:37:07
    #6
    Üyeliği durduruldu
    KONU DIŞI :

    sanırım bu sorunu dün yada önceki gün google'da aratıp bi arkdaşımın forumunada yazmıştın.

    extreme kontrol ederken

    Asp de Ortalama alma
    kelimesinden gelindiğini görüp yorum yapmıştık senmisin acaba ?
  • 31-10-2007, 17:44:41
    #7
    yok ben değildim.
  • 01-11-2007, 22:42:01
    #8
    yukarıda verdiğim kodda mesela 1. quizi girdiğinizde 2.yi girmezseniz 3. yü girerseniz 1 ile 3 ün ortalamsını almıyor. exit for dediği için döngüyü devam ettirmiyor. bende şöle değiştirdim...
    <%
    QuizSayisi = 5
    Toplam = 0
    sayi = 0
    For i = 1 To QuizSayisi
    if CInt(Request.Form("quiz"& i)) <> 0 Then
    Toplam = Toplam + CInt(Request.Form("quiz"& i))
    sayi = sayi + 1
    End if
    Next
    bol = Toplam / sayi
    Response.Write "Ortalama: "& bol

    %>