folder Tahribat.com Forumları
linefolder Asp - Php - Cgi - Perl
linefolder [ASP/PHP] Matematik İşlem Sorusu



[ASP/PHP] Matematik İşlem Sorusu

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    Rastgele matematik işlemi ve sonucu oluşturmaya çalışıyorum. Yapmak istediğim olay şu şekilde;

    (random sayı - 99999) [random işlem] (random sayı - 999) [random işlem] (random sayı - 99) = [sonuç]

    buraya kadar bir sıkıntı yok ancak sıkıntı random işlemlerde bölmeye ya da çarpmaya denk gelirsem sayılara göre ondalık sayılar veriyor.. Benim tam ve pozitif sayı verecek şekilde işlemler oluşturmam lazım

    Matematikle aram yoktur ortaokuldan üniye kadar hep matematikten kalmışımdır. Sonuçtan yola çıkarak sadece 2 işlemde sıfırı bulma ya da ilk sayıdan yola çıkarak sonucun hep pozitif tam sayı olmasını sağlayacak bir fikir lazım ya da ASP/PHP alanında böyle bir kod varsa paylaşılması lazım. Çok şey lazım evet ama yapmam lazım :| 


    :|
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Retro
    by_Tet
    by_Tet's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek

    hocam asp'de cint ve ya int parantezine al çıkan sonucu.

    edit: dur bi uğraşayım bakalım pek anlamadım istediğini ama şu işlemleri yazdığın satır gibi bişe yapam.

    by_Tet tarafından 03/Ağu/12 22:43 tarihinde düzenlenmiştir

    iyibu! yeniden..
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pSkpt
    pSkpt's avatar
    Kayıt Tarihi: 10/Aralık/2010
    Erkek

    pozitif sayi için abs();

    yuvarlama için de floor(); kullanabilirsin.

    round(); -> 3.5 'i 4 yapar.

    floor(); -> 3.9 bile 3 alır.

    pSkpt tarafından 03/Ağu/12 22:43 tarihinde düzenlenmiştir

    İmza...
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    amacım yuvarlamak değil. matematik işlemini insanların kafadan yapabileceği şekilde basitçe otomatik hazırlayıp soru olarak sormam.. yani adam kafasından çözerken bu ondalık çıkıyor ya da sonucu negatif çıkıyor dememesi lazım. bana saf ve temiz pozitif tam sayı çıkaracak işlemler hazırlamak için bir yol lazım

    pesimistzombie tarafından 03/Ağu/12 22:44 tarihinde düzenlenmiştir

    :|
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pSkpt
    pSkpt's avatar
    Kayıt Tarihi: 10/Aralık/2010
    Erkek
    pesimistzombie bunu yazdı

    hocam amacım yuvarlamak değil. matematik işlemini insanların kafadan yapabileceği şekilde basitçe otomatik hazırlayıp soru olarak sormam.. yani adam kafasından çözerken bu ondalık çıkıyor ya da sonucu negatif çıkıyor dememesi lazım. bana saf ve temiz pozitif tam sayı çıkaracak işlemler hazırlamak için bir yol lazım

    sen çözümü değil soruyu istiyorsun?


    İmza...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    Şimdi biraz daha basitçe anlatayım mantık bahsettiğim gibi bu;

    (random sayı - 99999) [random işlem] (random sayı - 999) [random işlem] (random sayı - 99) = [sonuç]

    script hem soruyu oluşturacak hem de çözümü bulup saklayacak insanlar da sadece soruyu görüp sonucu tahmin edecek..

    İnsanlar bu işlemleri kafadan yapacak atıyorum script 122 *15 / 21 = 87.14....  oluşturdu adam kafadan çözerken bakacak ne biçim soru bu lan 87.14 çıkıyor sonuç demeyecek .. 20 / 4 * 2 = 10 gibi tam ve net sorular ve cevaplar oluşturmak zorundayım


    :|
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    FOXXLY
    FOXXLY's avatar
    Kayıt Tarihi: 19/Haziran/2006
    Erkek

    cevabın tam sayı olmasını istiyosun yani. eveleme geveleme olmadan direk 3-5-7 neyse o olcak cevap.

     

    edit. abi şey yap. mesela fonksiyonu yazdın. cevap kesirli ise fonksiyonu tekrar çalıştırt. tam sonuç çıkana kadar çalışsın. bu tabi performanslı olmaz ama iş görür. 3-4 denemedede bulabilir 10-20 dede :D

    FOXXLY tarafından 03/Ağu/12 22:56 tarihinde düzenlenmiştir

    kelimeler albayım bazı anlamlara gelmiyor.
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    canlı örnek: http://pesimistzombie.com/bul.asp

    @föxcüm dolandırdıkça dolandırırım o sorun değil de matematikte vardır bunun formülleri ip uçları hileleri diye şey ediyorum :v ondalıklı ve negatif sonuçlar canımı sıkıyor 


    :|
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Retro
    by_Tet
    by_Tet's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek

    Al hocam elimden geldiğince nacizhane :)

    <%
    function sayiuret()
    sayilar1 = Array(10,20,30,40,50,60,70,80,90)
    sayilar2 = Array(1,2,3,4,6,9)
    sayilar3 = Array(3,6,9,12,15,30,60,90,45)
    islemler = Array("+","-","*","/")
    randomize()
    sayi1 = cint(rnd * 8)
    sayi2 = cint(rnd * 5)
    sayi3 = cint(rnd * 8)
    islem1 = cint(rnd * 3)
    islem2 = cint(rnd * 3)
    yazdir = "uret = ("&sayilar1(sayi1)&islemler(islem1)&sayilar2(sayi2)&islemler(islem2)&sayilar3(sayi3)&")"
    executeglobal yazdir
    if uret < 0 or instr(uret,",") then
    sayiuret
    else
    soru = replace(yazdir,"uret = ","",1,-1,1)
    response.write "İşlem: "&soru&"<br>"
    response.write "Sonuç: "&uret
    
    end if
    end function
    
    response.write sayiuret
    %>

    iyibu! yeniden..
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Retro
    by_Tet
    by_Tet's avatar
    Kayıt Tarihi: 22/Mayıs/2012
    Erkek
    by_Tet bunu yazdı

    Al hocam elimden geldiğince nacizhane :)

    <%
    function sayiuret()
    sayilar1 = Array(10,20,30,40,50,60,70,80,90)
    sayilar2 = Array(1,2,3,4,6,9)
    sayilar3 = Array(3,6,9,12,15,30,60,90,45)
    islemler = Array("+","-","*","/")
    randomize()
    sayi1 = cint(rnd * 8)
    sayi2 = cint(rnd * 5)
    sayi3 = cint(rnd * 8)
    islem1 = cint(rnd * 3)
    islem2 = cint(rnd * 3)
    yazdir = "uret = ("&sayilar1(sayi1)&islemler(islem1)&sayilar2(sayi2)&islemler(islem2)&sayilar3(sayi3)&")"
    executeglobal yazdir
    if uret < 0 or instr(uret,",") then
    sayiuret
    else
    soru = replace(yazdir,"uret = ","",1,-1,1)
    response.write "İşlem: "&soru&"
    " response.write "Sonuç: "&uret end if end function response.write sayiuret %>

    Düzenlerkene editörün kafası karıştığından alıntı yaparak anlatıyım dedim :)

    Arraydaki sayılara göre işlem yapar bunu artırabilirsin. Ama ben en mantıklı haliyle yapayım dedim. Yine de 10 tanede 1 de olsa virgüllü sayı çıkıyordu. İnstr ile "," arattım tekrar yaptırdım. Eğer 0'dan küçükse de aynı şekilde. Ayrıca dikkat etmen gereken bir nokta da executeglobal yapıp işlemleri ekrana yazdırabilmen. Sonracıma bir de randomizeleri arraydaki toplam veriden 1 eksik yapman.

    edit: istersen önizleme için şurdan:  iyibu.org/rand.asp

    by_Tet tarafından 03/Ağu/12 23:20 tarihinde düzenlenmiştir

    iyibu! yeniden..
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    pesimistzombie
    pesimistzombie's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    @by_Tet eyvallah hazır sayılarla yapmak daha mantıklı gibi şuan işkence çekmektense.. bir diğer yol olarak da asla bölme yaptırmamayı uygun  buldum :v ya vardır bunun ufak bi püf noktası da işte keşke matematiğim iyi olsaymış :D


    :|
Toplam Hit: 2573 Toplam Mesaj: 17