Statisk addition

Uppgift

Komplettera det ofullständiga projektet ”StaticAdding” med den statiska klassen MyMath så att metoden Main kan kompileras och exekveras utan problem.

Klassen MyMath ska ha två statiska metoder, som båda ska heta Add men ha olika parameterlistor och därmed olika signaturer. Den ena metoden ska returnera summan av två heltal av typen int, och den andra metoden ska returnera summan av två flyttal av typen double.

Metoden Main i klassen Program får du inte ändra på något sätt. Koden ska oförändrad kunna använda de statiska metoderna i klassen MyMath som du ska implementera (skriva).

Program.cs

using System;

namespace StaticAdding
{
    /// <summary>
    /// Represents the main place where the program starts the execution.
    /// </summary>
    class Program
    {
        /// <summary>
        /// The starting point of the application.
        /// </summary>
        static void Main(string[] args)
        {
            // Which static method is called?
            int sum = MyMath.Add(123, 456);
            Console.WriteLine($"Summan är: {sum}\n");

            // Which static method is called?
            double anotherSum = MyMath.Add(9.87, 6.54);
            Console.WriteLine($"Summan är: {anotherSum}\n");

            // Which static method is called?
            Console.WriteLine("Summan är: {0}\n", MyMath.Add(123, 6.54));
        }
    }
}

Fundera lite över vilken av de två statiska metoderna som kommer att anropas av de olika satserna. Vad är det som bestämmer det? Jo, typen som argumenten är av. Nog med ledtrådar…

Mål

Efter att ha gjort övningsuppgiften ska du känna till:

  • Allmänt om metoder i kurslitteraturen, kapitel 4, främst under rubrikerna ”Calling a Method” och ”Declaring a Method”.

  • Överlagring av metoder i kurslitteraturen, kapitel 4, under rubriken ”Method Overloading”.

  • Statiska metoder behandlas i kurslitteraturen, kapitel 5, under underrubriken ”Static Methods”. Online-hjälpen ”Static Classes and Static Class Members (C# Programming Guide)”, http://msdn.microsoft.com/en-us/library/79b3xss3.aspx får komplettera.

Tips

Läs om:

  • variabler i kurslitteraturen, kapitel 1, under rubriken ”Working with Variables”.

  • olika typer av data i kurslitteraturen, kapitel 2, under rubriken ”Fundamental Numeric Types”.

  • enkla aritmetiska operatorer i kurslitteraturen, kapitel 3, under rubriken ”Operators”.

Genom att läsa online-dokumentationen kan du lista ut hur du ska skriva för att ett flyttal ska presenteras med en decimals onoggrannhet. Men det kan vara lite snårigt att hitta så här har du ett hett tips för att skriva en variabel av typen double med namnet myFloatingPointNumber: Console.WriteLine($"{myFloatingPointNumber:f1}");.

Last updated