AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Feststellen ob Zahl durch 3 Teilbar

Ein Thema von frielix · begonnen am 31. Okt 2006 · letzter Beitrag vom 1. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
frielix

Registriert seit: 31. Aug 2006
Ort: Dresden
7 Beiträge
 
#1

Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:04
So, mein Programm soll schauen ob die Variable durch 3 zu teilen geht, ansonsten sollen soviele Nullen vorn drangemacht werden bis es geht

Habe mir gedacht das das so hier geht:

Delphi-Quellcode:
if not length(vK) mod 3 = 0 then
 begin
  repeat
   vk := '0' + vK;
  until length(vK) mod 3 = 0;
 end;
Aber irgendwie geht das, wenn nur noch ein Zeichen fehlt, bis es durch 3 teilbar wird. Also bei 2, 5, 8, 11, usw...
Aber wen vK nur ein (oder 4, 7, ...) Zeihen hat passiert gar nicht...

Waran liegt das??

MfG Felix
  Mit Zitat antworten Zitat
bigg
(Gast)

n/a Beiträge
 
#2

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:12
moin,

was soll das Ziel deines Programms sein, eine Zahl in ein leserliches Format bringen?
Beschreib mal genauer was du eigentlich vor hast...
  Mit Zitat antworten Zitat
Nicolai1234

Registriert seit: 21. Feb 2004
1.008 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:14
so gehts:
Delphi-Quellcode:
if not (length(vK) mod 3 = 0) then
begin
  repeat
   vk := '0' + vK;
  until length(vK) mod 3 = 0;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Sunlight7
Sunlight7

Registriert seit: 17. Sep 2006
Ort: Sonnensystem, Zentral
1.522 Beiträge
 
Delphi 5 Standard
 
#4

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:17
Hallo!

Da Blick ich nicht durch...

Was ist vK für ein Typ?
Entweder was Zahlenmäßiges, dann kannst Du nicht '0' dran hängen oder ein String, dann kannst Du nicht damit rechnen.

Und warum vorne Nullen dran hängen
Ob jetzt 4 : 3 oder 00004 : 3, das macht doch keinen Unterschied...

Oder soll das Ergebnis von Length(vk) durch 3 Teilbar sein?
Meine (altmodische ) Methode:
Ergebnis:=(Frac(Length(vk) / 3)=0);
Windows: Ja - Microsoft: Nein -> www.ReactOS.org
  Mit Zitat antworten Zitat
DerDan

Registriert seit: 15. Nov 2004
Ort: Donaueschingen
251 Beiträge
 
Delphi XE3 Professional
 
#5

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:18
Hallo

Eine Zahl lässt sich durch drei teilen,

wenn sich die Quersumme durch drei teilen läßt!

Durch anhängen von Nullen ändert sich die Quersumme aber nicht!

-> dadurch bekommst du es nie hin, das sie sich durch drei teilen läßt


mfg


DerDan
nichts ist so schön wie man es sich vorstellt
  Mit Zitat antworten Zitat
Benutzerbild von idontwantaname
idontwantaname

Registriert seit: 31. Aug 2004
Ort: Traiskirchen
575 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:24
Ich denke, er möchte die Länge des Strings vK auf eine durch 3 teilbare Zahl bringen
Oliver Hanappi
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#7

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:25
@Sunlight7 & DerDan: Der Titel mag etwas verwirren, aber im Code ist es doch nun wirklich offensichtlich.

Eine schönere Version:
Delphi-Quellcode:
if Length(vK) mod 3 <> 0 then
      vK := StringOfChar('0', 3 - Length(vK) mod 3) + vk;
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Axxus

Registriert seit: 3. Okt 2006
212 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:26
du mienst wohl eher hinten ne 0 dranhängen denn 020 = 20 das spielt keine rplle wieviele nulllen vorne dran sind (oder ich hab deine frage falsch verstanden) dann muss die zahl am ende ne ganze zahloder ne kommazahl???
Und was is wenns ne periodische zahl is doll nur dann ne 0 angehängt werden???

Axxus
  Mit Zitat antworten Zitat
frielix

Registriert seit: 31. Aug 2006
Ort: Dresden
7 Beiträge
 
#9

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 18:27
So, ich hatte mich vielleicht etwas undeutlich ausgedrückt, aber das was Nicolai1605 geschrieben hat, war genau das was ich wissen wollte

Ich möchte eine Zahl in Dreierpärchen aufteilen (warum ist ja jetzt völlig egal ) daher muss die Länge der Augangszahl durch 3 Teilbar sein...

@Sunlight7: Dazu gibt es StrToInt(vK)

Also nochmal danke an alle!
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#10

Re: Feststellen ob Zahl durch 3 Teilbar

  Alt 31. Okt 2006, 23:22
Warum nicht einfach die Format Funktion nutzen:

Delphi-Quellcode:
function Dreier (Zahl : integer) ;
begin
     Dreier := Format ('%.3d',[Zahl]) ;
end ;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:35 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