Tipps und Tricks: Töne ausgeben

Über die statische Funktion Beep() der Console-Klasse können wir Töne ausgeben. Hierzu übergeben wir der Funktion zwei Parameter. Der erste Parameter stellt die Frequenz in Hertz dar. Der zweite Parameter gibt die Länge des Tons in Millisekunden an. Mit Hilfe dieser Funktion und einer Frequenztabelle für die verschiedenen Tonhöhen in der Musik können wir nun verschiedene Lieder abspielen. Das Beispiel zeigt wie wir das Lied „Alle meine Entchen“ mit Hilfe der Beep()-Funktion spielen können. Bitte bedenken Sie, dass die Beep()-Funktion synchron arbeitet und somit den Programmablauf für die angegebene Dauer in Millisekunden blockiert.

Program.cs

using System;

namespace CSV20.Ton_Ausgabe
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Al");
            Console.Beep(262,  500);    // C    Al-
            Console.Write("le ");
            Console.Beep(294,  500);    // D    le
            Console.Write("mei");
            Console.Beep(330,  500);    // E    mei-
            Console.Write("ne ");
            Console.Beep(349,  500);    // F    ne
            Console.Write("Ent"); 
            Console.Beep(392, 1000);    // G    Ent-
            Console.Write("chen ");
            Console.Beep(392, 1000);    // G    chen
            Console.Write("schwim");
            Console.Beep(440,  500);    // A    schwim-
            Console.Write("men ");
            Console.Beep(440,  500);    // A    men
            Console.Write("auf ");
            Console.Beep(440,  500);    // A    auf
            Console.Write("dem ");
            Console.Beep(440,  500);    // A    dem
            Console.Write("See, ");
            Console.Beep(392, 1500);    // G    See,
            Console.Write("schwim");
            Console.Beep(440,  500);    // A    schwim-
            Console.Write("men ");
            Console.Beep(440,  500);    // A    men
            Console.Write("auf ");
            Console.Beep(440,  500);    // A    auf
            Console.Write("dem ");
            Console.Beep(440,  500);    // A    dem
            Console.WriteLine("See,");
            Console.Beep(392, 1500);    // G    See,
            
            Console.Write("Köpf");
            Console.Beep(349,  500);    // F    Köpf-
            Console.Write("chen ");
            Console.Beep(349,  500);    // F    chen
            Console.Write("in ");
            Console.Beep(349,  500);    // F    in
            Console.Write("das ");
            Console.Beep(349,  500);    // F    das
            Console.Write("Was");
            Console.Beep(330, 1000);    // E    Was-
            Console.Write("ser ");
            Console.Beep(330, 1000);    // E    ser,
            Console.Write("Schwänz");
            Console.Beep(392,  500);    // G    Schwänz-
            Console.Write("chen ");
            Console.Beep(392,  500);    // G    chen
            Console.Write("in ");
            Console.Beep(392,  500);    // G    in
            Console.Write("die ");
            Console.Beep(392,  500);    // G    der
            Console.WriteLine("Höh'");
            Console.Beep(262, 1500);    // C    Höh'

            Console.ReadKey();
        }
    }
}
Download

LinksRechts