Wątek przeniesiony 2015-04-21 10:56 z PHP przez dzek69.

Algorytm przeliczający dawki leku

0

Mam taki problem napisałem algorytm przeliczający dawkę leku ( np. dawka dizepamu w dawce 5 mg odpowiada dawce clonazepamu w dawce 0.25) i teraz zadaniem tego algorytmu jest to, żeby przeliczył jak mu się poda np. 5 mg clonazepamu to żeby przeliczył ile to jest czyli ile odpowiada dawce diazepamu. Ten algorytm nie działa poprawnie.

kod źródłowy

   function oblicz_rownowaznik($rownowaznik_diazepamu,$rownowaznik_x,$dawka_koncowa) {
    $tymcza1 = array();
    $tymcza2 = array();
    $j = 0;
    $i = 0;
    $tymcza1[$i] = $rownowaznik_x;
    $tymcza2[$j] = $rownowaznik_diazepamu;
    while ($tymcza2[$j] < $dawka_koncowa) {
      //if ($i == 0) {
	//$tymcza1[$i] = 2 * $rownowaznik_x;
	//$tymcza2[$j] = 2 * $rownowaznik_diazepamu;
      //}
      //else {
	
	$tymcza1[$i] = 2 * $tymcza1[$i];
	$tymcza2[$j] = 2 * $tymcza2[$j];
      //}
      $i++;
      $j++;
    }
    return $tymcza2[$j];
  }

A dawka końcowa to jest po prostu przykładowo to 5 mg clonazepamu.

1

co za magia o.O - skąd Ci do głowy wpadł tam while?

przecież wszystko się sprowadza do mnożenia/dzielenia

0.25/5 = 0.05 --- lek2/lek1 = propocja_dawek
5/0.05 = 100 --- pozadana_dawka_leku2/propocja_dawek = dawka_leku1
i odwrotnie
50.05 = 100 --- pozadana_dawka_leku1propocja_dawek = dawka_leku2

0

Czyli jest tak, że 5 mg diazepamu = 0,25 mg clonazepamu. Jeśli więc ktoś ma przyjąć np. 0,50 mg clonazepamu, to przyjmuje 0,25 clonazepamu * 2, czyli 0,25 mg * (0,50 mg / 0,25 mg) . Ile w takim razie powinien przyjąć diazepamu? *

  • pytanie retoryczne, nawiasy w tekście wstawione "dla pewności zrozumienia" :D
0

Chodzi mi o to, że dla pewnych leków np. dla diazepamu 5 mg diazepamu odpowiada 0.25 mg clonazepamu, a np. 5 mg diazepamu odpowiada 3 mg bromazepamu i ja chcę stworzyć funkcję (algorytm) który by przeliczał to w taki sposób, że jak podamy 24 to żeby umiał przeliczyć, że 24 mg bromazepamu odpowiada 40 mg diazepamu, a np. podamy jakąś liczbę dla clonazepamu (przykładowo 4 mg) to, żeby umiał przeliczyć, że to się równa 40.

0

Coś mi się nie zgadza w Twoich rachunkach :
dla diazepamu 5 mg diazepamu odpowiada 0.25 mg clonazepamu - czyli mamy stosunek diazepam/clonazep = 20/1
np. podamy jakąś liczbę dla clonazepamu (przykładowo 4 mg) to, żeby umiał przeliczyć, że to się równa 40. = tu stosunek diazepam/clonazep wychodzi 10/1

0

No dobra, ale jakbyś miał przykładowo równoważnik diazepamu 5 mg, równoważnik_x 3 mg, a dawka końcowa 24 to by musiał być inny wzór.

Podchodzisz zbyt konkretnie do jednego leku. Czy może masz liczyć tylko ten nieszczęsny diazepam?

Dla każdego leku przechowuj wartość w meq/ml (czy tam mg, jak wolisz)
mając dawkę leku A, obliczasz ile jest miliekwiwalentów w danej dawce, a potem stosując wartość meq/ml leku B obliczasz dawkę w ml na podstawie danej w meq.

Nie potrzeba nawet proporcji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1