Revision Examen

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 7

Université Alger1 Département : MI

Groupe : 01/05/06/07 Enseignant : FREDJ YOUNES

TPs POO

 TP°01 : Héritage
public class Personne {
private static int nbre;
private int code;
private String nom;
private int age;

public Personne(String nom, int age){


this.nom=nom;
this.age=age;
nbre++;
code=nbre;
}
public String toString(){
return "Code:"+code+" Nom:"+nom+" Age:"+age;
}
}
public class Etudiant extends Personne {
private int bourse;
private int annee;

public Etudiant(String nom, int age,int bourse,int


annee){
super(nom,age);
this.bourse=bourse;
this.annee=annee;
}

public double calculBourse(){


return bourse*annee;
}

@Override
public String toString() {
return super.toString()+" Bourse="+calculBourse();
}
}
public class Employeur extends Personne {
private int prime;
private final int salaire=30000;

public Employeur(String nom, int age, int prime){


super(nom,age);
this.prime=prime;
}

public double calculSalaire(){


return salaire+prime;
}

@Override
public String toString() {
return
super.toString()+"Salaire="+calculSalaire();
}
}
public class Enseignant extends Personne {
private int prime;
private final int prime1=5000;
private final int prime2=7000;
private final int prime3=10000;
private int grade;
private final int salaire=50000;
public Enseignant(String nom, int age, int prime,int
grade)
{
super(nom,age);
this.prime=prime;
this.grade=grade;
}

public double calcsalaire()


{ double sal=0;
switch (grade){
case 1 : sal=salaire+prime+prime1;break;
case 2 : sal=salaire+prime+prime2;break;
case 3 : sal=salaire+prime+prime3;break;
}return sal;
}
public String toString() {
return super.toString()+" salaire Enseignant = "
+calcsalaire();
}
}
public class Main {

public static void main(String[] args) {


Personne[] p=new Personne[5];
p[0]=new Etudiant("Kamel",21,16000,3);
p[1]=new Etudiant("Sarah",25,20000,5);
p[2]=new Employeur("Younes",30,20000);
p[3]=new Employeur("Farid",30,15000);
p[4]=new Enseignant ("Meriem",24,12000,2);

for(Personne index:p){
System.out.println(index);
}
}
}

 TP°02 : Examen
public class Contact {

private String nom;


private String tel;
private String mail;

public Contact(String nom, String tel, String mail){


this.nom=nom;
this.tel=tel;
this.mail=mail;
}

public String getNom() {


return nom;
}

public void setNom(String nom) {


this.nom = nom;
}
import javax.swing.JOptionPane;
public class Repertoire {
private Contact[] contact;
private int nbreMax;
private int nbreContact;

public Repertoire(int nbreMax){


this.nbreMax=nbreMax;
this.contact=new Contact[nbreMax];
nbreContact=0;
}

public boolean placesDisponibles(){


return (nbreMax>nbreContact);
}

public void addContact(Contact c){


if(placesDisponibles()){
contact[nbreContact]=c;
nbreContact++;
}
else JOptionPane.showMessageDialog(null, "Pas de
places disponibles !!");
}

public Contact[] allContact(){


return contact;
}

public Contact[] allContactParNom(String nom){


int k=0;
Contact[] cParNom=null;
for(int i=0;i<nbreContact;i++){
if(contact[i].getNom().equals(nom)){
k++;
}
}
if(k!=0){
cParNom=new Contact[k];
for(int i=0;i<k;i++){
if(contact[i].getNom().equals(nom)){
cParNom[i]=contact[i];
}
}
}
else{
JOptionPane.showMessageDialog(null,
"Pas de résultats pour ce nom !!");
}

return cParNom;
}

public String toString(){


String s="Repertoire01: Taille du repertoire="
+nbreMax+", Nombre de contacts="+nbreContact+", Places
disponibles="+(nbreMax-nbreContact)+"\n";
for(int i=0;i<nbreContact;i++){
s+="Contact:"+(i+1)+", Nom:
"+contact[i].getNom()+", Telephone:
"+contact[i].getTel()+", Email:
"+contact[i].getMail()+"\n";
}
return s;
}

public static void main(String arg[]){


Contact c1=new
Contact("Ahmed","01225558","ahmed@gmail.com");
Contact c2=new
Contact("Samir","01225558","samir@gmail.com");
Repertoire r=new Repertoire(3);
r.addContact(c1);
r.addContact(c2);
JOptionPane.showMessageDialog(null, r);
// recherche
Contact[] tab=null;
tab=r.allContactParNom("Ahmed");
String s="";
for(int i=0;i<tab.length;i++){
s+="Contact:"+(i+1)+", Nom:
"+tab[i].getNom()+", Telephone: "+tab[i].getTel()+",
Email: "+tab[i].getMail()+"\n";
}
JOptionPane.showMessageDialog(null, s);
}
}

 TP°03 : Chaines de caractères


package gestionChaines;
import javax.swing.JOptionPane;

public class Palindrome {

public static void main(String[] args) {


String s="level";
int startPosition=0;
int endPosition=s.length()-1;
boolean isPal=true;
while(startPosition<endPosition){
//String startLater=s.substring(startPosition, startPosition+1);
//String endLater=s.substring(endPosition,endPosition+1);
char start=s.charAt(startPosition);
char end=s.charAt(endPosition);
if(start!=end){
isPal=false;
break;
}
startPosition++;endPosition--;
}

if(isPal) JOptionPane.showMessageDialog(null,
"PALINDROME");
else JOptionPane.showMessageDialog(null, "N'EST
PAS PALINDROME");
}

}
 Chaine inversée
package gestionChaines;
import javax.swing.JOptionPane;
public class Chaine2 {

public static void main(String[] args) {


String s1="abcde";
String s2="";
for(int i=s1.length()-1;i>=0;i--){
s2+=s1.charAt(i);
}
System.out.println(s2);

}
}
 Récursivité
import javax.swing.*;
public class Pal {
String ch;
public Pal(String ch){
this.ch=ch;
}
public boolean estPalindrome(){
if (ch.equals("")) return true;
else if(ch.length()==1) return true;
else
return (ch.charAt(0)==ch.charAt(ch.length()-
1))&& new Pal(ch.substring(1, ch.length()-
1)).estPalindrome();
}
public static void main(String[] args) {
Pal p=new Pal("aalaa");
String pal="";
if(p.estPalindrome())pal="palindrome";
else pal="n'est pas palindrome";
JOptionPane.showMessageDialog(null, pal);
}

Vous aimerez peut-être aussi