Thread eine Frage zu objektorientertem Perl (149 answers)
Opened by ASDS at 2007-04-10 15:14

ASDS
 2007-04-16 10:50
#75851 #75851
User since
2007-01-29
115 Artikel
BenutzerIn
[default_avatar]
Gute Morgen ihr LIeben,

na hattet ihr ein schönes WE, meines war grauenhaft.
Zur Ablenkung heute morgen, hab ich mein .pm verändert. Habt ihr verbesserungsvorschläge, über de ich mich freuen kann?

Code: (dl )
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#!c:/perl

#package binärerbaum;
use strict;
use warnings;



sub knot { return ( { 'zahl' => shift,
'linksweg' => undef,
'rechtsweg' => undef } );
}

sub newtree {
######################
# Erstellen des Trees

my $ref_liste1 = shift;
my $zahl = undef;

my $ref_wurzel = undef;

for my $zzahl (@$ref_liste1){
my $refvalue = $ref_wurzel;

if ($zahl)
{ while (1) {
############################
#Beginn des Vergleichs

if($zzahl < $$refvalue{'zahl'}) {
if(defined($$refvalue{'linksweg'}))
{
$refvalue = $$refvalue{'linksweg'};
}
else {
$$refvalue{'linksweg'} = knot($zzahl);
$zahl = $ref_wurzel
last; #Ende
}
}
#######
#wenns Links nicht mehr weiter geht, geh rechts weiter

else { if ($zzahl > $$$refvlue {'zahl'}) {

if(defined($$refvalue{'rechtsweg'}))
{$refvalue = $$refvalue{'rechtsweg'};

}
else {
$$refvalue{'rechtsweg'} = knot($zzahl);
last;
}
}
}
}


return($ref_wurzel);
}



########
#Hauptprogramm
########

###################
#Ausgabe des Trees
####

sub ausgabe {
my $self = shift;
my $refvalue = shift;

if(defined($self->{'ref_wurzel'}->{'linksweg'})) {
ausgabe($$refvalue{'linksweg'})
}

print "$self->{'ref_wurzel'}->{'zahl'}\n";

if(defined($self->{'ref_wurzel'}->{'rechtsweg'})) {
ausgabe($$refvalue{'rechtsweg'})
}
}
ausgabe($ref_wurzel);


sub new {
my $class = shift;
my $self = {};
bless( $self, $class );

my @liste = @_;
$self->{'ref_wurzel'} = newtree (\@liste);
return $self;
}
###############
#Hinzufügen weiterer Äste
###############
sub hinzufuegen {
my $self = shift;
my @newList = @_;
if (defined($self->{ref_wurzel})){
my $list = $self->{Liste2};
foreach my $neueZahl (@newList)
{ push(@$list, $neueZahl); };
$self->{ref_wurzel} = newtree ($list);

}
}

}

1;

ob es läuft weiß ich noch nicht habs noch nicht ausprobiert, mach ich aber gleich, wenn ich mein .pl fertig geschrieben hab

View full thread eine Frage zu objektorientertem Perl