Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 20.05.2017
Сообщений: 3
1

Работа со строками

20.05.2017, 13:27. Просмотров 972. Ответов 4

Привет всем.
Ребята нужна помощь в написание программ, а то сам не как не могу сообразить как сделать, надеюсь поможете...
Обе программы читают и результат записывают в файл...

1 задачка
Кликните здесь для просмотра всего текста
В результирующую строку записываются такие элементы 2-х исходных строк, которые есть в 1 и 2 строках.
Например,
Исходные строки:
abcd efg hij
kl mn oab
Результат:
ab


2я задачка
Кликните здесь для просмотра всего текста
Из исходной строки составить новую строку по следующему принципу:
Сначала идет n символов исходной строки в прямом порядке, затем следующие n
символов но уже в обратном порядке, затем опять в прямом и в обратном и т.д.
Например,
Исходная строка:
abсdefghijklmnopqrstuvwxyz
Результат при n=5:
Abcdejihgfklmnotsrqpuvwxyz
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.05.2017, 13:27
Ответы с готовыми решениями:

Работа со строками, заполнить компоненты строками из файла
Привет! Нужна помощь в заполнении формы В общем, есть форма отправки письма. У нее есть 2 функции,...

Работа со строками. Функции работы со строками
Дана строка символов. В заданном тексте определить позицию первой точки ‘ . ‘.

Работа со строками(операции над строками)
Пусть дана последовательность, содержащая от 2 до 50 слов, в каждом из которых от 1 до 8 строчных...

Задание по темам: ООП, исключения, работа со строками (возможно применение коллекций List), работа с компоновщиком
ТЯЖЕЛО РАБОТАТЬ С КОМПОНОВЩИКОМ. БУДУ РАД ВАШИМ ОТВЕТАМ. 1. Ознакомиться с принципом работы...

4
2 / 2 / 4
Регистрация: 18.05.2017
Сообщений: 9
21.05.2017, 06:19 2
Цитата Сообщение от andreynip Посмотреть сообщение
1 задачка
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
public class Main {
 
    public static void main(String[] args) throws IOException {
 
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
 
        System.out.print("Введите строку 1 : ");
        String str1 = reader.readLine();
        System.out.print("Введите строку 2 : ");
        String str2 = reader.readLine();
 
        String result = "";
        for (int i=0; i<str1.length(); i++) {
            for (int j=0; j<str2.length(); j++) {
                if (str1.substring(i,i+1).equals(str2.substring(j,j+1)) /* если только уникальные раскоментируй: && result.indexOf(str1.substring(i,i+1))<0 */)
                    result+= str1.substring(i,i+1);
                    break;
            }
        }
 
        System.out.println("Результат = " + result);
        reader.close();
    }
}
Добавлено через 1 час 7 минут
Цитата Сообщение от andreynip Посмотреть сообщение
2я задачка
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
public class Main {
 
    public static void main(String[] args) throws IOException {
 
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
 
        System.out.print("Введите исходную строку : ");
        String strIn = reader.readLine();
 
        System.out.print("Введите N = ");
        int n = Integer.parseInt(reader.readLine());
 
        /// В случае когда у нас последняя итерация реверсивная дельту нам надо добить до кратного N
        /// тут можно дополнительно наложить условия для нахождения что последняя итерация - это реверс, тогда можно убрать из цикла break - секцию
        /// Например ((strIn.length()/n)%2!=0 && ((strIn.length()/n*n) - strIn.length())<0)
        int delta = ((strIn.length()/n*n)-(strIn.length())<0)? (n+(strIn.length()/n*n)-(strIn.length())):0;
        String result = "";
 
        boolean useReverse = false;
        for (int i=0; i<strIn.length()+delta; i++) {
            int index = i;
            if (useReverse) {
                index = (i/n)*n + n - ((i%n)+1);
            };
            if (!useReverse && index>= strIn.length()) {
                break;
            }else if (index>= strIn.length())
                continue;
 
            result += strIn.substring(index,index+1);
 
            if ((i+1)%n ==0)
                useReverse=!useReverse;
        }
 
        System.out.println("Результат = " + result);
        reader.close();
    }
}
0
0 / 0 / 0
Регистрация: 20.05.2017
Сообщений: 3
22.05.2017, 09:04  [ТС] 3
Спасибо за код, а как переделать её (1 задачу) под чтение данных из файла и что бы результат писался в другой файлподскажите пож...
0
2 / 2 / 4
Регистрация: 18.05.2017
Сообщений: 9
22.05.2017, 11:51 4
Лучший ответ Сообщение было отмечено andreynip как решение

Решение

Добрый день.
Ну можно вот так к примеру
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import java.io.*;
 
public class Main {
 
    public static void main(String[] args) throws IOException {
 
 
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
 
        System.out.print("Введите имя входного файла: ");
        String fIn = reader.readLine();
        System.out.print("Введите имя выходного файла: ");
        String fOut = reader.readLine();
 
        BufferedReader fileReader = new BufferedReader(new FileReader(fIn));
        BufferedWriter fileWriter = new BufferedWriter(new FileWriter(fOut, false));
 
        String strReader;
        String str1 = "", str2 = "";
 
        int stringNumber = 1;
 
        while (true) {
            strReader = fileReader.readLine();
            if (strReader == null)
                break;
 
            if (stringNumber == 1)
                str1 = strReader;
            if (stringNumber == 2)
                str2 = strReader;
            stringNumber++;
        }
        fileReader.close();
 
        String result = "";
        for (int i=0; i<str1.length(); i++) {
            for (int j=0; j<str2.length(); j++) {
                if (str1.substring(i,i+1).equals(str2.substring(j,j+1)) /* если только уникальные раскоментируй: && result.indexOf(str1.substring(i,i+1))<0 */) {
                    result += str1.substring(i, i + 1);
                    break;
                }
            }
        }
 
        System.out.println("Результат = " + result);
        fileWriter.write(result);
        fileWriter.flush();
        fileWriter.close();
 
        reader.close();
    }
}
1
0 / 0 / 0
Регистрация: 20.05.2017
Сообщений: 3
22.05.2017, 19:25  [ТС] 5
DarkFeralis125 спасибо тебе большое, очень сильно помог)
еще просьба если трудности не составит про комментируй там какой блок что делает) буду очень благодарен )
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.05.2017, 19:25

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Работа со строками
Пожалуйста, помогите решить две задачки. 1. Задана строка символов. Группы символов, разделенные...

Работа со строками
Здравствуйте! Прошу помочь разобраться с программой, она не работает, и я не могу понять почему....

Работа со строками в SG
Люди добрые-Прогеры! Нужна помощь! Есть StringGrid с 1 столбцом и 20 строками. В эти 20 строк...

Работа со строками
Помогите пжл. Только начинаю разбираться. В чем ошибка????? Разработать программу, которая вводит...

Работа со строками
&lt;form&gt; &lt;input type=&quot;text&quot; name=&quot;s&quot; value=&quot;abc&quot; /&gt; &lt;input type=&quot;submit&quot; /&gt; &lt;/form&gt; &lt;? ...

Работа со строками
Допустим, у нас есть 4 слова, вводим их в форму, в которой 2 тестовых поля и одна кнопка. В одно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.