Hvor f****** lærer man at programmére uden metoder?
Anyway, hvis i må bruge classes/structs, så kunne du jo lave nogle classes og bruge nogle lister til at holde styr på albums og sange.
Jeg har skrevet et lille eksempel, der tilføjer 2 albums, og 2 sange til hvert album.
Det er ikke et helt program, jeg viser blot hvordan du laver albums, tilføjer sange og printer det hele ud til brugeren.
using System;
using System.Collections.Generic;
using System.Text;
namespace MusicDatabase
{
class Album
{
public string Title; //Albummets titel
public string Artist; //Albummets artist
public List<Song> Songs; //En liste med albummets sange
//Er ikke en metode. Det er en constructor
public Album(string title, string artist)
{
this.Title = title;
this.Artist = artist;
Songs = new List<Song>();
}
}
class Song
{
public string Title; //Sangens titel
public TimeSpan Playtime; //Sangens spilletid
public float Rating; //Sangens rating
//Er ikke en metode. Det er en constructor
public Song(string title, TimeSpan playtime, float rating)
{
this.Title = title;
this.Playtime = playtime;
this.Rating = rating;
}
}
class Program
{
static void Main(string[] args)
{
//Opret en liste til at indeholde alle albums.
List<Album> Albums = new List<Album>();
//Opret to albums
Album Album1 = new Album("Julefrokost", "Johnny Reimar");
Album Album2 = new Album("Mickey Mouse på Badeferie", "Sigurd Barret");
//Læg de to albums i vores liste over albums
Albums.Add(Album1);
Albums.Add(Album2);
//Opret to sange og læg dem i Album1
Song NewSong1 = new Song("Smoelfesangen", new TimeSpan(0, 2, 34), 7.5f);
Song NewSong2 = new Song("Tju bang chokolademand", new TimeSpan(0, 3, 12), 3.1f);
Album1.Songs.Add(NewSong1);
Album1.Songs.Add(NewSong2);
//Opret to sange og læg dem i Album2
Song NewSong3 = new Song("Supermand på farten", new TimeSpan(0, 1, 22), 7.5f);
Song NewSong4 = new Song("PI-Sangen", new TimeSpan(0, 60, 0), 10.0f);
Album2.Songs.Add(NewSong3);
Album2.Songs.Add(NewSong4);
//Gennemgå alle albums, og udskriv deres sange
foreach (Album CurrentAlbum in Albums)
{
//Print info om albummet
Console.WriteLine("Album: " + CurrentAlbum.Title);
Console.WriteLine("Artist: " + CurrentAlbum.Artist);
Console.WriteLine("\r\nDette album indeholder følgende sange:");
//Gennemgå alle sange i albummet og print deres titel, spilletid og rating
foreach(Song CurrentSong in CurrentAlbum.Songs)
{
Console.WriteLine(CurrentSong.Title + ", " + CurrentSong.Playtime.ToString() + ", " + CurrentSong.Rating);
}
//Del albummene op med en linje
Console.Write("\r\n===============================\r\n");
}
//Vent på at brugeren trykker ENTER
Console.ReadLine();
}
}
}
btw, er måske bare mig, men i
min verden er dansk i et programmeringssprog et tabu. Altså, variabelnavne, etc.
Programmet må selvfølgelig gerne være dansk xD
Men hver sin smag xD
PS: Hvis han beklager sig over at class'ene har constructors så giv ham en blodtud fra mig.
Indlæg senest redigeret d. 12.11.2009 19:24 af Bruger #1927