Autor Beitrag
interessierter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 75



BeitragVerfasst: So 22.04.12 20:47 
Hallo Zusammen

Ich habe mir eine Aufgabe gestellt und habe nun eine Frage dazu.

Meine Aufgabe:

Disziplin:
10km Lauf

Punkteverteilung:
Zwischen 10 - 20 Minuten für 10km gibts 10 Punkte
Zwischen 20 und 25 Minuten gibt 5 Punkte
mehr als 25 Minuten gibt 0 Punkte

Mein jetziger Code fragt zuerst wiviel Teilnehmer dabei waren. Anschliessend fragt es immer nach dem Namen des Teilnehmers und der benötigten Zeit für die 10km und gibt die Punktzahl richtig aus, bis zur Anzahl der Teilnehmer.

Am Schluss will ich mittels Console.WriteLine alle Namen der Teilnehmer und deren benötigte Zeit ausgeben. Ich weiss aber nicht wie ich die verschiedenen Namen und Zeiten so abspeichern kann damit ich schlussendlich meine gewünschte Ausgabe machen kann. Ich hoffe jemand kann mir einen Denkanstoss geben.

Hier der Code:

ausblenden C#-Quelltext
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:
Console.WriteLine("Wieviele Athleten haben teilgenommen?")
string Anzahl = Console.ReadLine();
int a = int.Parse(Anzahl);
int p = 0;

for (int x =1; x <= a; x++)
{
  Console.WriteLine("Name des " + x + ". Atlethen eingeben");
  string Name = Console.ReadLine();
  Console.WriteLine("Gesamtzeit für 10km eingeben");
  string Gesamtzeit = Console.ReadLine();

  if (g < 20)
  {
    p = p + 10;
  }
  if (g > 20 && g < 25)
  {
    p = p + 5;
  }
  if (g > 25)
  {
    p = p + 0;
  }
  Console.WriteLine(Name + " hat " + p + " Punkte erzielt");
  p = p - p;
}


Greets
interessierter

Moderiert von user profile iconTh69: Codeformatierung überarbeitet.
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4799
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 23.04.12 09:37 
Hallo,

erstelle dir eine Klasse für deine Daten (Name, Punkte etc.) und packe diese dann in eine List<T>.

P.S. Und bitte gewöhne dir sofort an, sprechende Variablennamen zu verwenden (wir sind nicht mehr bei "obfuscated C", wo a, p, g, ... "schöne" Variablennamen sind ;-)
PantherX
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 43
Erhaltene Danke: 7

Win XP, Win 7
Delphi 7, VS2010 C#
BeitragVerfasst: Mo 23.04.12 09:37 
Hallo,

schau dir mal das Thema "Arrays" an. Das sind Variablen die mehrere Werte unter Angabe einer IndexID speichern können.

test[1] = Wert 1
test[2] = Wert 2
test[3] = Wert 3
test[n] = Wert n

Damit könntest du jeden Läufer in ein Array-Feld packen und mittels deiner For-Schleife das Array durchlaufen, anstatt die Anzahl der Läufer.

Besten Gruß


/Edit
Ups da war jemand schneller :)

_________________
Grafische Oberflächen sind wie U-Boote. Kaum macht man ein Fenster auf, fangen die Probleme an!
interessierter Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 75



BeitragVerfasst: Mo 23.04.12 20:10 
Reicht ein eindimensionales Array oder brauche ich ein mehrdimensionales, weil es ja zwei Werte sin, Namen und Laufzeit für 10km)?
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mo 23.04.12 20:53 
Zitat:
Reicht ein eindimensionales Array oder brauche ich ein mehrdimensionales, weil es ja zwei Werte sin, Namen und Laufzeit für 10km)?


Weder noch. user profile iconTh69 hat dir den richtigen Ansatz schon genannt.
interessierter Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 75



BeitragVerfasst: Mo 23.04.12 21:03 
Ich arbeite aber zur Zeit nur mit Konsolenprogrammen. Meines wissens nach hat man klassen nur im Visual c#???
interessierter Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 75



BeitragVerfasst: Mo 23.04.12 22:51 
Ich lass das jetzt erstmal sein. Bin noch nicht weit genug mit den Grundlagen.

Danke trotzdem

Gruss
interessierter
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Mo 23.04.12 23:38 
Der Vollständigkeit halber: Visual C# ist die IDE, nämlich der C#-Teil von Visual Studio, und hat noch nichts mit GUI zu tun. Und Klassen wirst du schon in deinem allerersten Projekt benutzt haben ;) .

_________________
>λ=