[ Milan_n _ @ 02.01.2014. 12:17 ] @
Sastavio sam jedan javascript kod, pa jel zna neko kako da ga dovrši:

Code:

<html>
<body>
<script type="text/javascript">

   var a=prompt("veća vrednost");
       a=parseFloat(a);
   var b=prompt("manja vrednost");

   var l=prompt("l=");
       l=parseFloat(l);
   var s=(Math.round(Math.round(Math.round((a-b)*10000)/10)/10))/100;
       s=parseFloat(s);
   var x=l/s;
       x=parseFloat(x);
   var x5=5*x;
       x5=parseFloat(x5);

   document.write(a+"-"+b+"="+s+"| \n");

   document.write("x="+(Math.round(Math.round(Math.round(x*10000)/10)/10))/100+"| \n");

   document.write("5x="+(Math.round(Math.round(Math.round(x5*10000)/10)/10))/100+"| \n");
   document.write("l="+l+"| ");

</script>
</body>
</html>


Eh sad, potrebno mi je da program s tim vrednostima uradi sledeće:

Ako kao manju vrednost unesem recimo 1350, a vec/u 1362
da se ispishu vrednosti, naravno bez zagrada to sam samo napisao da bih ste shvatili princip.
0*x (1350)
5*x (1355)
5*x (1360)
2*x (1362)


ili ako unesem podatke

manja vrednost: 1258
veća vrednost: 1276
l=?
ispishe na ekranu:
0*x (1258)
2*x (1260)
5*x (1265)
5*x (1270)
5*x (1275)
1*x (1276)


...

ako je x=l/(veća vrednost - manja)

koja naredba u javaskriptu to radi ( odnosno kako da dovrshim program) ?
U pitanju je interpolacija.

Hvala.
[ tuolarips @ 02.01.2014. 14:37 ] @
Code:
<html>
<body>
<script type="text/javascript">

    var a = parseFloat(prompt("veca vrednost"));
    var b = parseFloat(prompt("manja vrednost"));
    var l = parseFloat(prompt("l="));

    var s = parseFloat((Math.round(Math.round(Math.round((a-b)*10000)/10)/10))/100);

    var x = l / s;
    var x5 = 5 * x;

    document.write(a + "-" + b + "=" + s + "| <br>");

    document.write("x=" + Math.round(Math.round(Math.round(x*10000)/10)/10) / 100 + "| <br>");

    document.write("5x=" + Math.round(Math.round(Math.round(x5*10000)/10)/10) / 100 + "| <br>");
    document.write("l=" + l + "| <br>");

    var step = 5;
    var firstAddition = step - b % step;
    var currentStep = b + firstAddition;
    
    // Output first number
    document.write('0*' + x + ' (' + b + ')<br>');
    
    // Output everything between first and last numbers
    while (currentStep < a) {
        if (firstAddition) {
            document.write(firstAddition);
            firstAddition = 0;
        }
        else {
            document.write(step);
        }
        document.write('*' + x + ' (' + currentStep + ')<br>');
        currentStep += step;
    }
    
    // Output last number
    document.write(a % step + '*' + x + ' (' + a + ')<br>');   
</script>
</body>
</html>


Nisam sigurna da li neka js biblioteka podrzava bas ovo sto tebi treba (ako neko zna za tako nesto, neka navede), ali ovo je poprilicno jednostavno za odraditi, pa ti evo kacim i kod. Jedino nisam shvatila u kom formatu bi zeleo da bude ispis, pa sam ga ja ipak stavila onako kako si ti naveo u primerima (zajedno sa brojem u zagradi, iako si rekao da to ne treba), i koristila sam za x ono sto si ti vec izracunao i smestio u istoimenu promenljivu. Ti ispis prepavi onako kako tebi odgovara.
[ Milan_n _ @ 02.01.2014. 15:30 ] @
Samo ako mogu da se podese da vrednosti koje sam na slici obeležio crveno budu zaokruženi na jednu decimalu, s obzirom na to da recimo u ovom slučaju 1345-1344.9=0.1, a ne 0.09999999999990905.

[ tuolarips @ 02.01.2014. 16:21 ] @
To mozes uraditi pozivajuci metod toFixed nad brojem kog zelis da zaokruzis (primer x.toFixed(1))