Hallo,
ich wollte einen Mathe Parser programmieren leider klappt es schon bei einfachen aufgaben nicht da ich nicht so der Pro bin ,aber ich dachte das es so ähnlich realisierbar wäre schauts euch mal bitte an:
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
#!/usr/local/bin/perl -w
use strict;
print "Math - by Patrick König\n";
sub calcString {
my @plus = split(/\+/,$_[0]);
my @minus = split(/-/,$_[0]);
my @mult = split(/\*/,$_[0]);
my @geteilt = split(/\//,$_[0]);
my $end = 0;
if($#plus != 0) {
foreach my $i (@plus) {
print "$i + $end = ";
$end = $i + $end;
print "$end\n";
}
}
if($#minus != 0) {
my $n = 0;
foreach my $i (@minus) {
if($i != 0) {
if($#minus != $n) {
print "$i - $minus[$n+1] = ";
$end = $i - $minus[$n+1];
print "$end\n";
$n++;
}
}
}
}
if($#mult != 0) {
my $n = 0;
foreach my $i (@mult) {
if($#mult != $n) {
if($n == 0) {
print "$i * $mult[$n+1] = ";
$end = $i * $mult[$n+1];
print "$end\n";
} else {
print "$end * $mult[$n+1] = ";
$end = $end * $mult[$n+1];
print "$end\n";
}
$n++;
}
}
}
if($#geteilt != 0) {
my $n = 0;
foreach my $i (@geteilt) {
}
}
print $end;
}
my $term = "2*5*2";
print "Calculateing ".$term." =\n\n\n";
calcString($term);
Gruß Patrick