Entwickler-Ecke

Sonstiges (Delphi) - Quersumme, ggT und kgV


Urmel - Do 28.11.02 17:07
Titel: Quersumme, ggT und kgV
so als erstes hoffe ich mal ich hab mein topic im richtigen forum gepostet und auch richtig benannt... sons gibts wieder motze :mrgreen:
mein problem ist folgendes:
ich soll für die schule ein programm schreiben das die quersumme von zwei zahlen anzeigt und auch den größten gemeinsamen Teiler (ggT) und das kleinste gemeinsame Vielfache (kgV) der beiden Zahlen ermittelt...
is sicher ganz einfach... aber ich kannst nich :mrgreen:
die aufgabenstellung und einiges anderes findet ihr unter
http://whg.leverkusen.de/11IF/ProjektGGT.htm

ich hoffe ihr könnt mir helfen :)

fragt mich nich wo mein problem liegt ich kann das irgendwie alles nich so ganz :mrgreen: ok quersumme versteh ich... das was da steht da hab ich den prozess verstanden... aber das ganze dahin zu bekommen das die beiden quersummen der zahlen angezeigt werden in den labels bis dahin komm ich noch garnich... ggT und kgV müsste ich mir selber nochmal ansehn... ers mal möchte ich das die quersumme auch angezeigt wird :) hatte nämlich ein paar fehler in der syntax...
kann mir jemand einen fertigen quelltext dafür geben und erklären? das wär lieb :) ich weiss nämlich garnich wo man genau welchen befehl plazieren muss...


dankschön im vorraus

Jenny


LCS - Do 28.11.02 18:54

Hi
den Wunscherfüller werde ich nicht spielen :mrgreen: aber ganz hängen lassen will ich dich auch nicht:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
function GGT(Z1, Z2: Integer): Integer;
var
  z, a, b, r  : Integer;
begin
  if  Z1 > Z2 then begin
     a  := Z2;
       b  := Z1;
   end
   else begin
     a  := Z1;
       b  := Z2;
   end;
   while a > 0 do begin
     r  := b mod a;
       b  := a;
       a  := r;
   end;
   Result := b;
end;

function KGV(Z1, Z2: Integer): Integer;
begin
  Result := (Z1 * Z2) div GGT(Z1, Z2);
end;


Das in ein Programm zu packen überlasse ich dir :wink:

Gruss Lothar

Moderiert von user profile iconUdontknow: Code- durch Delphi-Tags ersetzt.


Urmel - Do 28.11.02 19:18

dankeschön :) ich werds bei gelegenheit mal studieren :mrgreen:
heute hab ich nur die quersumme gemacht... hat wegen einigen fehlerchen :mrgreen: unter anderem aber auch übertragungsfehler von delphi4 nach 6 "etwas" länger gedauert da ich alles neu machen durfte :evil:
naja kgV und ggT mach ich die tage mal 8)

trotzdem danke :)


Jack Falworth - Fr 29.11.02 18:56

falls du die quersumme noch nicht hast:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure TForm1.Button1Click(Sender: TObject);
var result,i: integer; zahl: string;
begin
zahl:= Edit1.text;
result:= 0;
for i:= 1 to length (zahl) do
begin
result:= result + strtoint (zahl[i]);
end;
label1.caption:= inttostr (result);
end;


Ist vielleicht kein saubere Programmierstil aber, ich habs auch nur frei ausm Kopp hingeschrieben. Dürfte gehen.

MfG

Jack Falworth

Moderiert von user profile iconKlabautermann: Code durch Delphi-Tags ersetzt.


Urmel - Fr 29.11.02 19:15

quersumme läuft schon einwandfrei aber trotzdem dankeschön :)