Kom ihåg mig?
Home Menu

Menu


Lite enkel matte

 
Ämnesverktyg Visningsalternativ
Oläst 2004-08-11, 16:18 #1
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
Hejsan, jag har ett värde(5, 10, 15) och vill få ut ett annat (0.1, 0.3, 0.7). Mönstret ser ni nedan:

5 0.1 (+0.2)
10 0.3 (+0.4)
15 0.7 (+0.6)
20 1.3 (+0.8)
25 2.1 (+1.0)
30 3.1 (+1.2)
35 4.3 (+1.4)
40 5.7 (+1.6)
45 7.3 (+1.8)
50 9.1

Hur gör jag en mattematisk formel för detta? Känns som att jag borde klara detta men jag har fått totalt hjärnsläpp. Skyller på sommarlovet...
pontus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 16:42 #2
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
Ok, jag har kommit en liten bit, såhär ser formeln ut för att räkna ut hur mycket man ska plussa på till nästa nivå:


5[$a] 0.1 (+0.2)
10[$a] 0.3 (+0.4)
...

$a = 5
(($a/5)+($a/5))/10=0.2

$a = 10
(($a/5)+($a/5))/10=0.4

Men fortfarande hjärnsläpp. Ser inte helheten... :unsure:
pontus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 16:54 #3
Thomass avatar
Thomas Thomas är inte uppkopplad
Administratör
 
Reg.datum: May 2003
Inlägg: 3 901
Thomas Thomas är inte uppkopplad
Administratör
Thomass avatar
 
Reg.datum: May 2003
Inlägg: 3 901
Citat:
Originally posted by pontus@Aug 11 2004, 16:42
Ok, jag har kommit en liten bit, såhär ser formeln ut för att räkna ut hur mycket man ska plussa på till nästa nivå:


5[$a] 0.1 (+0.2)
10[$a] 0.3 (+0.4)
...

$a = 5
(($a/5)+($a/5))/10=0.2

$a = 10
(($a/5)+($a/5))/10=0.4

Men fortfarande hjärnsläpp. Ser inte helheten... :unsure:
Får man loopa i nån form av programspråk är det ju lugnt ... dock är den klurig om det skall vara en ren formel.

och själva ökningen tar du ju lättare så här va?

$Foo = 10

(($Foo/5)-1)*0,2 som då blir talet som skall ökas till summan av tidigare tal i loopen för det är ju 0,2 som är intressant om $Foo är 10 och inte 0.4 rätta mej om jag har fel.


Thomas
Thomas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 16:59 #4
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
Skapa gjärna formeln i php eller asp åt mig...
pontus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:23 #5
nicclas nicclas är inte uppkopplad
Flitig postare
 
Reg.datum: May 2003
Inlägg: 340
nicclas nicclas är inte uppkopplad
Flitig postare
 
Reg.datum: May 2003
Inlägg: 340
Ja, det är lurigt att få fram en ren formel, men det går:

$F=(($a-5)/5+1)*($a-5)/5/2*0.2+0.1

där $a är 5, 10, 15 eller 20 osv. $F blir det du efterfrågade 0.1, 0.3, 0.7, 1.3 osv.
nicclas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:35 #6
Thomass avatar
Thomas Thomas är inte uppkopplad
Administratör
 
Reg.datum: May 2003
Inlägg: 3 901
Thomas Thomas är inte uppkopplad
Administratör
Thomass avatar
 
Reg.datum: May 2003
Inlägg: 3 901
Citat:
Originally posted by pontus@Aug 11 2004, 16:59
Skapa gjärna formeln i php eller asp åt mig... *
Tyvärr kan jag bara perl men du kan säker skriva om till php själv ...


#!/usr/bin/perl
############
print "Content-type: text/html\n\n";

$Foo = $ENV{'QUERY_STRING'};

$x = 1;
$y = 0.1;
$Bar = $y;

while ($x <= ($Foo / 5))

{

$Bar = $Bar + ((($x*5)/5)-1)*0.2;

$Loop = $x * 5;

print "$Loop : $Bar
";

$x++;

}

print "

";

print "[b]$Foo = $Bar[b]";

#-----------------------


Exempel på resultatet ser du här ...

http://www.meivert.com/___temp/?5

http://www.meivert.com/___temp/?50

osv ...

Thomas
Thomas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:39 #7
nicclas nicclas är inte uppkopplad
Flitig postare
 
Reg.datum: May 2003
Inlägg: 340
nicclas nicclas är inte uppkopplad
Flitig postare
 
Reg.datum: May 2003
Inlägg: 340
Och i PHP räcker det att skriva:
<?
$F=(($a-5)/5+1)*($a-5)/5/2*0.2+0.1
?>
Ja, ni ser ju själva hur mycket bättre PHP är än Perl (skämt)
nicclas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:40 #8
Thomass avatar
Thomas Thomas är inte uppkopplad
Administratör
 
Reg.datum: May 2003
Inlägg: 3 901
Thomas Thomas är inte uppkopplad
Administratör
Thomass avatar
 
Reg.datum: May 2003
Inlägg: 3 901
Citat:
Originally posted by nicclas@Aug 11 2004, 17:23
Ja, det är lurigt att få fram en ren formel, men det går:

$F=(($a-5)/5+1)*($a-5)/5/2*0.2+0.1

där $a är 5, 10, 15 eller 20 osv. $F blir det du efterfrågade 0.1, 0.3, 0.7, 1.3 osv.
najs!

Thomas
Thomas är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:41 #9
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
pontus pontus är inte uppkopplad
Flitig postare
 
Reg.datum: Mar 2003
Inlägg: 450
Många, många tack för hjälpen.
pontus är inte uppkopplad   Svara med citatSvara med citat
Oläst 2004-08-11, 17:49 #10
Thomass avatar
Thomas Thomas är inte uppkopplad
Administratör
 
Reg.datum: May 2003
Inlägg: 3 901
Thomas Thomas är inte uppkopplad
Administratör
Thomass avatar
 
Reg.datum: May 2003
Inlägg: 3 901
Citat:
Originally posted by pontus@Aug 11 2004, 17:41
Många, många tack för hjälpen.
Tänkte dock på att inget av ovanstående kollar indatan.

Min variant jobbar med att talet imellan 5, 10, 15 osv blir avrundat nedåt, nicclas resulterar i det exakta decimaltalet, så du kanske måste skriva nåt som kollar indatan oxå.

Thomas
Thomas är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 23:41.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017