Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Wie kann ich die letzte Ziffer eines Integerwerts isolieren?


delphistart - So 03.12.06 16:18
Titel: Wie kann ich die letzte Ziffer eines Integerwerts isolieren?
Hallo,

schonmal vorab Danke für eure Antworten...
Hier mein Problem:
Ich habe einen Integerwert, von dem ich nicht weis wie viele stellen er hat. Ich möchte nun die letzte Ziffer des INtegerwerts herausfinden.
Wenn der Wert also 4638 wäre, müsste der Wert 8 in eine Variable geschrieben werden. Wäre der Wert 34, dann müsste die 4 in die Variable.

Gruß Jonas


Gausi - So 03.12.06 16:26

Schau dir mal MOD an, und was bei der Rechnung 12345 MOD 10 rauskommt ;-)


Allesquarks - So 03.12.06 16:31

Eigentlich ist das Wortklauberei, aber offenbar weißt du nicht wirklich was ein integer ist. Der ist nämlich eine Binäre Zahl und dessen letzte Ziffer würde man wahrscheinlich über myint and 1 rausfinden. Was du meinst ist wahrscheinlich die letzte Zifer in der Dezimaldarstellung. entweder konvertieren inttostr und dann auslesen nicht gut! oder myint mod 10


delphistart - So 03.12.06 16:34
Titel: DANKE!!!
Vielen Dank,

Das ging ja richtig schnell!
Jetzt klappt alles!
:D :zustimm:

Gruß Jonas


delphistart - Mo 04.12.06 15:17
Titel: Noch ein (kleines) Problem
Ich habe eine Unit (Unit 1) Auf dem Form-Feld befinden sich mehrere Buttons, die andere Units mit eingabeformularen aufrufen.

Folgendes Problem tritt auf:
Wenn ich ein Formular über den Button in U1 aufrufe, wieder schließe und dann erneut öffne, tritt beim 2. Schließen Folgender Fehler auf:
Im Projekt Projekt1.exe ist eine Exception der Klasse EInOutError mit der Meldung 'E/A-Fehler 103' aufgetreten.

Hier mal der Quelcode von der Unit mit den LInkbuttons:

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:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TWillkommen = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    procedure Button6Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Willkommen: TWillkommen;

implementation

uses Unit1,Unit3,Unit4,Unit5;

{$R *.dfm}

procedure TWillkommen.Button1Click(Sender: TObject);
begin
  neuer_artikel.show;
end;

procedure TWillkommen.Button5Click(Sender: TObject);
begin
  modulliste.show;
end;

procedure TWillkommen.Button3Click(Sender: TObject);
begin
  haendlerliste.show;
end;

procedure TWillkommen.Button6Click(Sender: TObject);
begin
  eanziffern.show;
end;

end.


crowley - Mo 04.12.06 15:22

Servus,

generell solltest du bei einer neuen Frage auch einen neuen Thread eröffnen.

Wahrscheinlich liegt es hier daran, dass du das Formular beim ersten schließen freigibst und anschließend beim zweiten Aufruf nicht mehr erzeugst (bzw. auf das nicht mehr existente Formular zugreifen willst).

C.


jasocul - Mo 04.12.06 15:24

Hallo,

bitte erstelle für jede deiner Fragen ein separates Topic, da die Diskussion mehrerer Fragen in einem Topic für gewöhnlich für Verwirrung und Durcheinander sorgt. Daher:

*geschlossen*


Viele Grüße,
Peter