Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Formel anwenden... (https://www.delphipraxis.net/17104-formel-anwenden.html)

horst 28. Feb 2004 10:55


Formel anwenden...
 
es geht um einen kalorienverbrauchsrechner, der mit folgender formel rechnen soll.
Code:
gewicht* minuten * wert für 1kg / 15
der kalorienverbrauch bei einer zeit von 15 min sport stimmt...aber alles andere nicht.
die sportarten stehen in einer combobox.
freue mich über jede hilfe


Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
const
 // wertE für 1KG
  faktor1: array[0..23] of Real = (2.0545, 3.0000, 2.1636, 0.9636, 1.5091, 2.4364, 2.3273, 1.8000, 2.1455, 2.0364, 2.5455, 3.2000, 1.6364, 1.2364, 0.7455, 1.1273, 1.4545, 1.0364, 0.9273, 0.4727, 0.9273, 1.6727, 0.9273, 2.0364);

// gewicht* minuten * wert für 1kg / 15
var
  k: integer;
  sum: Double;
begin
  sum := 0;
  for k := 1 to (StrToInt(gewicht.Text) * (StrToInt(minuten.Text) div 15)) do
  begin
    sum := sum + faktor1[combobox.ItemIndex];
  end;
  Edit5.Text := FloatToStr(Round(sum));
end;
grüße horst

MrKnogge 28. Feb 2004 11:01

Re: Formel anwenden...
 
Zitat:

Zitat von horst
Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
  for k := 1 to (StrToInt(gewicht.Text) * (StrToInt(minuten.Text) div 15)) do

Wenn faktor1 die Werte pro Kilo pro Minute sind, dann muss doch k die Anzahl der Kilos pro Minute sein, oder ?
Nimm die "div 15" mal raus, und pack sie in die Schleife. Es könnte ja schlieslich sein, Die Anzahl der Minuten lässt sich nicht durch 15 teilen, wenn keine Fehlermeldung erscheint, wird wohl gerundet und das verfälscht das Ergebnis.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz