#!/usr/bin/perl
use strict;

sub print_noten {
	my $modus = $_[0];
	my $noten_ref = $_[1];
	
	my $i = 0;
	my $schriftl = 0;
	my $mundl = 0;
	my $anz_sa = 0 if $modus == 7;
	$anz_sa = 1.0 if $modus == 1;
	$anz_sa = 2.0 if $modus == 0;
	
	foreach(@$noten_ref)
	{
		$i++;
		if(($modus != 7) && ($i==1 || ($i==2 && !$modus )))
			# Schulaufgaben
			{ 
				$schriftl = $schriftl + $_; 
			}
				
		else
			{ $mundl = $mundl + $_; }
	}
	if ($anz_sa) {
		$schriftl = $schriftl / $anz_sa;
		$mundl = $mundl / ($i - $anz_sa);
		my $ges = ($schriftl + $mundl) / 2.0;
		print "Schriftlich: $schriftl   ; Mündlich: $mundl  ; Gesamt: $ges \n";
	}
	else {
		$mundl = $mundl / ($i*1.0);
		print "Gesamt: $mundl \n";
	}
}

my $modus = 0;
my $usage = "usage: noten [-h|Z|7]";
if ($ARGV[0]) {
	if ($ARGV[0] eq "-h") {
		print "$usage\n";
		exit 0;
	}
	elsif ($ARGV[0] == 7) {
		print "7.Klass-Modus\n";
		$modus = 7;
	}
	else {
		die "$usage\n" unless ($ARGV[0] eq "Z");
	
		print "Zwischenzeugnis\n";
		$modus = 1;
	}
} else {
	print "Jahreszeugnis\n";
}

while(<STDIN>)
{
	my $line = $_;
	my @noten = split(/,/, $line);
	
	# prüfe, ob ein Notendurchlauf gemacht werden soll
	if ($noten[$#noten] == 0) {
		for (my $i = 1; $i < 7; $i++) {
			$noten[$#noten] = $i;
			print "Variable Note: $i:\n";
			print_noten($modus, \@noten);
		}
	} else {
		print_noten($modus, \@noten);
	}	
}

