0% ont trouvé ce document utile (0 vote)
160 vues15 pages

Jeu de Devinettes Multijoueur Java

Transféré par

soufiane Mouhtaram
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
160 vues15 pages

Jeu de Devinettes Multijoueur Java

Transféré par

soufiane Mouhtaram
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP sockets

Beidja Cheikh

07/01/2023
Classe ServeurMT
Calsse ServeurThreads
Activation de fonctionnalité Telnet client
La connexion
Les principe du jeu
class ServeurMT
• package multithreads;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class ServeurMT {
public static void main(String[] args) {
List<Socket>jouers=new ArrayList<>();
int nbmagique =new Random().nextInt(100);
try {
ServerSocket ss=new ServerSocket(9080);
while (true){
Socket s=ss.accept();
jouers.add(s);
ServeurThreads st=new ServeurThreads(s,jouers,nbmagique);
st.start();
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
class ServeurThreads

• package multithreads;
import java.io.*;
import java.net.Socket;
import java.util.List;
import java.util.Random;
public class ServeurThreads extends Thread{
private Socket s;
private List<Socket> jouers;
private int nbMagique;
public ServeurThreads(Socket s, List<Socket> jouers, int
nbMagique) {
this.s = s;
this.jouers = jouers;
this.nbMagique = nbMagique;
}

@Override
public void run(){
try {
InputStream is=s.getInputStream();
OutputStream os=s.getOutputStream();
InputStreamReader isr =new
InputStreamReader(is);
BufferedReader br=new BufferedReader(isr);
PrintWriter pr=new PrintWriter(os,true);
pr.println("Veuillez saisir votre nom :");
String Jname= br.readLine();
int nbj = 0;
String ms;
• do{
try {
pr.println("Veuillez saisir un autre nombre :");
if ((ms=br.readLine())!=null){
nbj=Integer.parseInt(ms);
if(nbj==nbMagique){
pr.println("Bravo vous avez trouver le nombre majique");
for (Socket sjouer:jouers) {
if(sjouer!=s){
OutputStream osj=sjouer.getOutputStream();
PrintWriter prj=new PrintWriter(osj,true);
prj.println("le jouer" +Jname+"a trouvé le nombre
magique :"+nbMagique);
nbMagique =new Random().nextInt(100);
}
}
}
• else if (nbj<nbMagique) {
pr.println("le nombre est inferieur au nombre
magique");
}else{
pr.println(" le nombre est supérieur au nombre
magique ");
}
}

}catch (IOException e){


System.out.println(e.getMessage());
}catch (NumberFormatException e){
e.getStackTrace();
}

}while (nbj!=nbMagique);
for (Socket sjouer:jouers) {
sjouer.close();
}
} catch (IOException e) {
throw new RuntimeException(e);
}

}
}
Conclusion

Vous aimerez peut-être aussi