Showing posts with label Exercices CPP. Show all posts
Showing posts with label Exercices CPP. Show all posts

Friday, November 1, 2013

Calculer la somme de Fibonacci en C++

Le code ci-dessous est de Calculer la somme de Fibonacci (s = 1 +2 +3 +5 +8 + ....). 
Exemple: 
 
si n = 2 => s = 1 +2 
si n = 3 => s = 1 +2 +3
si n = 4 => S = 1 2 3 5
si n = 5 => S = 1 2 3 5 8

long Fibonacci(int n)
{
long s=0;
int f1, f2, f;
f1=1;
f2=2;
s=f1+f2;
for(int i=3;i<=n;i++)
{
f=f1+f2;
s+=f;
f1=f2;
f2=f;
}
return s;
}

Comment obtenir le num�ro parfaite en C++

Cet article vous montre le code C + + pour afficher parfaitnombre d�fini entre deux numeros . A perfect nombre est un entier positif qui est �gal � la somme de ses diviseurs propres positifs � l'exclusion dunombre lui-m�me. 
Exemple: 28 = 1 +2 +4 +7 14


showPerfectNumber void (int start_n, int end_n)
{
int s, k;
int d [5000];
for (int i = start_n; i <= end_n; i + +)
{
s = 0;
k = 0;
d [k] = '\ 0';
for (int j = 1; j <= i / 2; j + +)
{
if (i% j == 0)
{
s + = j;
d [k] = j;
k + = 1;
}
}
if (s == i)
{
printf ("% d est parfait ses diviseurs sont \ n.", i);
for (int i = 0; i <k; i + +)
{
printf ("% d", d [i]);
si (i <k-1) printf (",");
}
printf ("\ n");
}
}
}

Comment savoir nombre premier en C++

Ces codes d'articles dans Visual C++ vous montre comment conna�tre le num�ro est un nombre premier nombreou n'est pas. Un premier nombre est un produit naturel nombre plus grand que 1 qui n'a pas diviseurs positifs autres que 1 et lui-m�me. Exemple: 2, 3, 5, 7, ... 

bool isPrime (int n)
{
bool blnRe = true;

for (int i = 2; i <= n / 2; i + +)
{
if (n% i == 0)
{
blnRe = false;
break;
}
}

retourner blnRe;
}

Les tableaux en langage C++


Exercice 1
Saisir 10 r�els, les ranger dans un tableau. Calculer et afficher la moyenne et l'�cart-type.

Exercice 2
Saisir une matrice d'entiers 2x2, calculer et afficher son d�terminant

Exercice 3
Un programme contient la d�claration suivante:

int tab[10] = {4,12,53,19,11,60,24,12,89,19};

Compl�ter ce programme de sorte d'afficher les adresses des �l�ments du tableau.



Correction


Exercice 1:
#include <stdio.h>

#include <math.h>

#include <conio.h>

void main()

{

float nombre[10],moyenne = 0,ecart_type = 0;

int i;

/* saisie des nombres */

printf("SAISIR 10 NOMBRES SEPARES PAR RETURN: \n");

for(i=0;i<10;i++)

       {       printf("nombre[%1d] = ",i);       scanf("%f",&nombre[i]);       }

/* calculs */

for(i=0;i<10;i++)       {       moyenne = moyenne + nombre[i];       ecart_type = ecart_type +nombre[i]*nombre[i];       }

moyenne = moyenne/10;

ecart_type = ecart_type/10;

ecart_type = ecart_type - moyenne*moyenne;

ecart_type = sqrt(ecart_type);/* racine */

printf("MOYENNE = %f  ECART_TYPE = %f\n",moyenne,ecart_type);

printf("POUR CONTINUER FRAPPER UNE TOUCHE: ");

getch();

}

Exercice 2:
#include <stdio.h>

#include <conio.h>

void main()

{

int mat[2][2],det;

/* saisie */

printf("ENTRER SUCCESSIVEMENT LES VALEURS DEMANDEES: \n");

printf("mat[0][0] = ");

scanf("%d",&mat[0][0]);

printf("mat[1][0] = ");

scanf("%d",&mat[1][0]);

printf("mat[0][1] = ");

scanf("%d",&mat[0][1]);

printf("mat[1][1] = ");

scanf("%d",&mat[1][1]);

/* calcul */

det = mat[0][0]*mat[1][1]-mat[1][0]*mat[0][1];

/* affichage */

printf("DETERMINANT = %d\n",det);

printf("POUR CONTINUER FRAPPER  UNE TOUCHE: ");

getch();

}

Exercice 3:
#include <stdio.h>

#include <conio.h>

void main()

{

int i,tab[10]={4,12,53,19,11,60,24,12,89,19};

printf("VOICI LES ELEMENTS DU TABLEAU ET LEURS ADRESSES:\n");

for(i=0;i<10;i++)

printf("ELEMENT N�%1d: %2d    ADRESSE: %p\n",i,tab[i],tab+i);

printf("POUR SORTIR FRAPPER UNE TOUCHE: ");

getch();

}

Exercice : Marienbad

On va cr�er une fonction compteur_bille ; c�est elle qui va demander � chaque joueur combien de billes il veut retirer, v�rifier que ce nombre est bien compris entre 1 et 5 et n�est pas sup�rieur ou �gal au nombre de billes restant dans le sac.
La fonction principale quant � elle g�rera quel est le joueur en cours et indiquera � chaque joueur le nombre de billes restant dans le sac.

Correction

#include <stream.h>
//Fonction compteur de billes : c'est elle qui effectue les calculs du nombre billes dans le sac
//et demande la saisie du nombre de billes que veut retirer le joueur en cours
int comptbille (int nbbilles)
{
  int n;
  cout<<"Combien de billes voulez vous enlever? ";
  cin>>n;
  //teste si le nombre de bille que le joueur veut enlever est bien compris entre 1 et 5,
  //ou teste si le joueur ne veut pas enlever plus de billes qu'il n'en reste dans le sac
  //(c'est � dire enlever la derni�re bille)
  while (n>5||n<1||n>=nbbilles)
    {
      if (n>5||n<1)
                {
                  cout<<"Vous ne pouvez enlever que de 1 � 5 billes."<<endl<<"Combien de billes voulez vous enlever? ";
                  cin>>n;
                }
      if (n>=nbbilles)
                {
                  cout<<"il ne reste que "<<nbbilles<<" billes dans le sac."<<endl<<" Vous ne pouvez donc enlever que "<<nbbilles-1<<" billes au maximum."<<endl<<"Combien de billes voulez vous enlever? ";
                  cin>>n;
                }
    }
  nbbilles=nbbilles-n;
  return(nbbilles);
}
//fonction principale : qui g�re quel est le joueur en cours et indique qui est le gagnant
void main()
{
  int billes;
  billes=20;
  while (billes!=1)
    {
      cout<<"Joueur 1"<<endl;
      cout<<"il reste "<<billes<<" billes dans le sac."<<endl;
      billes=comptbille(billes);
      if (billes==1)
                  cout<<"Joueur 1 vainqueur"<<endl;
      else
                {
                  cout<<"Joueur 2"<<endl;
                  cout<<"il reste "<<billes<<" billes dans le sac."<<endl;
                  billes=comptbille(billes);
                    if (billes==1)
                         cout<<"Joueur 2 vainqueur"<<endl;
                }
    }
}