for counter := 1 to lengthofpassword do
begin
currentletter:=password[counter];
currentascii:=Ord(currentletter);
if (96<currentascii<123) OR (64<currentascii<91) OR (47<currentascii<58) then
Writeln('valid')
else
asciicheck:=false;
end;
私はこのコードが間違っていることを知っていますが、私は何を求めているか説明するためにそれを行いました。 if文の範囲をどのように指定できますか?以前は、多くのif文を使いこなしていましたが、私のコードは私が望むように動作していませんでした。基本的には、ユーザー入力に大文字と小文字のアルファベットと数字以外のものをチェックするプロシージャを作成しています。 Case Of文を使用してこの問題を解決する方法を探していたので、この質問は異なります。Delphiでif文に複数の範囲を指定する方法は?
for counter := 1 to lengthofpassword do
begin
currentletter:=password[counter];
currentascii:=Ord(currentletter);
if (currentascii<48) AND (currentascii>57) then
asciipoints:=asciipoints+1;
if (currentascii<65) AND (currentascii>90) then
asciipoints:=asciipoints+1;
if (currentascii<97) AND (currentascii>122) then
asciipoints:=asciipoints+1;
Writeln(asciipoints);
end;
また、私はこのようにそれを実行しようとしましたが、その後1文が満たされた場合、他はないだろうとの点ベースのシステムは、いずれかの動作しないので、これは動作しません実現。
コースの現在のトピックは何ですか?このタスクをどのように解決する必要がありますか?それ以外の場合は、charのセットを調べることができます。 – nil
そのために、私は、アルファベットのために97..122のようなセットを使用してステートメントのケースを使用して終了しました –