Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 My program does not work properly
Index -> Programming, Java -> Java Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
mix12




PostPosted: Thu Nov 25, 2004 5:32 pm   Post subject: My program does not work properly

My return method is not wokring properly
I have to do a school assignment.

There are 3 inputs, the first one is the main string, the second input is the substring and the 3rd input is the prefix

I have to make it so that every occurance of the substring within the main string has to have the prefix infront of it.
(Just if you are wondering, i am using the the HSA console)
This is the return method:

private static String prefix (String sentence, String word, String before)
{
int y = 0;
int x = 0;
String insert = "";
String mid = "";
String end = "";
while (true)
{
if (sentence.charAt (y) == word.charAt (x))
{
while (true)
{
if (word.charAt (x) != sentence.charAt (y))
{
break;
}
if (x == (word.length () - 1))
{
while (true)
{
int z = 0;
insert += sentence.charAt (z);
z++;
if (z == y)
{
break;
}
}
mid = before;
while (true)
{
int a = y;
end += sentence.charAt (a);
a++;
if (a == sentence.length () - 1)
{
break;
}
}
}
x++;
y++;
}
}
x = 0;
y++;
if (y == sentence.length () - 1)
{
break;
}
}
if (insert.length () < 1)
{
return sentence;
}
else
{
return (insert + mid + end);
}
}
Sponsor
Sponsor
Sponsor
sponsor
wtd




PostPosted: Thu Nov 25, 2004 7:29 pm   Post subject: (No subject)

Using subString would help.

http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html#substring(int,%20int)
Hikaru79




PostPosted: Thu Nov 25, 2004 9:16 pm   Post subject: (No subject)

So would using indexOf. If you have the Holt Java textbook (which you should, if you're using HSA), turn to page 180 and go from there =) Good luck.

Oh, and use code tags. it makes:

System.out.println ("Use code tags!");

look like:
code:

System.out.println ("Use code tags!");
zylum




PostPosted: Thu Nov 25, 2004 10:53 pm   Post subject: (No subject)

if i understood the question correctly, i beleive that's a one liner:

return sentence.replaceAll(word, before+word);
wtd




PostPosted: Thu Nov 25, 2004 11:07 pm   Post subject: (No subject)

zylum wrote:
if i understood the question correctly, i beleive that's a one liner:

return sentence.replaceAll(word, before+word);


I think that for the purpose of the exercise, he has to write the logic himself.
mix12




PostPosted: Sat Nov 27, 2004 9:11 am   Post subject: Thank you, but....

return sentence.replaceAll works, but...
I am only allowed to use two string built-in methods -charAt() and length()
mix12




PostPosted: Sat Nov 27, 2004 9:31 am   Post subject: I got it to work a bit more, just some left

It is almost finished but i still have to find the substring within the mainstring as many times as it occurs.
I can find it once and put a perfix infront of it.
But i can to find every occurance and out a prefix infront.

This is the new return method:

private static String prefix (String sentence, String word, String before)
{
String insert = "";
int y = 0;
int x = 0;
int z = 0;
while (y != sentence.length () - 1)
{
while (insert.length () <= sentence.length ())//problem is here
{
if (word.charAt (x) != sentence.charAt (y))
{
break;
}
if (x == word.length () - 1)
{
int first = y - (word.length () - 1);
while (z != first)
{
insert = insert + sentence.charAt (z);
z++;
}
insert += before;
int a = first;
while (a != sentence.length ())
{
insert += sentence.charAt (a);
a++;
}
}
x++;
y++;
}
x = 0;
y++;
}
if (insert.length () < 1)
return sentence;
return (insert);
}
Display posts from previous:   
   Index -> Programming, Java -> Java Help
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 7 Posts ]
Jump to:   


Style:  
Search: