Primo post del anno....
Certo che sto blog lo seguo molto, ed è pure mio....
Oggi 23 marzo 2010 abbiamo svolto la verifica riguardante il gioco del oca tramite server, con tanto di chat interna, e tutto in java.
In pratica una fila di codice senza apparente senso logico, ammetto di non essere stato molto attento, e di aver preso alcuni riferimenti esterni, resta il fatto che il programma non da errori nella compilazione, ma ne da invece nella parte di esecuzione, in quanto non sono riuscito a compilare la classe Main, per errori di scrittura del programma o altro non lo so, io posto tutto e lascio a lei la correzione, e visto che si tratta di un programma abbastanza lungo si prenda il tempo necessario, io lo metto qui, mi dica le correzioni e gli errori, e in qualche modo mi arrangerò.
Programma ServerOca
import java.io.*;
import java.net.*;
import java.util.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class ServerOca{
PrintWriter[] clienti=new PrintWriter[20];
public class ElaboraCliente implements Runnable{
BufferedReader lettore=null;
Socket sock=null;
public ElaboraCliente(Socket c){
try{
sock=c;
lettore=new BufferedReader(new InputStreamReader(sock.getInputStream()));
}
catch(Exception ex){
ex.printStackTrace();
}
}
@Override public void run(){
String messaggio;
try{
while((messaggio=lettore.readLine())!=null){
System.out.println("ho letto: "+messaggio);
InetAddress indirizzo=sock.getInetAddress();
String ind=indirizzo.toString();
String m=ind+" "+messaggio;
chiacchierone(m);
}
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
public void go(){
try{
ServerSocket portone=new ServerSocket(4242);
int i=0;
while(true){
Socket portina=portone.accept();
PrintWriter scrittore=new PrintWriter(portina.getOutputStream());
clienti[i]=scrittore;
i++;
Thread t=new Thread(new ElaboraCliente(portina));
t.start();
}
}
catch(Exception ex){
ex.printStackTrace();
}
}
public void chiacchierone(String messaggio){
for(int i=0;i<20;i++){
if(clienti[i]!=null){
try{
clienti[i].println(messaggio);
clienti[i].flush();
System.out.println("Ho spedito il messaggio");
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
}
public class TestaDueCerchi{
int y;
BufferedReader lettore;
Socket sock;
PrintWriter scrittore;
JFrame f1=new JFrame("disegno1");
DueCerchi d1=new DueCerchi();
JButton b=new JButton("Ricevi");
public TestaDueCerchi(){
f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f1.add(BorderLayout.CENTER,d1);
d1.setColore1(Color.YELLOW);
d1.setColore2(Color.BLUE);
f1.add(BorderLayout.SOUTH,b);
b.addActionListener(new Bottone());
f1.setSize(400,600);
f1.setVisible(true);
}
public class Bottone implements ActionListener{
public void actionPerformed(ActionEvent e){
go();
f1.repaint();
}
}
public void go(){
try{
for(int i=0;i<1;i++){
Socket s=new Socket("localhost",12);
InputStreamReader r=new InputStreamReader(s.getInputStream());
BufferedReader reader=new BufferedReader(r);
String suggerimento=reader.readLine();
System.out.println("Suggerimento: "+suggerimento);
y=Integer.parseInt(suggerimento);
d1.getY(y);
reader.close();
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
}
public class DueCerchi extends JPanel{
Color colore1=Color.YELLOW;
Color colore2=Color.RED;
String numero="";
String n="";
int y;
int[][]coord={{210, 180},{250, 200},{270, 230},{270, 270},{250, 310},{215, 330},{180, 330},{140, 310},{110, 270},{110, 230},{130, 200},{170,180}};
public void setColore1(Color c1){
colore1=c1;
}
public void setColore2(Color c2){
colore2= c2;
}
public void paintComponent(Graphics g){
g.setColor(colore1);
g.fillOval(100,150,200,200);
g.setColor(colore2);
g.fillOval(150,200,100,100);
g.drawLine(200,350,200,150);
g.drawLine(100,250,300,250);
g.drawLine(110,300,290,200);
g.drawLine(110,200,290,300);
g.drawLine(150,160,250,340);
g.drawLine(150,340,250,160);
int j;
for(int i=0;i<12;i++){
j=i+1;
n=numero+j;
g.drawString(n,coord[i][0],coord[i][1]);
if(i==y){
g.fillOval(coord[i][0]+5,coord[i][1],10,10);
System.out.println("La mia y e:"+y);
}
}
g.setColor(colore2);
g.fillOval(150,200,100,100);
}
public int getY(int a){
y=a;
System.out.print(a);
return y;
}
}
public class ServerO {
public void go(){
try{
ServerSocket s1=new ServerSocket(12);
while(true){
Socket presa=s1.accept();
PrintWriter scrivi=new PrintWriter(presa.getOutputStream());
int s=getSuggerimenti();
scrivi.println(s);
scrivi.close();
System.out.println(s);
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
private int getSuggerimenti(){
double r1=Math.random()*12;
int r=(int)r1;
return r;
}
}
}
Programma di esecusione TestaServerOca
import java.io.*;
import java.net.*;
import java.util.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class TestaServerOca{
public static void main(String args[]){
ServerOca serv=new ServerOca();
serv.go();
TestaDueCerchi d=new TestaDueCerchi();
}
}
mercoledì 24 marzo 2010
giovedì 19 novembre 2009
sabato 18 luglio 2009
Suggerimento
Dato che il mio unico lettore è il pprofessor natalizi, vorrei proporre a suddetto prof di effettuare il programma per il quarto con lezioni di HTMl, ovvero creare pagine e siti internet, insomma, web desiner, perché il java e lo C nel mondo del lavoro non servono, l'Html si invece
questo è un consiglio prof, sicuramente + facile e utile del ruby or rails
spero che legga il messaggio, se no glie lo mando nel blog suo
questo è un consiglio prof, sicuramente + facile e utile del ruby or rails
spero che legga il messaggio, se no glie lo mando nel blog suo
sabato 30 maggio 2009
lunedì 18 maggio 2009
sabato 16 maggio 2009
giovedì 16 aprile 2009
Torneone
Non ho nemmeno n lettore, ma voglio dirlo lo stesso
il 25 aprile 2009 la mia squadra di soft air , le SDT Mercenari organizzano un torneo per sole squadre iscritte, e nonostante io giochi solo da poco tempo, parteciperò nelle formazioni difensive del primo obiettivo
nonpotete immaginare che emozione, ma d'altronde, la maggior parte di voi nemmeno conosce il soft air
il 25 aprile 2009 la mia squadra di soft air , le SDT Mercenari organizzano un torneo per sole squadre iscritte, e nonostante io giochi solo da poco tempo, parteciperò nelle formazioni difensive del primo obiettivo
nonpotete immaginare che emozione, ma d'altronde, la maggior parte di voi nemmeno conosce il soft air
Iscriviti a:
Post (Atom)









