Claudia Meier: Variable erzeugen

Hallo ich habe hier einen Zähler, bei diesem möchte ich die Funktion der Anzeige der Nullen und den Zählerstand zu einer Variable zusammenfassen und nicht durch den print Befehl ausgeben. Bin eine blutige Anfängerin und bekomme das nicht auf die Reihe.
Claudia

sub akt_counter {

open (COUNT , "+< $data2_dir/counter.txt") die "Kann die Datei nicht öffnen." ;

flock(COUNT,2) if $lock==1 ;
$counter=<COUNT>;
seek(COUNT,0,0);
$counter++ ;
print COUNT $counter ;
close (COUNT) ;

$count = length($counter) ;

for($x=0 ; $x<=$anznull-$count ; $x++) {

print "0" ;  

}

print "$counter";

}

  1. Hallo Claudia

    Hallo ich habe hier einen Zähler, bei diesem möchte ich die Funktion der Anzeige der Nullen und den Zählerstand zu einer Variable zusammenfassen und nicht durch den print Befehl ausgeben.

    Statt:
    for($x=0 ; $x<=$anznull-$count ; $x++) {
      print "0" ;
    }

    Mal so:
    $Anzeige = "";
    for($x=0 ; $x<=$anznull-$count ; $x++) {
      $Anzeige = $Anzeige."0";
    }
    $Anzeige = $Anzeige.$count;

    Bei alledem frage ich mich allerdings, wo die Variable $anznull initialisiert wird, und mit welchem Wert?

    viele Gruesse
      Stefan Muenz

    1. Hi,

      Mal so:
      $Anzeige = "";
      for($x=0 ; $x<=$anznull-$count ; $x++) {
        $Anzeige = $Anzeige."0";
      }
      $Anzeige = $Anzeige.$count;

      *hüstel* Achtung, der Optimierer[tm] kommt :-)

      $Anzeige .= "0"; # und
      $Anzeige .= $count; # weil besser isses

      Aber warum nicht einfach:

      print ("0" x ($anznull-length($counter))) . $counter;

      direkt nach dem Auslesen und Erhöhen des Counters ;-)

      Cheatah