Accueil
 Sommaire du cours
 1  Introduction à Java
 2  Concepts de bases de Java
 2.1  Syntaxe de base
 2.1.1  Premier en C
 2.1.2  Premier en Java
 2.2  Types Primitifs
 2.3  Tableaux
 2.4  Méthodes
 2.5  Exemple de passage d'arguments
 Questions
 3  Classes et objets en Java
 4  Généralisation spécialisation en Java
 5  Organisation des sources Java
 6  API Java
 7  Exceptions en Java
 8  Concepts objets avancés en Java
 Bibliographie

 Contacts

W3C validator

Département INF  
 Conception et programmation orientées objet


2.1.1 Premier en C
 
1#include <stdlib.h> 
#include <stdio.h> 
typedef enum { FAUX=0, VRAI=1 } Booleen; 
 
5static Booleen estPremier(int nombre) { 
  int borne=nombre/2; 
 
  if (nombre==1) return FAUX; 
9  for (int pred=2; pred<=borne; pred++) { 
    if (nombre%pred==0) { 
      return FAUX; 
    } 
13  } 
  return VRAI; 
} 
 
17int main () { 
  int  nb; 
  printf("Saisirunevaleur>0:"); 
  scanf("%d", &nb); 
21 
  if (nb<=0) { 
    printf ( "Erreurdesaisie\n" ); 
    return  EXIT_FAILURE; 
25  } 
  printf( "Lenombre%d", nb ); 
  if (estPremier(nb)) { 
    printf("estpremier\n"); 
29  } else { 
    printf("nestpaspremier\n"); 
  } 
  return EXIT_SUCCESS; 
33}

    précédent     suivant 


Dans cet exemple nous reprenons un exercice simple d’algorithmique qui consiste à saisir un nombre entier et à déterminer si ce nombre est premier. Vous pouvez noter de grandes similitudes sur la partie algorithme des deux programmes en C et en Java. La différence majeure entre les deux versions de la méthode estPremier tient au fait qu’en langage C, il n’existe pas de type correspondant à une valeur booléenne. Christian Bac, Denis Conan, Télécom SudParis, CSC 4002, Octobre 2015