Exercice C# Corrigé – Partie 2

Avec des exercices corrigés en C#, vous pratiquerez divers concepts du langage C#. Vous commencerez par des exercices C#de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
 
 

Exercice 1:

Créez une fonction qui prend un mot et détermine s’il est pluriel ou singulier. Un mot pluriel est celui qui se termine par « s ». S’il est pluriel renvoyer TRUE sinon FALSE.

Exemple:

check("enfants") ➞ True

check("filles") ➞ True

check("fille") ➞ False

check("enfant") ➞ False

Solution:

public static bool check(string str)
{
	return str.EndsWith("s");
}
 

Exercice 2:

Créez une fonction qui renvoie TRUE si une chaîne contient des espaces. Sinon renvoie FALSE.

Exemple:

containSpaces("Thomas") ➞ False

containSpaces("Hello World!") ➞ True

containSpaces(" ") ➞ True

containSpaces("") ➞ False

Solution:

public static bool containSpaces(string str)
{
	return (str.Contains(" "));
}
 

Exercice 3:

Créez une fonction qui prend un tableau de nombres et renvoie le plus petit nombre.

Exemple:

getSmall([9, 7, 1, 5]) ➞ 1

getSmall([100, -100, 1, 50]) ➞ -100

getSmall([9, 9, 9, 9]) ➞ 9

Solution:

public static int getSmall(int[] tab) 
{
      	return tab.Min();
}
 
 

Exercice 4:

Créez une fonction qui prend un tableau de nombres et renvoie le plus grand nombre du tableau.

Exemple:

getBigNbr([9, 7, 1, 5]) ➞ 9

getBigNbr([100, -100, 1, 50]) ➞ 100

getBigNbr([9, 9, 9, 9]) ➞ 9

Solution:

public static int getBigNbr(int[] tab) 
{
      	return tab.Max();
}
 

Exercice 5:

Créez une fonction qui renvoie TRUE si un entier est divisible par 5, sinon retournez FALSE.

Exemple:
isDivisible(5) ➞ True

isDivisible(10) ➞ True

isDivisible(6) ➞ False

Solution:

public static bool isDivisible(int n)
{
	return n % 5 == 0;
}
 

Exercice 6:

Créez une fonction qui compte le nombre de syllabes d’un mot. Chaque syllabe est séparée par un tiret -.

Exemple:

nbrOfSlab("prin-temps") ➞ 2

nbrOfSlab("ar-rê-te") ➞ 3

nbrOfSlab("ther-mo-mè-tre") ➞ 4

Solution:

public static int nbrOfSlab(string str)
{
	  return str.Split('-').Length;
}
 
 

Exercice 7:

Créez une fonction qui prend un tableau et une chaîne comme arguments et renvoie l’index de la chaîne.

Exemple:

getIndex(new string[] {"A", "B", "C", "D"}, "B") ➞ 1

getIndex(new string[] {"Alex", "Bob", "Emily", "Tom"}, "Emily") ➞ 2

getIndex(new string[] {"C#", "PHP", "C++", "Java"}, "C#") ➞ 0

Solution:

public static int getIndex(string[] tab, string str) 
{
	  return Array.IndexOf(tab, str);
}
 

Exercice 8:

Créez une fonction qui prend un entier et renvoie la factorielle de cet entier. C’est-à-dire, l’entier multiplié par tous les entiers inférieurs positifs.

Exemple:

factoriel(2) ➞ 2
// 2 * 1 = 2

factoriel(3) ➞ 6
// 3 * 2 * 1 = 6

factoriel(4) ➞ 24
// 4 * 3 * 2 * 1 = 24

Solution:

public static int factoriel(int n)
{
	if(n == 1)
		return 1;
	else
		return n * factoriel(n-1);
}
 

Exercice 9:

La distance de Hamming est le nombre de caractères qui diffèrent entre deux chaînes. Prenons un exemple :

Str1: « abcdde »
Str2: « abcdbe »

Distance de Hamming = 1 « d » et « b » est la seule différence.

Créez une fonction qui calcule la distance de hamming entre deux chaînes.

Exemple:

distanceHamming("abcdde", "abcdbe") ➞ 1

distanceHamming("abefcd", "cdfgea") ➞ 6

distanceHamming("agresser", "adresser") ➞ 1

distanceHamming("attention", "intention") ➞ 2

Solution:

public static int distanceHamming(string str1, string str2)
{
	int n=0;
	for(int i=0; i < str1.Length; i++)
	{
		if(str1[i] != str2[i])
		{
			n++;
		}
	}
	return n;
}
qcm-csharpQCM C# – Framework .NET – Partie 1QCM sur C# avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses…Lire plus
Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *