Springen naar inhoud

Java


  • Log in om te kunnen reageren

#1

marjan

    marjan


  • >25 berichten
  • 34 berichten
  • Gebruiker

Geplaatst op 13 april 2010 - 16:03

hoi
in mijn oefening moet ik 7 woorden inlezen via een for lus en de lengte de string op het scherm afdrukken
maar ik weet niet hoe ik de string in een for lus en dan de lengte er uit haal
eerste code

package Extrapac4;


import javax.swing.JOptionPane;


publicclass WoordenInOut {




private String titel;


/**

* Constructor van een SimpleInOutDialog.

*

* @param titel een String met de titel van het venstertje.

*/

public WoordenInOut(String titel) {

this.titel = titel;

}

/**

* Tonen van een tekst in een dialoogvenstertje.

* @param message een String met een te tonen berichtje.

* @param output een String met de te tonen tekst.

*/

/**

*

* @param

*/



publicvoid showString(String message, String output) {

JOptionPane.showMessageDialog(

null,

message + "\n\n" + output + "\n\n",

titel,

JOptionPane.PLAIN_MESSAGE);


}


/**

* Tonen van een geheel getal in een dialoogvenstertje.

* @param message een String met een te tonen berichtje.

* @param een int met het te tonen getal.

*/

publicvoid showInteger(String message, int getal) {

JOptionPane.showMessageDialog(

null,

message + "\n\n" + Integer.toString(getal) + "\n\n",

titel,

JOptionPane.PLAIN_MESSAGE);


}


/**

* Tonen van een geheel getal in een dialoogvenstertje.

* @param message een String met een te tonen berichtje.

* @param een double met het te tonen getal.

*/

publicvoid showDouble(String message, double getal) {

JOptionPane.showMessageDialog(

null,

message + "\n\n" + Double.toString(getal) + "\n\n",

titel,

JOptionPane.PLAIN_MESSAGE);

}


/**

* Inlezen van een String.

* @param message een String met de tekst die in het dialoogvenster

* moet getoond worden.

* @return de ingelezen String. Indien het venster zonder

* invoer wordt afgesloten is de String null.

*/

public String readString(String message) {

Object[] possibilities = null;

String s = null;

s =

(String) JOptionPane.showInputDialog(

null,

message,

this.titel,

JOptionPane.PLAIN_MESSAGE,

null,

possibilities,

"");


if ((s == null) || (s.length() == 0)) {

s = null;

}

return s;

}


/**

* Inlezen van een geheel getal.

* @param message een String met de tekst die in het dialoogvenster

* moet getoond worden.

* @return het ingelezen geheel getal (een int). Indien het venster zonder

* correcte invoer wordt afgesloten is het getal 0 (nul).

*/

publicint readInteger(String message) {

boolean isAnInteger = false;

String tekst = null;

int gelezen = 0;

while (!isAnInteger) {

tekst = readString(message);

if (tekst != null) {

try {

gelezen = Integer.parseInt(tekst);

isAnInteger = true;

} catch (NumberFormatException nfe) {

isAnInteger = false;

}

} else {

isAnInteger = true;

gelezen = 0;

}

}

return gelezen;

}


/**

* Inlezen van een kommagetal.

* @param message een String met de tekst die in het dialoogvenster

* moet getoond worden.

* @return het ingelezen getal (een double). Indien het venster zonder

* correcte invoer wordt afgesloten is het getal 0.0 (nul).

*/

publicdouble readDouble(String message) {

boolean isADouble = false;

String tekst = null;

double gelezen = 0.0;

while (!isADouble) {

tekst = readString(message);

if (tekst != null) {

try {

gelezen = Double.parseDouble(tekst);

isADouble = true;

} catch (NumberFormatException nfe) {

isADouble = false;

}

} else {

isADouble = true;

gelezen = 0.0;

}

}

return gelezen;

}


/**

* Wanneer je in je programma geen uitvoer meer nodig hebt

* MOET je deze bewerking op het SimpleInOutDialog-object uitvoeren.

* Het programma wordt dan beŽindigd.

*/

publicvoid stop() {

System.exit(0);

}


}


de twee uitvoer code daar zitten de fouten ik weet hoe het moet voor de for lus

en krijg de lengte van de string niet op het scherm

de uitvoercode die ik heb is deze

package Extrapac4;


public class Woorden {


/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

WoordenInOut inOut;

inOut = new WoordenInOut("Demo voor SimpleInOutDialog");

int len;

String woord1;

String woord2 ;

String woord3 ;

String woord4 ;

String woord5 ;

String woord6 ;

String woord7 ;

String Aantalwoorden1;

woord1 = inOut.readString("Geef uw woord in ");

woord2 = inOut.readString("Geef uw woord in ");

woord3 = inOut.readString("Geef uw woord in ");

woord4 = inOut.readString("Geef uw woord in ");

woord5 = inOut.readString("Geef uw woord in ");

woord6 = inOut.readString("Geef uw woord in ");

woord7 = inOut.readString("Geef uw woord in ");


String aantalwoorden1=woord1+woord2+woord3+woord4+woord5+woord6+woord7;


len=aantalwoorden1.length();


System.out.println("de lengte is"+aantalwoorden1);



inOut.stop();

}


}

kan iemand mij hoe ik het best wel doe

bedankt groetjes marjan


Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 13 april 2010 - 16:20

Wat lukt er niet met die for-lus?

for (int i=0;i<7;i++)
{
//TODO read string
}
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#3

marjan

    marjan


  • >25 berichten
  • 34 berichten
  • Gebruiker

Geplaatst op 13 april 2010 - 17:43

hoi
hoe kan ik ervoor zorgen dat de lengte van alle woorden wordt samen geteld.?
groetjes marjan

package Extrapac4;


publicclass Woorden {


/**

* @param args

*/

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

WoordenInOut inOut;

inOut = new WoordenInOut("Demo voor SimpleInOutDialog");



for (int i=0;i<7;i++)

{

//TODO read string

String woord= inOut.readString("Geef uw woord in ");


int len = woord.length () ;

System.out.println ( "String lenght : " + len );

}





inOut.stop();


}


}



#4

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 13 april 2010 - 17:51

Als je uiteindelijk ook de totale lengte wil bijhouden maak je hiervoor een extra variabele aan.

int total=0;

for ...
{
...
total+=len
}
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#5

marjan

    marjan


  • >25 berichten
  • 34 berichten
  • Gebruiker

Geplaatst op 13 april 2010 - 18:42

ik denk dat ik nog iets fout doe
sorry hoor

publicclass Woorden {


/**

* @param args

*/

publicstaticvoid main(String[] args) {

// TODO Auto-generated method stub

WoordenInOut inOut;

inOut = new WoordenInOut("Demo voor SimpleInOutDialog");

int total=0;


int len = 0;

for (int i=0;i<7;i++)

total+=len;

{

//TODO read string

String woord= inOut.readString("Geef uw woord in ");


len = woord.length () ;


System.out.println ( "String lenght : " + len );

}





inOut.stop();


}
groetes marjan en bedankt


#6

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 13 april 2010 - 18:44

'total+=len;' moet komen na de regel
len = woord.length ();
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian

#7

marjan

    marjan


  • >25 berichten
  • 34 berichten
  • Gebruiker

Geplaatst op 13 april 2010 - 19:57

sorry maar het werkt niet ik voel mij zo dom




public class Woorden {


/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

WoordenInOut inOut;

inOut = new WoordenInOut("Demo voor SimpleInOutDialog");

int total=0;


int len = 0;

for (int i=0;i<7;i++)


{

//TODO read string

String woord= inOut.readString("Geef uw woord in ");


len = woord.length () ;

total+=len;

System.out.println ( "String lenght : " + len );

}





inOut.stop();


}


}



het moet het totaal van de zeven worden

groetjes marjan


#8

In physics I trust

    In physics I trust


  • >5k berichten
  • 7384 berichten
  • Moderator

Geplaatst op 13 april 2010 - 20:07

Weet je wat de regel
total+=len;
doet, marjan? En waar wordt die output op het scherm geschreven?

In de for-lus maak je de berekening, dat betekent nog niet dat die ook weer wordt gegeven hť :eusa_whistle:

Veranderd door In fysics I trust, 13 april 2010 - 20:09

"C++ : Where friends have access to your private members." — Gavin Russell Baker.

#9

ZVdP

    ZVdP


  • >1k berichten
  • 2097 berichten
  • VIP

Geplaatst op 13 april 2010 - 20:07

Wat werkt er niet?

Je moet op na de for-lus natuurlijk nog 'System.out.println(total);' toevoegen.
"Why must you speak when you have nothing to say?" -Hornblower
Conserve energy: Commute with a Hamiltonian





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures