Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Quersumme erstellen die durch 9 teilbar ist (https://www.delphipraxis.net/36743-quersumme-erstellen-die-durch-9-teilbar-ist.html)

MiniKeks 24. Dez 2004 22:12


Quersumme erstellen die durch 9 teilbar ist
 
Wie geht das?
Es soll in Edit1 geschrieben werden.
Sorry aber ich habe mit delphi noch keine Mathe erfahrungen!

Gruss MiniKeks

Gentleman 24. Dez 2004 22:20

Re: Quersumme erstellen die durch 9 teilbar ist
 
das is ne herausforderung! :zwinker:

Delphi-Quellcode:
Edit1.Text:= 'Text';

MiniKeks 24. Dez 2004 22:25

Re: Quersumme erstellen die durch 9 teilbar ist
 
lol, ich glaub du hast meine frage ned richtig verstanden!
Ich will dass Delphi eine Quersummer errechnet, die durch 9 Teilbar ist und sie in
Edit1 ausgibt.

Danke!

Dani 24. Dez 2004 22:36

Re: Quersumme erstellen die durch 9 teilbar ist
 
Hi, nimm eine Zufallszahl größer Null und multipliziere sie mit 9. :zwinker:

...geht aber glaube ich nur mit der Neun.

BenjaminH 24. Dez 2004 22:37

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von MiniKeks
I)ch will dass Delphi eine Quersummer errechnet, die durch 9 Teilbar ist und sie in
Edit1 ausgibt.

Das würde eine Quersumme errechnen, die durch neun teilbar ist:
Delphi-Quellcode:
randomize;
x:=Random(10);
x:=x*9;
Edit1:=InttoStr(x);
Das wäre die Quersumme, für eine Zahl deren Quersumme durch 9 teilbar ist bin ich grad zu faul, hab aber auch keine Ahnung wie des gehen soll.
[Edit]Schade zu spät[/Edit]

BenjaminH 24. Dez 2004 22:40

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von Dani
Hi, nimm eine Zufallszahl größer Null und multipliziere sie mit 9. :zwinker:

...geht aber glaube ich nur mit der Neun.

Was zu beweisen wäre

Dani 24. Dez 2004 22:43

Re: Quersumme erstellen die durch 9 teilbar ist
 
Ich habe jetzt keinen Bock, es mathematisch zu beweisen... aber wenn du Lust hast, kannst ja mal versuchen es zu falsifizieren :P

BenjaminH 24. Dez 2004 22:49

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von Dani
Ich habe jetzt keinen Bock, es mathematisch zu beweisen... aber wenn du Lust hast, kannst ja mal versuchen es zu falsifizieren :P

Schon fertig:
Mit drei gehts auch, also stimmt das
Zitat:

Zitat von Dani
...geht aber glaube ich nur mit der Neun.

nichtmehr
wzbw. wie mein Mathelehrer gesagt hätte

Dani 24. Dez 2004 23:10

Re: Quersumme erstellen die durch 9 teilbar ist
 
Yepp, hast Recht!
Ist es denn notwendig, dass die Zahlen berechnet werden? Sonst könntest du auch so lange Zufallszahlen erzeugen, bis du auf eine mit der Quersumme 9 stößt :mrgreen:

Delphi-Quellcode:
function Quersumme(Int: Integer): Integer;
var sTmp: String;
       i: Integer;
begin
 Result := 0;
 Int := abs(Int);
 sTmp := IntToStr(Int);
 for i:=1 to Length(sTmp) do
  Result := Result + StrToInt(sTmp[i]);
end;

procedure TForm1.Button1Click(Sender: TObject);
var Found: Integer;
begin
 Repeat
  Found := Random(MaxInt) + 1;
 Until (Quersumme(Found) mod 9) = 0;
 ShowMessage(IntToStr(Found));
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Randomize;
end;

Urba 25. Dez 2004 03:01

Re: Quersumme erstellen die durch 9 teilbar ist
 
Hi,

Bin ich grad irgendwie blöd dass ich die Frage nicht richtig verstehe? Die Antworten von euch beziehen sich doch gar nicht auf die Frage?!

Wenn ich eine Zufallszahl mit 9 multipliziere, dann ist sie zwar durch 9 teilbar, die Quersumme allerdings nicht zwingend. Danis Lösung würde dem zwar schon eher nahekommen aber ich denke nicht dass es das ist was MiniKeks will, oder irre ich mich ?

Meld dich mal Minikeks oder ein anderer und erklär mir mal was genau damit gemeint sein soll. Wenn es wirklich das sein soll, was ich aus der Frage lese müsste er mit ner for-Schleife aufwärts die Zahlen abklappern und dann prüfen ob die Quersumme durch 9 teilbar ist.

