![]() |
Potenzen, Formatierungen und Tabellen
Servus
1. Ich habe hier eine Formel. Sie lautet 2^n-1 (^steht für den Exponenten). In Delphi gibt es ja die Super geile Funktion
Delphi-Quellcode:
Das Fragezeichen Interressiert mich, wie schreib ich mit der Funktion die Formel 2^n-1?
[I]variable[/I] := Exp([I]?[/I]);
2. Formatierungen... ich möchte das ergebnis aus 1 mit Tausender Trennzeichen bei der Ausgabe ausstatten. Dies soll im Format %10n darstellen. Muss ich dann nach der berechnung der Potenz (speichern wir die potenz in die Variable x) eine neue Variable nehmen (z.B. y) und sagen
Delphi-Quellcode:
Oder ganz anderster?
y := Format('%10n',[x]);
3. Ich möchte meine ausgegeben Daten in einer Tabelle wiedergeben. Ich habe aber 3 Spalten. Also muss ich einen String Grid nehmen aber wie Funktioniert der!? 4. Das ist jetz rein Mathematisch glaube ich aber ich find keine lösung: Ich hab diese 3 Spalten: Generation, Zeit, Bakterienanzahl. Generation würde ich so lösen: In die Spalte "generation" schreibe ich jeweils i aus der For Schleife rein. Zeit: Alle 20min Teilen sich die Bakterien. Ich habe eine Zeile schon da stehen, in der Steht "0h 00min". In Zeile 2 soll stehen "0h 20min" und so weiter... wie soll ich das machen!? Bakterienzahl: Joa siehe 1 ich hoffe ich konnte mich klar genug ausdrücken :angle2: ... habs nich so mittem erklären sorry Ich danke im vorraus Mfg |
Re: Potenzen, Formatierungen und Tabellen
Hallo,
die Potenz zu einer beliebigen Basis berechnet sich so: function Power(Base, Exponent: Extended): Extended; z.B. a:=power(2,n-1); exp(n-1) berechnet die Funktion e^(n-1) Dsa steht aber alles auch ganz ausführlich in der Delphi Hilfe!! nimoee |
Re: Potenzen, Formatierungen und Tabellen
Hallo,
die Potenz zu einer beliebigen Basis berechnet sich so: function Power(Base, Exponent: Extended): Extended; z.B. a:=power(2,n-1); exp(n-1) berechnet die Funktion e^(n-1) Das steht aber alles auch ganz ausführlich in der Delphi Hilfe!! nimoee |
Re: Potenzen, Formatierungen und Tabellen
2^n = 1 shl n
2^(n-1) = 1 shl (n -1) 2^n-1 = 1 shl n -1 2^8 = 256 2^(8-1) = 128 2^8-1 = 255 Gruß Hagen |
Re: Potenzen, Formatierungen und Tabellen
Ph shit Hagen hat mich grad darauf gebracht das 2^n-1 falsch ist ... scheiße...
2^n ist die Formel. n Ist die Genartion die ich aus dem Wer i aus der For Schleife Raus hole. Allerdings: Wenn ich Generation 50 haben möchte muss ich 2^49 rechnenn... Also müsste ich die For Schleife so aufbauen oder?
Delphi-Quellcode:
Wenn das richtig is bin ich stolz auf mich :mrgreen: .
// Interface:
Function anzahl(2,n): Extended; // Bei Button Click var s := Word s := Edit1.text; For i := 2 to s do begin n := i-1; x := anzahl(2,n); For i:=1 to s do begin Memo1.AddLine(x); end; end; Ich sag nur eins: Scheiß bazillen ... scheiß bio sonderhausaufgabe :wall: :kotz: lol |
Re: Potenzen, Formatierungen und Tabellen
Zitat:
Damit kann man die Zeit im Format Xh XXmin ausgeben: Eingangszahl ist eine real-Zahl: (20/60) wären 20 Minuten, einfach mit i malnehmen und in die Funktion schicken: Listbox3.items.add( Zeitausgeben((1/3)*i));
Delphi-Quellcode:
function Zeitausgeben(Zeit:real) : String;
var H,M : integer; begin H := trunc(Zeit); M := round((Zeit - H)*60); if M < 10 then result := inttostr(H)+'h 0'+inttostr(M)+'min' ELSE result := inttostr(H)+'h '+inttostr(M)+'min'; end; |
Re: Potenzen, Formatierungen und Tabellen
Da kommt dann
oh oomin oh 20min 0h 40min 1h 00min raus? also da is ja keine for schleife drin also keine auomation |
Re: Potenzen, Formatierungen und Tabellen
Mal einfach ausgedrückt, nach jeder Generation verdoppelt sich die Anzahl der Baktierchen -> deswegen sind Bakterien auch Tiere :)
Warum dann nicht einfach auch so vorgehen ??
Delphi-Quellcode:
fertig :)
var
Anzahl: Extended; begin Anzahl := 1; for I := 1 to N -1 do begin Anzahl := 2 * Anzahl; if Anzahl <> 1 shl I then ; end; end; Gruß Hagen |
Re: Potenzen, Formatierungen und Tabellen
Weil ich dachte dasses schneller geht vom programm
|
Re: Potenzen, Formatierungen und Tabellen
Das Ganze in einer Schleife:
Delphi-Quellcode:
for i := 0 to 900000 do
Listbox3.items.add( Zeitausgeben((1/3)*i)); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz