News Ticker

Menu

Exercices C#







Exercice 1 : On souhaite écrire un programme C# de calcul des n premiers
nombres parfaits. Un nombre est dit parfait s’il est égal à la somme de ses
diviseurs, 1 compris.  Exemple : 6 = 1+2+3 , est un nombre parfait.
Exercice 2  : On souhaite écrire un programme de calcul du pgcd de deux
entiers non nuls, en C# à partir de l’algorithme de la méthode d'Euclide.
Voici une spécification de l'algorithme de calcul du PGCD de deux nombres
(entiers strictement positifs) a et b, selon cette méthode :
Exercice 3  : On souhaite écrire un programme C# qui calcule le nombre d'or
utilisé par les anciens comme nombre idéal pour la sculpture et
l'architecture. Si l'on considère deux suites numériques (U) et (V) telles que
pour n strictement supérieur à 2 :

using System;
namespace CsExosAlgo1
{
 class ApplicationParfaits {
 static void Main (string[ ] args) {
 int compt = 0, n, k, somdiv, nbr;
 System.Console.Write("Entrez combien de nombre parfaits : ");
 n = Int32.Parse( System.Console.ReadLine( ) ) ;
 nbr = 2;
 while (compt != n)
 { somdiv = 1;
 k = 2;
 while(k <= nbr/2 )
 {
 if (nbr % k == 0) somdiv += k ;
 k++;
 }
 if (somdiv == nbr)
 { System.Console.WriteLine(nbr+" est un nombre parfait");
 compt++;
 }
 nbr++;
 }
 }
 }

using System;
namespace CsExosAlgo1
{
class ApplicationEuclide {
static void Main (string[ ] args) {
 System.Console.Write("Entrez le premier nombre : ");
 int p = Int32.Parse( System.Console.ReadLine( ) ) ;
 System.Console.Write("Entrez le deuxième nombre : ");
 int q = Int32.Parse( System.Console.ReadLine( ) ) ;
 if (p*q!=0)
 System.Console.WriteLine("Le pgcd de "+p+" et de "+q+" est "+pgcd(p,q));
 else
 System.Console.WriteLine("Le pgcd n'existe pas lorsque l'un des deux nombres est nul !");
 }
static int pgcd (int a , int b) {
 int r,t ;
 if ( b>a) {
 t = a;
 a = b;
 b = t;
 }
 do {
 r = a % b;
 a = b;
 b = r;
 } while(r !=0);
 return a ;
 }
 }
}

using System;
namespace CsExosAlgo1
{
 class AppliNombredOr {
 static void Main(string[ ] args) {
 int n, Un, Un1=2, Un2=1 ;
 double Vn,Vn1=2, Eps ;
 System.Console.Write("Précision du calcul ? : ");
 //-- précision demandée (exemple 1e-4 ou 1e-2 ou 0,0001, …) :
 Eps = Double.Parse( System.Console.ReadLine( ) ) ;
 for (n=2; ; n++) //n est le rang du terme courant
 {
 Un = Un1 + Un2;
 Vn =(double)Un / (double)Un1;
 if (Math.Abs(Vn - Vn1) <= Eps) break;
 else
 {
 Un2 = Un1;
 Un1 = Un;
 Vn1 = Vn;
 }
 }
 System.Console.WriteLine("Nombre d'Or = " + Vn+" // rang="+n);
 }
 }
}










Share This:

  • To add an Emoticons Show Icons
  • To add code Use [pre]code here[/pre]
  • To add an Image Use [img]IMAGE-URL-HERE[/img]
  • To add Youtube video just paste a video link like http://www.youtube.com/watch?v=0x_gnfpL3RM