.hovertable {
font-family: verdana,arial,sans-serif;
font-size:11px;
margin: -2px;
width: 100%;
overflow: hidden;
background: #FFF;
color: #024457;
border:2px solid #167F92;
border-radius: 10px;
border-collapse: separate;
}
.hovertable th {
background-color:#c3dde0;
border-width: 1px;
color:#024457;
padding: 8px;
border-: solid;
border-color: #a9c6c9;
}
.hovertable tr {
border: 1px solid #D9E4E6;
&:nth-child(odd) { // highlight the odd rows with a color
background-color: #EAF3F3;
}
.hovertable td {
border-width: 1px;
padding: 8px;
border-: solid;
border-color: #a9c6c9;
}
summary {
cursor: pointer;
font-size: 16px;
font-weight: bold;
text-decoration-line: overline underline line-through;
}
.coin {
background-color:#E4EFFF;
border:1px solid #9FC6FF;
padding:5px;
/*arrondir les coins en haut à gauche et en bas à droite*/
-moz-border-radius:10px;
-webkit-border-radius:10px;
border-radius:10px;
font-family: ‘Trebuchet MS’, Verdana, sans-serif;
}
C#: Les méthodes
| (adsbygoogle = window.adsbygoogle || []).push({}); C#: Les méthodesPrésentationsDéfinitions
Autres définitions
SyntaxeSyntaxe d’une méthode en c#
(Liste des paramètres)
{
// corps de la méthode
}
Accès Spécificateur
Type de retour
Nom de la méthode
Liste des paramètres
L’exemple suivant montre comment créer une méthode appelée ExampleMethod dans la classe ExampleClass :
using System;
class ExampleClass
{
static void ExampleMethod( )
{
Console.WriteLine("Méthode ExampleMethod");
}
static void Main( )
{
Console.WriteLine("Méthode Main");
}
}
Paramètres de méthode
Exemples de programmation de paramètre out C #
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace methode_out_parametre
{
class Program
{
//Accepter deux paramètres d'entrée et renvoie deux sur la valeur
public static void rect(int longueur, int largeur, out int surface, out int perimetre)
{
surface = longueur * largeur;
perimetre = 2 * (longueur + largeur);
}
static void Main(string[] args)
{
int surface, perimetre;
// passing two parameter and getting two returning value
Program.rect(5, 4, out surface, out perimetre);
Console.WriteLine("La surface de Rectangle est {0}\t", surface);
Console.WriteLine("Le Perimètre de Rectangle est {0}\t", perimetre);
Console.ReadLine();
}
}
}
Exercice d’application
Exercice_apcpedagogie015
Solution
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace application_calcul_methode_ref
{
class manipulateur_nombre
{
public void echange(ref int x, ref int y)
{
int temp;
temp = x; /* Enregistrer la valeur x x */
x = y; /* Maettre y dans x */
y = temp; /* Mettre temp dans y*/
}
static void Main(string[] args)
{
manipulateur_nombre n = new manipulateur_nombre();
/* Définition des variables locales */
int a = 100;
int b = 200;
Console.WriteLine("Avant échange, valeur de a : {0}", a);
Console.WriteLine("Avant échange, valeur de b : {0}", b);
/* Appeler la méthode pour changer la valeur */
n.echange(ref a, ref b);
Console.WriteLine("Aprés échange, valeur de a : {0}", a);
Console.WriteLine("Aprés échange, valeur de b : {0}", b);
Console.ReadLine();
}
}
}
Exemple:
class RefExample
{
static void Method(ref int i)
{
// Placez le pointeur de la souris sur i pour vérifier qu'il est un int.
// La déclaration suivante provoquerait une erreur de compilation si i
//a été en boîte comme un objet.
i = i + 44;
}
static void Main()
{
int val = 1;
Method(ref val);
Console.WriteLine(val);
// Résultat: 45
}
}
Exemple
static void Ajouter_un(ref int x)
{
x++;
}
static void Main( )
{
int k = 6;
Ajouter_un(ref k);
Console.WriteLine(k); // Affiche la valeur 7
}
exemple:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace array_parameter
{
class Program
{
static void printarray(int[] newarray)
{
int i, sum = 0;
Console.Write("\n\nVous avez entré:\t");
for (i = 0; i < 4; i++)
{
Console.Write("{0}\t", newarray[i]);
sum = sum + newarray[i];
}
Console.Write("\n\nLa somme de tous les valeurs est:\t{0}", sum);
Console.ReadLine();
}
static void Main(string[] args)
{
int[] arr = new int[4];
int i;
for (i = 0; i < 4; i++)
{
Console.Write("Entrez un nombre:\t");
arr[i] = Convert.ToInt32(Console.ReadLine());
}
// passer un tableau comme argument
Program.printarray(arr);
}
}
}
Appel de méthodesnomDeLaMéthode(paramètresSéparésParUneVirgule); Exemple:
using System;
namespace CalculatorApplication
{
class NumberManipulator
{
public int FindMax(int num1, int num2)
{
/* local variable declaration */
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}
static void Main(string[] args)
{
/* local variable definition */
int a = 100;
int b = 200;
int ret;
NumberManipulator n = new NumberManipulator();
//calling the FindMax method
ret = n.FindMax(a, b);
Console.WriteLine("Max value is : {0}", ret );
Console.ReadLine();
}
}
}
Retenir
Autre Exemple:
using System;
namespace CalculatorApplication
{
class NombreManipulateur
{
public int TrouverMaximum(int num1, int num2)
{
/* local variable declaration */
int result;
if(num1 > num2)
result = num1;
else
result = num2;
return result;
}
}
class Test
{
static void Main(string[] args)
{
/* local variable definition */
int a = 100;
int b = 200;
int ret;
NombreManipulateur n = new NombreManipulateur();
//calling the FindMax method
ret = n.TrouverMaximum(a, b);
Console.WriteLine("Max value is : {0}", ret );
Console.ReadLine();
}
}
}
Surcharge de méthodeExemple:
public int Ajouter ( int valeur1, int valeur2 )
{
return valeur1 + valeur2;
}
public double Ajouter ( double valeur1, double valeur2 )
{
return valeur1 + valeur2;
}
Exemple :
public double Longueur ( string chaine )
{
return (double) chaine.Length;
}
public int Longueur ( string chaine )
{
return (int) chaine.Length;
}
Méthodes récursives
Autres exemples
// Fonction de factoriel récursive
public static double factorielRecursif(int n)
{
if (n > 1) return n * factorielRecursif(n - 1);
else return 1;
}
// Fonction de factoriel récursive méthode 2
public static double factorielRecursif1(int n)
{
if (1 < n) return n * factorielRecursif1(n - 1);
else return 1;
}
Fonction de factoriel par une boucle While
// Fonction de factoriel par une boucle While et une décrémentation
public static double factoBoucleWhile(double n)
{
double res = 1;
while (n > 1) res *= n--;
return res;
}
// Fonction de factoriel par une boucle While et une incrémentation
public static double factoBoucleWhile2(double n)
{
double res = 1;
double i = 1;
while (i < n) res *= i++;
return res;
}
Fonction de factoriel par une boucle For
// Fonction de factoriel par une boucle For et une décrémentation
public static double factoBoucleFor(double n)
{
double resultat = 1;
for (double i = n; i > 1; i--)resultat *= i;
return resultat;
}
// Fonction de factoriel par boucle For et une incrémentation
public static double factoBoucleFor2(double n)
{
double resultat = 1;
for (double i = 1; i < n; i++) resultat *= i;
return resultat;
}
Exercices de soutienTP: Création de méthode
Console . WriteLine ( CalculSommeEntiers (1, 10)); |
