Page d'Accueil

Mathématiques dans C#

 

Vue d'ensemble des nombres

 

Introduction

Si vous le considérez dans le sens le plus pur d'un langage de programmation comme C, C++, Pascal, visual Basic, et Java, etc., C# n'a pas son propre support de mathématiques intégré. Elle doit emprunter cette fonctionnalité à d'autres bibliothèques ou à un autre langage. Heureusement, tout ceci est particulièrement facile.

Pour effectuer les opérations algébriques et géométriques basiques dans C#, vous pouvez utiliser des méthodes classe maths de .NET Framework. Comme vu dans la leçon précédente, vous pouvez également tirer profit de la très puissante bibliothèque des fonctions de Visual Basic. Cette bibliothèque est l'une des plus étendue en fonctions de divers secteur des mathématiques d'affaires.

Nous Connaissons différentes manières de déclarer une variable de type numerique. Voici les exemples :

using System;

class Program
{
    static int Main()
    {
        short   sNumber;
        int     iNumber;
        double  dNumber;
        decimal mNumber;

        return 0;
    }
}

Le signe d'un nombre

Une des règles de base à observer dans C# est que, après la déclaration d'une variable, avant de l'utiliser, il doit avoir été initialisée. Voici les exemples d'initialisation des variables :

using System;

class Program
{
    static int Main()
    {
        short   sNumber = 225;
        int     iNumber = -847779;
        double  dNumber = 9710.275D;
        decimal mNumber = 35292742.884295M;

        Console.WriteLine("Short Integer:      {0}", sNumber);
        Console.WriteLine("Integral Number:    {0}", iNumber);
        Console.WriteLine("Double-Precision:   {0}", dNumber);
        Console.WriteLine("Extended Precision: {0}", mNumber);
	
        return 0;
    }
}

Ceci produirait :

Short Integer:      225
Integral Number:    -847779
Double-Precision:   9710.275
Extended Precision: 35292742.884295
Press any key to continue . . .

En initialisant une variable par l'utilisant d'une constante, vous décidez si elle est négative, nullle ou positive. C'est son signe. Si vous obtenez la valeur d'une variable d'une autre manière, vous ne pouvez pas connaître son signe, bien que vous puissiez utiliser des opérateurs de comparaison pour le découvrir, la classe maths fournit une méthode pour vous assurer sur le signe de la variable.

Pour découvrir le signe d'une valeur ou d'une variable numérique, vous pouvez faire appel à la méthode Math.Sign (). Elle est prise en charge dans diverses versions dont les syntaxes sont :

public static int Sign(sbyte value);
public static int Sign(short value);
public static int Sign(int value);
public static int Sign(long value);
public static int Sign(sbyte value);
public static int Sign(double value);
public static int Sign(decimal value);

En faisant appel à cette méthode, donnez la valeur ou la variable que vous voulez considérer, comme argument. La méthode renvoie :

  • -1 si l'argument est négatif
  • 0 si l'argument est 0
  • 1 si l'argument est positif

Voici les exemples d'appel de la méthode :

using System;

class Program
{
    static int Main()
    {
        short   sNumber = 225;
        int     iNumber = -847779;
        double  dNumber = 9710.275D;
        decimal mNumber = 35292742.884295M;

        Console.WriteLine("Number: {0} => Sign: {1}",
                          sNumber, Math.Sign(sNumber));
        Console.WriteLine("Number: {0} => Sign: {1}",
                          iNumber, Math.Sign(iNumber));
        Console.WriteLine("Number: {0} => Sign: {1}",
                          dNumber, Math.Sign(dNumber));
        Console.WriteLine("Number: {0} => Sign: {1}\n",
                          mNumber, Math.Sign(mNumber));
	
        return 0;
    }
}

Ceci produirait :

Number: 225 => Sign: 1
Number: -847779 => Sign: -1
Number: 9710.275 => Sign: 1
Number: 35292742.884295 => Sign: 1

Press any key to continue . . .

La partie intégrale d'un nombre flottant

Comme passé en revue dans la leçon1, quand vous traitez un nombre flottant, ce nombre présente en une partie entière et une partie décimal dite de précision ; tous les deux sont séparés par un symbole qui, dans l'anglais des USA, est le point ou la virgule en français. Dans quelques opérations, vous pouvez vouloir obtenir la partie entière de la valeur. La classe maths peut vous y aider.

Pour obtenir la partie entière d'un nombre décimal, la classe maths peut vous aider avec la méthode Trancate (), qui est prise en charge dans deux versions dont les syntaxes sont :

public static double Truncate(double d);
public static double Truncate(double d);

En faisant appel à cette méthode, donnez lui une variable de type flottant ou double ou décimal. La méthode renvoie le côté int de la valeur. Voici un exemple de l'appel :

using System;

class Program
{
    static int Main()
    {
        float number = 225.75f;

        Console.WriteLine("The integral part of {0} is {1}\n",
                          number, Math.Truncate(number));
	
        return 0;
    }
}

Ceci produirait :

The integral part of 225.75 is 225

Press any key to continue . . .

Le minimum de deux valeurs

Si vous avez deux nombres, vous pouvez trouver le minimum des deux sans écrire votre propre code. Pour vous aider, la classe maths est équipée d'une méthode appelée Min. Cette méthode est prise en charge dans diverses versions, chaque version adaptée à chaque type de données entier ou flottant. Les syntaxes sont :

public static byte    Min(byte    val1, byte    val2);
public static sbyte   Min(sbyte   val1, sbyte   val2);
public static short   Min(short   val1, short   val2);
public static ushort  Min(ushort  val1, ushort  val2);
public static int     Min(int     val1, int     val2);
public static uint    Min(uint    val1, uint    val2);
public static float   Min(float   val1, float   val2);
public static long    Min(long    val1, long    val2);
public static ulong   Min(ulong   val1, ulong   val2);
public static double  Min(double  val1, double  val2);
public static decimal Min(decimal val1, decimal val2);

Voici un exemple d'appel de la méthode :

using System;

class Program
{
    static int Main()
    {
        int number1 = 8025;
        int number2 = 73;

        Console.WriteLine("The minimum of {0} and {1} is {2}",
            number1, number2, Math.Min(number1, number2));
	
        return 0;
    }
}

Ceci produirait :

The minimum of 8025 and 73 is 73
Press any key to continue . . .

La valeur maximum des nombres entiers d'une série

Par opposition au minimum de deux nombres, vous pouvez être intéressé par le plus grand des deux. Pour vous aider à trouver le maximum de deux nombres, vous pouvez faire appel à la méthode Max() de classe maths. Elle est prise en charge dans diverses versions avec une pour chaque type de données numériques. Les syntaxes de cette méthode sont :

public static byte    Max(byte    val1, byte    val2);
public static sbyte   Max(sbyte   val1, sbyte   val2);
public static short   Max(short   val1, short   val2);
public static ushort  Max(ushort  val1, ushort  val2);
public static int     Max(int     val1, int     val2);
public static uint    Max(uint    val1, uint    val2);
public static float   Max(float   val1, float   val2);
public static long    Max(long    val1, long    val2);
public static ulong   Max(ulong   val1, ulong   val2);
public static double  Max(double  val1, double  val2);
public static decimal Max(decimal val1, decimal val2);

Voici un exemple d'appel de la méthode :

using System;

class Program
{
    static int Main()
    {
        int number1 = 8025;
        int number2 = 73;

        Console.WriteLine("The maximum of {0} and {1} is {2}",
            number1, number2, Math.Max(number1, number2));
	
        return 0;
    }
}

Ceci produirait :

The maximum of 8025 and 73 is 8025
Press any key to continue . . .
  

Page d'Accueil Copyright © 2007-2008, Yevol Suivant