Script Pascal Buchstaben vor Zahl in bestimmter Länge
Hallo zusammen,
ich habe eine Frage zu einen Pascal Script. Ich versuche automatisch bei Zahlen einen oder zwei Buchstaben (A) Vorweg zu stellen.
Beispiel, bei der Eingabe Zahl 1 bis 9 soll automatisch AA1 bis AA9 erzeugt werden. Bei der Eingabe Zahl 10 bis 99 soll nur ein A10 bis A99 erzeugt werden.
Mein versuch:
Von 1 bis 10 wird es gut umgesetzt, leider alles über 10 nicht. Bei der Eingabe der Zahl 57 zum Beispiel ist das Ergebnis AA5AA7.
Gibt es eine andere Möglichkeit einstellige Zahlen mit zwei AA- und zweistellige Zahlen mit nur einen A links aufzufühlen?.
Gruß
ich habe eine Frage zu einen Pascal Script. Ich versuche automatisch bei Zahlen einen oder zwei Buchstaben (A) Vorweg zu stellen.
Beispiel, bei der Eingabe Zahl 1 bis 9 soll automatisch AA1 bis AA9 erzeugt werden. Bei der Eingabe Zahl 10 bis 99 soll nur ein A10 bis A99 erzeugt werden.
Mein versuch:
Var
p :Integer;
Begin
Tag := AnsiReplaceStr(Tag, '1', 'AA1');
Tag := AnsiReplaceStr(Tag, '2', 'AA2');
Tag := AnsiReplaceStr(Tag, '3', 'AA3');
Tag := AnsiReplaceStr(Tag, '4', 'AA4');
Tag := AnsiReplaceStr(Tag, '5', 'AA5');
Tag := AnsiReplaceStr(Tag, '6', 'AA6');
Tag := AnsiReplaceStr(Tag, '7', 'AA7');
Tag := AnsiReplaceStr(Tag, '8', 'AA8');
Tag := AnsiReplaceStr(Tag, '9', 'AA9');
Tag := AnsiReplaceStr(Tag, '10', 'A10');
Tag := AnsiReplaceStr(Tag, '11', 'A11');
Tag := AnsiReplaceStr(Tag, '12', 'A12');
Tag := AnsiReplaceStr(Tag, '13', 'A13');
Tag := AnsiReplaceStr(Tag, '14', 'A14');
Tag := AnsiReplaceStr(Tag, '15', 'A15');
Tag := AnsiReplaceStr(Tag, '16', 'A16');
Tag := AnsiReplaceStr(Tag, '17', 'A17');
Tag := AnsiReplaceStr(Tag, '18', 'A18');
Tag := AnsiReplaceStr(Tag, '19', 'A19');
Tag := AnsiReplaceStr(Tag, '20', 'A20');
Tag := AnsiReplaceStr(Tag, '21', 'A21');
Tag := AnsiReplaceStr(Tag, '22', 'A22');
Tag := AnsiReplaceStr(Tag, '23', 'A23');
Tag := AnsiReplaceStr(Tag, '24', 'A24');
Tag := AnsiReplaceStr(Tag, '25', 'A25');
Tag := AnsiReplaceStr(Tag, '26', 'A26');
Tag := AnsiReplaceStr(Tag, '27', 'A27');
Tag := AnsiReplaceStr(Tag, '28', 'A28');
Tag := AnsiReplaceStr(Tag, '29', 'A29');
Tag := AnsiReplaceStr(Tag, '30', 'A30');
Tag := AnsiReplaceStr(Tag, '31', 'A31');
Tag := AnsiReplaceStr(Tag, '32', 'A32');
Tag := AnsiReplaceStr(Tag, '33', 'A33');
Tag := AnsiReplaceStr(Tag, '34', 'A34');
Tag := AnsiReplaceStr(Tag, '35', 'A35');
Tag := AnsiReplaceStr(Tag, '36', 'A36');
Tag := AnsiReplaceStr(Tag, '37', 'A37');
Tag := AnsiReplaceStr(Tag, '38', 'A38');
Tag := AnsiReplaceStr(Tag, '39', 'A39');
Tag := AnsiReplaceStr(Tag, '40', 'A40');
Tag := AnsiReplaceStr(Tag, '41', 'A41');
Tag := AnsiReplaceStr(Tag, '42', 'A42');
Tag := AnsiReplaceStr(Tag, '43', 'A43');
Tag := AnsiReplaceStr(Tag, '44', 'A44');
Tag := AnsiReplaceStr(Tag, '45', 'A45');
Tag := AnsiReplaceStr(Tag, '46', 'A46');
Tag := AnsiReplaceStr(Tag, '47', 'A47');
Tag := AnsiReplaceStr(Tag, '48', 'A48');
Tag := AnsiReplaceStr(Tag, '49', 'A49');
Tag := AnsiReplaceStr(Tag, '50', 'A50');
Tag := AnsiReplaceStr(Tag, '51', 'A51');
Tag := AnsiReplaceStr(Tag, '52', 'A52');
Tag := AnsiReplaceStr(Tag, '53', 'A53');
Tag := AnsiReplaceStr(Tag, '54', 'A54');
Tag := AnsiReplaceStr(Tag, '55', 'A55');
Tag := AnsiReplaceStr(Tag, '56', 'A56');
Tag := AnsiReplaceStr(Tag, '57', 'A57');
Tag := AnsiReplaceStr(Tag, '58', 'A58');
Tag := AnsiReplaceStr(Tag, '59', 'A59');
Tag := AnsiReplaceStr(Tag, '60', 'A60');
Tag := AnsiReplaceStr(Tag, '61', 'A61');
Tag := AnsiReplaceStr(Tag, '62', 'A62');
Tag := AnsiReplaceStr(Tag, '63', 'A63');
Tag := AnsiReplaceStr(Tag, '64', 'A64');
Tag := AnsiReplaceStr(Tag, '65', 'A65');
Tag := AnsiReplaceStr(Tag, '66', 'A66');
Tag := AnsiReplaceStr(Tag, '67', 'A67');
Tag := AnsiReplaceStr(Tag, '68', 'A68');
Tag := AnsiReplaceStr(Tag, '69', 'A69');
Tag := AnsiReplaceStr(Tag, '70', 'A70');
Tag := AnsiReplaceStr(Tag, '71', 'A71');
Tag := AnsiReplaceStr(Tag, '72', 'A72');
Tag := AnsiReplaceStr(Tag, '73', 'A73');
Tag := AnsiReplaceStr(Tag, '74', 'A74');
Tag := AnsiReplaceStr(Tag, '75', 'A75');
Tag := AnsiReplaceStr(Tag, '76', 'A76');
Tag := AnsiReplaceStr(Tag, '77', 'A77');
Tag := AnsiReplaceStr(Tag, '78', 'A78');
Tag := AnsiReplaceStr(Tag, '79', 'A79');
Tag := AnsiReplaceStr(Tag, '80', 'A80');
Tag := AnsiReplaceStr(Tag, '81', 'A81');
Tag := AnsiReplaceStr(Tag, '82', 'A82');
Tag := AnsiReplaceStr(Tag, '83', 'A83');
Tag := AnsiReplaceStr(Tag, '84', 'A84');
Tag := AnsiReplaceStr(Tag, '85', 'A85');
Tag := AnsiReplaceStr(Tag, '86', 'A86');
Tag := AnsiReplaceStr(Tag, '87', 'A87');
Tag := AnsiReplaceStr(Tag, '88', 'A88');
Tag := AnsiReplaceStr(Tag, '89', 'A89');
Tag := AnsiReplaceStr(Tag, '90', 'A90');
Tag := AnsiReplaceStr(Tag, '91', 'A91');
Tag := AnsiReplaceStr(Tag, '92', 'A92');
Tag := AnsiReplaceStr(Tag, '93', 'A93');
Tag := AnsiReplaceStr(Tag, '94', 'A94');
Tag := AnsiReplaceStr(Tag, '95', 'A95');
Tag := AnsiReplaceStr(Tag, '96', 'A96');
Tag := AnsiReplaceStr(Tag, '97', 'A97');
Tag := AnsiReplaceStr(Tag, '98', 'A98');
Tag := AnsiReplaceStr(Tag, '99', 'A99');
End.
Von 1 bis 10 wird es gut umgesetzt, leider alles über 10 nicht. Bei der Eingabe der Zahl 57 zum Beispiel ist das Ergebnis AA5AA7.
Gibt es eine andere Möglichkeit einstellige Zahlen mit zwei AA- und zweistellige Zahlen mit nur einen A links aufzufühlen?.
Gruß
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 369696
Url: https://administrator.de/contentid/369696
Ausgedruckt am: 22.11.2024 um 05:11 Uhr
7 Kommentare
Neuester Kommentar
AddChar ist dein Freund und Helfer.
Description
AddChar adds characters (C) to the left of S till the length N is reached, and returns the resulting string. If the length of S is already equal to or larger than N, then no characters are added. The resulting string can be thought of as a right-aligned version of S, with length N.
Kannst du nicht lesen?? Meine Güte, verständlicher wie in der Doku geht's nun wirklich nicht!
Ich dachte wenn man schon mit Pascal hier ankommt das man zumindest die Basics drauf hat. Ich hab Pascal heute gerade schnell mal angeschaut und bin in 5 Minuten fertig gewesen:
Das Beispiel gibt dir für zwei Beispiel Zahlen das hier aus
So wie du dir das vorstellst, eben immer auf 3 Stellen am Anfang um A Zeichen aufgefüllt.
Und, war das jetzt wirklich so schwer? Nein, gelle
Die Abfrage des Wertes mit readln(str) bekommst du jetzt hoffentlich selbst hin...
Leider bekommen ich diese Fehlermeldung:
Unknown identifier 'AddChar'
Compiling failed!
Kein Wunder, wenn du das uses strutils nicht setzt.Unknown identifier 'AddChar'
Compiling failed!
Ich dachte wenn man schon mit Pascal hier ankommt das man zumindest die Basics drauf hat. Ich hab Pascal heute gerade schnell mal angeschaut und bin in 5 Minuten fertig gewesen:
uses strutils;
var str : string;
begin
str := '5';
writeln(AddChar('A',str,3));
str := '16';
writeln(AddChar('A',str,3));
end.
AA5
A16
Und, war das jetzt wirklich so schwer? Nein, gelle
Die Abfrage des Wertes mit readln(str) bekommst du jetzt hoffentlich selbst hin...
Sicher gibet dat
Online selbst testen (Echt praktisch wenn man mal unterwegs ist)
(Schnuffi der gestern das erste mal in seinem Leben Pascal geschrieben hat).
Wenn's das dann war, noch ein gelöst dran gepappt und fertig...
uses strutils,sysutils;
var low : integer;
var high : integer;
var i : integer;
begin
writeln('Enter low value:');
readln(low);
writeln('Enter high value:');
readln(high);
for i := low to high do writeln(AddChar('A',IntToStr(i),3));
end.
(Schnuffi der gestern das erste mal in seinem Leben Pascal geschrieben hat).
Wenn's das dann war, noch ein gelöst dran gepappt und fertig...