Vous êtes sur la page 1sur 4

Université Sultan Moulay Slimane Département d’Informatique

FST – Béni Mellal Module : Java

TP n°1

Exercice1:
L’algorithme d’Euclide permet de déterminer le plus grand commun diviseur
(PGCD) de deux entiers. Si A ≥ B > 0, pour trouver le PGCD de A et B on
fait la division euclidienne de A par B, on remplace B par le reste de
cette division et A par B. On répète ces manipulations jusqu’à ce qu’on
trouve un reste nul. Le dernier ne reste non nul est le PGCD de A et B.
Ecrire un programme qui calcule le PGCD de deux entiers.

Exercice2:
Ecrire un programme qui calcule la racine carrée de la valeur réel positif
A grâce à la formule récurrente Un+1=1/2*(Un+A/Un). Les calculs doivent
commencer avec 1 comme valeur initiale de U0 et s’arrêtent quand la valeur
absolue de la différence entre les deux derniers valeurs calculés est
inférieur strictement à 0.001.

Exercice3:
Parmi tous les entiers supérieurs à 100, seuls quatre entiers peuvent être
représentés par la somme des cubes de leurs chiffres. Par exemple 153 =
(1*1*1) + (5*5*5) + (3*3*3).
Ecrire un programme qui permet d’afficher les nombres d’AMSTRONG.

2023/2024 LST - INFO


Université Sultan Moulay Slimane Département d’Informatique
FST – Béni Mellal Module : Java

Solution :
Exercice1: import java.io.*; import java.util.*;
Class PGCD
{ private int a ; private int b ;
PGCD(int aa,int bb)
{ a=aa ; b=bb ;}
static int clavier()
{ Scanner clav=new Scanner(System.in);
return(clav.nextInt()); }
public int calculer()
{ int g,t,r,pgcd;
if(a>=b) {g=a;p=b;}
else {g=b;p=a;}
do{ r=g%p;
g=p;
p=r;
}while(r!=0);
pgcd=g;
return(pgcd); }
public void afficher(int r)
{ System.out.println(" PGCD: "+r);
}
}
public class Exercice1TP1{
public static void main(String[] args){
int ad,bd;
System.out.println(" Entre deux entiers : ");
ad=PGCD.clavier();bd=PGCD.clavier();
PGCD ob=new PGCD(ad,bd);ob.afficher(ob.calculer()); }
}

2023/2024 LST - INFO


Université Sultan Moulay Slimane Département d’Informatique
FST – Béni Mellal Module : Java

Exercice2: import java.io.*; import java.util.*;


class Racine {
public double a ;
Racine(double a)
{
this.a=a;
} static String clavier()
{
Scanner clav=new Scanner(System.in);
return(clav.nextLine());
}
public double calculerRacine(double r)
{
double a=1,b;
do{
b=a;
a=0.5*(b+(r/b));
}while(Math.abs(a-b)>=0.001);
return a;
}
public void afficher(double n,double r)
{
System.out.println("La racine carrée de "+n+" est : "+r);
}
}
public class Exercice2TP1{
public static void main(String[] args){
double nombre;
System.out.println("Introduire un nombre");
nombre=Double.parseDouble(Racine.clavier());
Racine rac=new Racine(nombre);
rac.afficher(rac.a, rac.calculerRacine(rac.a));}
}

2023/2024 LST - INFO


Université Sultan Moulay Slimane Département d’Informatique
FST – Béni Mellal Module : Java

Exercice3: import java.io.*; import java.util.*;


class Amstrong {
private int nbe;
Amstrong(int a)
{
nbe=a;
}
public void afficher_amstrong(){
int n,k,cp=0,s,r;
n=nbe;
while(cp<4)
{ s=0;
k=n;
while(k!=0)
{ r=k%10;
s=s+(r*r*r);
k=k/10;
}
if(s==n){
System.out.println(s+" est un nombre d'Amstrong");
cp++;
}
n++;
}
}
}
public class TP1AMSTRONG {
public static void main(String[] args) {
Amstrong am=new Amstrong(101);
am.afficher_amstrong();
}

2023/2024 LST - INFO

Vous aimerez peut-être aussi