C# - Sortering och utskrift av säljaruppgifter
Hejsan Sweclockare!
Jag har en skoluppgift som jag har fastnat på och därför vänder jag mig till forumet där det förhoppningsvis finns någon som kan hjälpa mig.
Skoluppgiften i fråga går ut på att läsa in uppgifter från åtta säljare i en säljkår. Säljaruppgifterna ska sorteras beroende på vilken säljnivå som varje säljare uppnått, förslagsvis med den högsta nivån först. Det finns fyra nivåer som synes i koden nedan där nivå fyra är högst.
Säljaruppgifterna ska i slutet av programmet skriva ut de sorterade säljaruppgifterna till både skärmen och till en textfil.
Följande uppgifter ska läsas in för varje säljare:
- Namn.
- Personnummer.
- Distrikt.
- Antal sålda artiklar.
Mitt problem är att jag inte alls vet hur jag ska lyckas sortera uppgifterna från säljarna beroende på vilken nivå dem tillhör och jag vet inte heller hur jag ska skriva ut de sorterade uppgifterna till en textfil.
Hoppas någon vänlig person kan hjälpa till med detta!
Jag är även tacksam på hur jag kan förbättra koden!
Koden nedan innehåller endast det som behövs för att samla in informationen om en säljare.
using System;
using System.Collections.Generic;
using System.Text;
namespace Säljarprogrammet
{
struct Saljare
{
public string namn;
public string personnummer;
public string distrikt;
public int antalartiklar;
public int niva;
}
class Program
{
static void Main(string[] args)
{
Saljare[] saljare = new Saljare[8];
// Anger namnet på Säljare 1 av 8.
System.Console.WriteLine("Ange namn för Säljare 1:");
saljare[0].namn = System.Console.ReadLine();
// Anger personnumret på Säljare 1 av 8.
System.Console.WriteLine("Ange personnummer för Säljare 1:");
saljare[0].personnummer = System.Console.ReadLine();
// Anger distriktet för Säljare 1 av 8.
System.Console.WriteLine("Ange distrikt för Säljare 1:");
saljare[0].distrikt = System.Console.ReadLine();
// Anger antal sålda artiklar för Säljare 1 av 8.
System.Console.WriteLine("Ange antal sålda artiklar för Säljare 1:");
saljare[0].antalartiklar = int.Parse(Console.ReadLine());
// Anger vilken nivå som säljaren uppnått.
if( saljare[0].antalartiklar < 50)
saljare[0].niva = 1;
if (saljare[0].antalartiklar >= 50 && saljare[0].antalartiklar < 100)
saljare[0].niva = 2;
if (saljare[0].antalartiklar >= 100 && saljare[0].antalartiklar < 200)
saljare[0].niva = 3;
if (saljare[0].antalartiklar >= 200)
saljare[0].niva = 4;
}
}
}