Gruss
Urba

Matze 25. Dez 2004 07:15

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von Urba
Meld dich mal Minikeks oder ein anderer und erklär mir mal was genau damit gemeint sein soll. Wenn es wirklich das sein soll, was ich aus der Frage lese müsste er mit ner for-Schleife aufwärts die Zahlen abklappern und dann prüfen ob die Quersumme durch 9 teilbar ist.

Verstehe ich genauso!

Eine zahl, die man mit 9 multipliziert ist durch 9 teilbar, aber die Quersumme wohl nur selten.

Eine Quersumme sind doch die einzelnen Ziffern einer Zahl addiert.



Aber irgendwie wundert es mich gerade, denn das geht ja irgendwie doch. :gruebel:

1 * 9 = 9 (QS: 9)
2 * 9 = 9 (QS: 9)
3 * 9 = 27 (QS: 9)
4 * 9 = 36 (QS: 9) ... bin 10 * 9 (wie oben geschrieben)

Irgendwie bin ich grad ganz durcheinander, wieso geht das denn so? :roll:


Klar, größere Zahlen, wie 900 werden nicht berücksichtigt.

SirThornberry 25. Dez 2004 07:17

Re: Quersumme erstellen die durch 9 teilbar ist
 
@Matze:
Zitat:

2 * 9 = 9 (QS: 9)
und ich dachte immer "2 * 9 = 18"
:wink:

Matze 25. Dez 2004 07:21

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von SirThornberry
und ich dachte immer "2 * 9 = 18"
:wink:

Äh ja, könnte auch sein. :gruebel: :mrgreen:

Ich habe die ganze Nacht kein Auge zugetan, da ich, aufgrund meiner Erkältung, keine Luft bekommen habe. Ich bin also noch etwas müde. ;)

BenjaminH 25. Dez 2004 10:32

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von Matze
Eine zahl, die man mit 9 multipliziert ist durch 9 teilbar, aber die Quersumme wohl nur selten.

Doch! Die Quersumme jedes vielfachen von 9 ist durch 9 teilbar:
1*9=9 9
2*9=18 9
3*9=27 9
4*9=36 9
5*9=45 9
etc.
10*9=90 9
11*9=99 18
12*9=108 9
etc.
Beweisen will ich des jetzt nicht, aber ich weiß das es immer so weitergeht.

Luckie 25. Dez 2004 10:42

Re: Quersumme erstellen die durch 9 teilbar ist
 
Die Quersumme ist die Addition der Ziffern einer Zahl. Die Quersumme von 12 wäre 3 und die ist nicht durch 9 teilbar. Das ist wohl gemeint. Klar, wenn ich die Quersumme noch mal mit 9 multipliziere, dann ist sie auch wieder durch 9 Teilbar, aber das ist wohl nicht gemeint.

Dani 25. Dez 2004 10:57

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Doch! Die Quersumme jedes vielfachen von 9 ist durch 9 teilbar:
Toll, was hab ich denn gestern um 23:36 geschrieben *g*
Mit falsifizieren meinte ich eigentlich, du musst nur eine einzige Zahl finden, auf die meine Annahme nicht zutrifft, und du hast die Annahme widerlegt. Ich kenne leider kein Verfahren, mit dem es sich beweisen lässt. Vielleicht gibts auch keines.

Es ist zwar kein Beweis, aber ich hab mal 1000 000 Million Zufallszahlen mit 9 multiplieren lassen und alle hatten eine durch 9 restlos teilbare Quersumme. Wenn MiniKeks das nicht reicht, kann er ja immer noch reine Zufallszahlen nehmen, irgendwann wird schon eine dabei sein, die seine Bedingung erfüllt :stupid:

Luckie 25. Dez 2004 11:02

Re: Quersumme erstellen die durch 9 teilbar ist
 
Dieser Beitrag ist bei einem Festplattencrash des Servers verloren gegangen.
Das Rechenzentrum.



Puh, noch mal Glück gehabt. :mrgreen:

kiar 25. Dez 2004 11:04

Re: Quersumme erstellen die durch 9 teilbar ist
 
@luckie,

jetzt zweifele ich an dir 1+3+5 = 8 :mrgreen:

LCS 25. Dez 2004 11:04

Re: Quersumme erstellen die durch 9 teilbar ist
 
Hi
Zitat:

Zitat von Luckie
1 + 3 + 5 = 8 nicht durch 9 teilbar. Gefunden beim zweiten zufälligen Versuch der Auswahl zweier Zahlen. ;)

Autsch! Setzen 6 sag ich da nur.

Gruss Lothar

Luckie 25. Dez 2004 11:08

