Check ob Zahl

TheBeginner
Schreiberling
Avatar
Gender: n/a
Location: Wunsiedel Bayern
Age: 67
Posts: 755
Registered: 06 / 2013
Subject:

Check ob Zahl

 · 
Posted: 02.07.2023 - 17:06  ·  #1
Hallo zusammen, gibt es in AVRco eine Funktion,
Check ob es auch eine Zahlenwert ist ist.


Gruß Frank
Harry
Moderator
Avatar
Gender:
Location: zwischen Augsburg und Ulm
Age: 59
Posts: 2089
Registered: 03 / 2003
Subject:

Re: Check ob Zahl

 · 
Posted: 03.07.2023 - 07:32  ·  #2
Hi Frank,

wenn es ein Text ist, kannst du eine Umwandlung zur Zahl versuchen. Blöderweise wird deine Zielvariable aber sowohl bei String='0' den Wert 0 annehmen, als auch bei einer nicht möglichen Umwandlung.

Gruß
Harry
pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1340
Registered: 02 / 2009
Subject:

Re: Check ob Zahl

 · 
Posted: 03.07.2023 - 15:07  ·  #3
Hallo Frank,

einfach eine kleine Funktion schreiben in der Du die einzelnen Chars auf ASCII 30-39 prüfst,

30 = 0
31 = 1
..
39 = 9

Alles andere ist eben keine Zahl, es gibt viele Möglichkeiten.

Hier ist ein mögliche Idee, ist aber ungetestet ich habe es gerade zusammen geschrieben:

Code
function TestAufZahl (InString : string[10]) : boolean;
var
 x : byte;
 retBool : boolean;
 
begin
 for x := 1 to length(InString) do
 
     case Byte(InString[x]) of
          30..39 : retBool := true;  // Zahl 0 bis 9
                 |
      else
       retBool := false; // keine Zahl
     endcase;

    if not retBool then break; endif;// FOR Schleife beenden

 endfor;

return(retBool);

end TestAufZahl;


Der Aufruf sieht dann in etwa so aus:

Code
....
TestString:= '12345678';

if TestAufZahl( TestString) then 
....


Thorsten
TheBeginner
Schreiberling
Avatar
Gender: n/a
Location: Wunsiedel Bayern
Age: 67
Posts: 755
Registered: 06 / 2013
Subject:

Re: Check ob Zahl

 · 
Posted: 03.07.2023 - 17:50  ·  #4
Super Danke :-)

Gruß Frank
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   80   94 · Page-Gen-Time: 0.020895s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI