Hallo ,
es kann sein dass dieser frage ist sehr leicht für die Mehrheit hier im forum aber nun als unerfahrene Programmierer suche ich hier nach eure Hilfe!
Ich wollte eine liste erstellen , die liste soll die Klausur noten eines Student enthalten.
Danach wollte ich die durchnittsnote berechnen .
mein Prolem gabs bei der berechnung der Länge der Liste die wiederum gleich der Anzahl der Fächer ist.
Hier ist mein Programm teil :
using System;
using System.Collections.Generic;
using System.Text;
namespace ECTSVerwaltungswebpart
{
class Note
{
public Note length
{
set { length = value; }
get { return length; }
}
public void Durchnittsnote(double durchnittsnote)
{
int length;
double note1 = 1.0;
double note2 = 4.0;
double note3 = 2.7;
double note4 = 5.0;
// List<double> note = new List<double>(){ note1, note2, note3, note4 };
double[] notenlist ={ note1, note2, note3, note4 };
// double durchnittsnote = new double durchnittsnote;
//durchnittsnote = (note1 + note2 + note3 + note4) / lenghth;
}
}
}
hat jemand einen Tipp wie ich weiter machen.
danke im voraus!
versuchs mal mit
durchnittsnote = (note1 + note2 + note3 + note4) / notenlist.Length;
Obstehende Probleme können häufig miserabel Formuliert und dadurch extrem unverständlich sein
Ich frag mich wieso du deiner "Durchnittsnote" funktion die "Durchnittsnote" übergibts.
Ich denke mal dass die Funktion die Note eher zurückgeben sollte, dann würde ich das so machen:
public double Durchnittsnote()
{
// hier die Berechnung
return durchnittsnote;
}
hallo
eine funktion die einen durchschnitt errechnet ist ganz leicht zu schreiben
public double Durchschnitt(params double[] args)
{
if(args.Length == 0) return 0;
double summe = 0;
foreach(double d in args)
{
summe += d;
}
return summe / args.Length;
}
MfG janismac
EDIT: @herbivore -- ja danke hab mich vertan
Hallo zusammen
@jansismac
return summe / (args.Length+1);
Da der Thread nichts mit Web- oder Netzwerktechnologien zu tun hat ==> verschoben
Gruss Peter
--
Microsoft MVP - Visual Developer ASP / ASP.NET, Switzerland 2007 - 2011
Hallo janismac,
wieso args.Length+1? args.Length wäre richtig, auch wenn man ggf. den Fall args.Length == 0 abfangen sollte.
herbivore
HAllo, ich habe die funktion erstellt
nur zum testen.
wie ihr merkt ich habe die Daten schön im Programm oben bereits gegeben, aber mein Problem jetzt liegt daran : wenn ich die "Noten" und die "ECTS " aus einer Liste lesen will und in meine Durchnissnote Funktion verwende ?
danke im voraus
Hallo doudi,
das sind aber alles Grundlagen, die wir voraussetzen. Mal abgesehen davon, dass janismac ja schon eine Lösung gepostet hat, die du verwenden kannst, solltest dir die Parameterübergabe und Verarbeitung von Listen in http://www.galileocomputing.de/openbook/visual_csharp/ oder einem anderen Buch deiner Wahl angucken. Wir sind kein reines Anfängerforum.
herbivore