|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 191
|
[JAVA] esercizio catena di parole
Salve a tutti, devo fare per l'uni questo progettino...
----- Esercizio: catena di parole Scrivere un programma che accetti in input da riga di comando il nome di un file di testo e un valore numerico n. Il file di testo deve contenere una lista di parole, una su ogni linea, da usare come dizionario. Il programma deve visualizzare in output la più lunga catena di parole ottenibile usando parole del dizionario. Una catena di parole è una sequenza di parole in cui ogni parola, esclusa la prima, inizia con le stesse n lettere con cui si conclude la parola precedente. Il valore n corrisponde a quello acquisito da linea di comando. Esempio: Lanciando il programma con java Esercizio dizionario.txt 2, dove il file dizionario.txt contiene: mare roma casa remo si potrà ottenere in output: roma mare remo ----- ecco quello che ho fatto: Codice:
import java.util.ArrayList;
public class Esercizio{
private int num=2;
ArrayList<String> parole = new ArrayList<String>(); //Creo l'arrayList parole del dizionario
ArrayList<String> parole2 = new ArrayList<String>();
private void inserisci(){
parole.add("mare");
parole.add("roma");
parole.add("casa");
parole.add("remo");
}
private void stampa(){
for (int i=0 ; i< parole2.size() ; i++) {
System.out.println(parole2.get(i).toString());
}
}
private void scandisci(){
parole2.add(parole.get(1));
int count =0;
String fine = finisceCon(parole.get(1).toString(),num);
//while(count<parole.size()){
for (int i=0 ; i< parole.size() ; i++) {
for (int j=0 ; j< parole.size() ; j++) {
String inizio = iniziaCon(parole.get(j).toString(),num);
if(fine.equals(inizio)){
parole2.add(parole.get(j));
parole.remove(j);
}
//else break;
}
count++;
//fine = finisceCon(parole.get(i).toString(),num);
//}
}
}
private String finisceCon(String parola, int num){
int lettere=parola.length();
int start=lettere-num;
String nuovaparola=parola.substring(start,lettere);
return nuovaparola;
}
private String iniziaCon(String parola, int num){
String nuovaparola=parola.substring(0,num);
return nuovaparola;
}
public static void main (String[]args){
Esercizio Catena = new Esercizio();
Catena.inserisci();
Catena.scandisci();
Catena.stampa();
}
}
Grazie
__________________
Project HTPC: work in progress! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:53.



