Re: Quersumme erstellen die durch 9 teilbar ist
 
Verdammt. Ich war mit Gedanken wo anders. :oops:

Nikolas 25. Dez 2004 12:40

Re: Quersumme erstellen die durch 9 teilbar ist
 
Nimm dir doch einfach eine Random-Zahl (x) , berechne die Quersumme, rechne x mod 9 und addierst diese Zahl zu x. Diese Zahl sollte dann durch 9 teilbar sein. Wenn x mod 9 kleiner als 5 sein sollte, musst du diese Zahl von x subtrahieren.
Die Lösung ist noch nicht vollständig durchdacht, aber der Ansatz ist sicher richtig.

Urba 25. Dez 2004 13:46

Re: Quersumme erstellen die durch 9 teilbar ist
 
Hallo,

Hab mal ein bisschen rumgeschaut und einen schönen Beweis gefunden bzw selbst formuliert :

zu beweisen ist ja :

Ist die Quersumme einer Zahl durch 9 teilbar, dann ist auch die Zahl selbst durch 9 teilbar.

also nimmt man eine Zahl a deren Quersumme durch 9 teilbar ist (Für "Quersumme" setzte ich jetzt einfach mal die Zahl in geschweifte Klammern) :

a = a0 * 10^0 + a1 * 10^1 + ... + an * 10^n

{a} = a0 + a1 + ... + an

{a}
--- = n, n € N
9

nun wandelt man die eigentliche Zahl etwas um ...

a = a0 * 10^0 + a1 * 10^1 + ... + an * 10^n
= a0 * (10^0 - 1) + a0 + a1 * (10^1 - 1) + a1 + ... + an * (10^n - 1) + an

etwas umgeformt ergibt das

a = [ a0 + a1 + ... + an ] + [ a0 * (10^0 - 1) + a1 * (10^1 - 1) + ... + an * (10^n - 1) ]

unschwer zu erkennen ist dass im 2ten Block alle Summanden durch 9 teilbar sind (10-1, 100-1, 1000-1 ...). Der erste Block wissen wir allerdings aus unserer Vorraussetzung ist auch durch 9 teilbar und somit sind ALLE Summanden von a durch 9 teilbar und somit auch a selbst !!! Damit ist bewiesen : wenn die Quersumme durch 9 teilbar ist, dann ist auch die Zahl selbst durch 9 teilbar. (sonst wäre der erste Block nicht durch 9 teilbar)


Ich weiß dass das jetzt nicht unbedingt die Antwort auf die Frage ist, aber so lernt jeder (eingeschlossen mich) mal wieder was dazu und vielleicht hilft es auch MiniKeks weiter.

Zu seinem eigentlichen Problem würde ich immernoch sagen, dass er die Zahlen von 9 bis [beliebige Anzahl] mit einer for-Schleife durchgeht und schaut, ob die Quersumme 9 ist. Ist dies der Fall ist die Zahl - wie wir ja jetzt wissen - durch 9 teilbar und er hat seine Zahl gefunden. Von daher gesehen ist es sogar doch hilfreich dass er den Beweis kennt, denn so muss er nur die Quersumme bilden, was bedeutend einfacher ist als immer zu testen ob die Zahl durch 9 teilbar ist.

Wünsche noch schöne Feiertage :mrgreen:

Gruss
Urba

Oxmyx 26. Dez 2004 01:20

Re: Quersumme erstellen die durch 9 teilbar ist
 
Zitat:

Zitat von Dani
Zitat:

Doch! Die Quersumme jedes vielfachen von 9 ist durch 9 teilbar:
Toll, was hab ich denn gestern um 23:36 geschrieben *g*
Mit falsifizieren meinte ich eigentlich, du musst nur eine einzige Zahl finden, auf die meine Annahme nicht zutrifft, und du hast die Annahme widerlegt. Ich kenne leider kein Verfahren, mit dem es sich beweisen lässt. Vielleicht gibts auch keines.

Man kann durch vollständige Induktion beweisen, dass die Quersumme jedes Vielfachen von 9 durch 9 teilbar ist.

Urba 26. Dez 2004 01:37

Re: Quersumme erstellen die durch 9 teilbar ist
 
Vollständige Induktion ist ein Grundverfahren, richtig gut sind Beweise die nicht darauf basieren. Kennst du Euklids Beweis dass Wurzel 2 irrational ist ? Genial, weil ohne vollständige Induktion. Will hier jetzt keine Mathediskussion herbeirufen und ich hab auch nichts dagegen, aber wenn es ohne geht finde ich um einiges esthetischer!

Was hast du denn gegen meinen Beweis ?

Gruss
Urba


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 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