Первое сообщение и все такое. Я начинающий программист.Найти любое слово в предложении
В любом случае мне было поручено создать программу на Java, которая будет принимать пользовательский ввод в виде предложения и слова. Программа удаляет пробелы из предложения и проверяет, присутствует ли слово в предложении «пустое». Однако программа также удаляет букву с конца слова и проверяет, есть ли слово, содержащееся в беспутном предложении. Программа продолжает удалять буквы из слова, пока не будет удалено больше писем.
Кроме того, программа также должна указывать местоположение слова, но не может перечислить одно местоположение несколько раз. Если программа не может найти целое слово, оно печатает «Слово» не найдено ». Если это так, он печатает «Слово» найдено в месте «x» «
например. Если мое предложение «Она поет по реке» и по слову «байт», код должен проверять «shesingsbytheriver» на «byte», «byt», «by» и «b», но он НЕ МОЖЕТ найти «byt», «by» и «b» в том же месте.
Ниже приведен код. Все в порядке до моего заявления if. Вместо того, чтобы находить слово в беспутном предложении, оно продолжает печатать «Слово» не найдено ».
Несколько последних замечаний: мне следует избегать массивов, и большинство команд, которые мне нужны, относятся к классу String.
Спасибо!
// The purpose of this program is to take in user input in the form
// of a sentence and a word. The program repeats the sentence and word
// back, removes the spaces, and checks if the word was present in the
// sentence. The program removes a letter from the word, checks if that
// "word" is present and continues until it cannot remove any more letters.
import java.util.*;
import javax.swing.JOptionPane;
public class Program1 {
public static void main(String[] args) {
String sentenceBlankless;
String sentence = JOptionPane.showInputDialog("Please enter a sentence: ");
String word = JOptionPane.showInputDialog("Please enter a word: ");
sentenceBlankless = sentence.replaceAll(" ", "");
JOptionPane.showMessageDialog(null, "The original imput is: " + sentence);
JOptionPane.showMessageDialog(null, "Removing blanks - " + sentenceBlankless);
JOptionPane.showMessageDialog(null, "Input word - " + word);
for (int x = 0; x < word.length(); x++) {
if (sentenceBlankless.toLowerCase().contains(word.toLowerCase())) {
int loc = sentence.toLowerCase().indexOf(word.toLowerCase());
JOptionPane.showMessageDialog(null, word.substring(0, word.length() - x) + " was found at location " + loc);
} else {
JOptionPane.showMessageDialog(null, word.substring(0, word.length() - x) + " was not found");
}
}
}
}
Это немного не по теме, но вы должны подумать о создании списка поисков, которые были найдены и представлены пользователю, вместо того, чтобы спамить пользователя с помощью диалоговых окон для каждого найденного поиска. Наконец, добро пожаловать в stackoverflow и поздравляю вас с созданием первого сообщения! – smac89
@ Smac89 Ах, да. Мой учитель специально спросил, что мы «спам» пользователя, забыл упомянуть об этом ха-ха. –