![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 26.08.2009 Skąd: Zamojsce Ostrzeżenie: (0%) ![]() ![]() |
(IMG:http://images48.fotosik.pl/188/36eb6354103b063bm.jpg)
SCREEN Na screenie widać prosty schemat tabeli w bazie danych Na dole struktura a na górze rekordy Mamy 8 dni i 4 produkty dla których trzeba policzyć Popyt średni i Odchylenie Standardowe Kolega proponuje tak obliczać Pśr i OS Cytat("Norbert") $pytanko="SELECT popyt_klej FROM popyt"; $rezultat = mysql_query($pytanko) or die("Błąd zapytania"); $tablica = mysql_fetch_array($rezultat); $n=count($tablica); $srednia=0; for($i=0;$i<=$n;$i++) { $srednia=$srednia+$tablica[$i]; } $srednia=$srednia/$n; for($i=0;$i<=$n;$i++) { $wyraz_srednia=$tablica[$i]-$srednia; // tutaj do zmiennej $wyraz_srednia przypisujesz roznice danej liczby i sredniej wszystkich liczb $tablica2[$i]= $wyraz_srednia * $wyraz_srednia; } for($i=0;$i<=$n;$i++) { $wynik=$wynik+$tablica2[$i]; //dostajesz sume tych wszystkich kwadratow roznicy wyrazu i sredniej; } $wynik=sqrt($wynik); echo "<h1>Srednia: ".$srednia."</h1><P>"; echo "<h1>Odchylenie: ".$wynik."</h1><P>"; Kod daje takie wyniki dla popyt_klej i popyt_srubki Srednia: 10 Odchylenie: 17.320508075689 Kod daje takie wyniki dla popyt_farba i popyt_drewno Srednia: 5 Odchylenie: 8.6602540378444 Powinna wyjść średnia dla popyt_klej: 160/8 czyli 20 Mam takie pytanie: Czy da radę napisać tak kod aby później była możliwość dodawania kolejnych wierszy Id=9, data, popyty dla poszczególnych towarów itd... oraz możliwość dodawania towarów, czyli chodzi mi o taki kod który by liczył Pśr i OS nawet gdy tabela będzie się rozrastać w 2 wymiarach Chyba nie ma sensu dla każdego towaru robić osobną tabelę w bazie danych. Takie rozwiązanie jakie prezentuje screen, że w jednej tabeli są wszystkie towary i wszystkie wartości popytu jest chyba najlepszy. Tylko problem z tym ciężkim do wymyślenia kodem. Jakby ktoś był w stanie coś wymyśleć to proszę o jakieś pomysły lub kontakt GG 3257134 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 41 Pomógł: 0 Dołączył: 26.08.2009 Skąd: Zamojsce Ostrzeżenie: (0%) ![]() ![]() |
Tylko jak zrobić
sumowanie wszystkich wartości w kolumnie W ogóle to taki kod $pytanko="SELECT * FROM popyt"; $rezultat = mysql_query($pytanko) or die("Błąd zapytania"); $tablica = mysql_fetch_array($rezultat); $n=count($tablica); $wiersze = mysql_num_rows($rezultat); var_dump($tablica) ; daje następujące wyniki: array(12) { [0]=> string(1) "1" ["Id"]=> string(1) "1" [1]=> string(10) "2009-07-01" ["Data"]=> string(10) "2009-07-01" [2]=> string(2) "10" ["popyt_drewno"]=> string(2) "10" [3]=> string(2) "20" ["popyt_srubki"]=> string(2) "20" [4]=> string(2) "20" ["popyt_klej"]=> string(2) "20" [5]=> string(2) "10" ["popyt_farba"]=> string(2) "10" } var dump pokazuje że tablica jest jednowymiarowa, wczytało tylko pierwszy wiersz ten z Id=1 wiersze: 8 z kolei funkcja mysql_num_rows mówi że w tabeli jest 8 wierszów, jak dla mnie var dump zaprzecza mysql_num_rows n: 12 zliczone elementy tablicy, dlaczego tylko 12? tyle ile pokazuje var dump Natomiast taki kod: echo "<h1>TAb0: ".$tablica[0]."</h1><P>"; echo "<h1>TAb1: ".$tablica[1]."</h1><P>"; echo "<h1>TAb2: ".$tablica[2]."</h1><P>"; echo "<h1>TAb3: ".$tablica[3]."</h1><P>"; echo "<h1>TAb 0 0: ".$tablica[0][0]."</h1><P>"; echo "<h1>TAb 0 1: ".$tablica[0][1]."</h1><P>"; echo "<h1>TAb 1 0: ".$tablica[1][0]."</h1><P>"; echo "<h1>TAb 1 1: ".$tablica[1][1]."</h1><P>"; echo "<h1>TAb 0 2: ".$tablica[0][2]."</h1><P>"; echo "<h1>TAb 2 0: ".$tablica[2][0]."</h1><P>"; echo "<h1>TAb 2 1: ".$tablica[2][1]."</h1><P>"; echo "<h1>TAb 1 2: ".$tablica[1][2]."</h1><P>"; echo "<h1>TAb 2 2: ".$tablica[2][2]."</h1><P>"; echo "<h1>TAb 3 0: ".$tablica[3][0]."</h1><P>"; echo "<h1>TAb 3 1: ".$tablica[3][1]."</h1><P>"; echo "<h1>TAb 3 2: ".$tablica[3][2]."</h1><P>"; echo "<h1>TAb 3 3: ".$tablica[3][3]."</h1><P>"; echo "<h1>TAb 0 3: ".$tablica[0][3]."</h1><P>"; echo "<h1>TAb 1 3: ".$tablica[1][3]."</h1><P>"; echo "<h1>TAb 2 3: ".$tablica[2][3]."</h1><P>"; daje wyniki: TAb0: 1 TAb1: 2009-07-01 TAb2: 10 TAb3: 20 czyli tutaj mamy kolejne komórki 1. wiersza (Id=1) TAb 0 0: 1 TAb 0 1: TAb 1 0: 2 TAb 1 1: 0 TAb 0 2: TAb 2 0: 1 TAb 2 1: 0 TAb 1 2: 0 TAb 2 2: TAb 3 0: 2 TAb 3 1: 0 TAb 3 2: TAb 3 3: TAb 0 3: TAb 1 3: 9 TAb 2 3: Nie wiem o co tu chodzi, komórka [0][0] ma wartość 1, niektóre komórki nie mają wartości, komórka [1][3] ma wartość 9 ((IMG:style_emoticons/default/questionmark.gif) ) Ten post edytował damianprz 26.08.2009, 22:22:57 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 9.10.2025 - 22:50 |