![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| kornata |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 25.2.2010 Репутация: нет Всего: нет |
Вот задание:
Write 2 programs. First shall input 2 numbers and output their sum. Second shall call the first using ProcessBuilder and use stream capture to push a couple of numbers as into First's input, receive First's output, multiply the received number by 2 and print it. Я не могу понять, что должна делать вторая программа. |
|||
|
||||
| Nofate |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 266 Регистрация: 13.10.2008 Репутация: 4 Всего: 8 |
Она должна запускать первую посредством ProcessBuilder (буквально день-два назад эта тема была), захватывать ее потоки ввода-вывода, подавать первой проге на вход параметры, получать результат с выхода первой проги, умножать его на 2 и выводить на экран.
-------------------- The future is not set, there is no fate but what we make for ourselves. Нофейтово пространство и смежные области |
|||
|
||||
| dorogoyIV |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1503 Регистрация: 26.3.2007 Репутация: 3 Всего: 46 |
получите два первых числа используя ProcessBuilder, умножте их на 2 и выведите на печать (кажется так)
опередили Это сообщение отредактировал(а) dorogoyIV - 25.4.2010, 13:52 |
|||
|
||||
| kornata |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 25.2.2010 Репутация: нет Всего: нет |
Что значит захватывать потоки и как это сделать? Какие параметры подавать?
|
|||
|
||||
| Nofate |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 266 Регистрация: 13.10.2008 Репутация: 4 Всего: 8 |
http://java.sun.com/j2se/1.5.0/docs/api/ja...essBuilder.html
http://java.sun.com/j2se/1.5.0/docs/api/ja...ng/Process.html ProcessBuilder создаст вам Process. А у Process есть методы getInputStream() и getOutputStream(). Они то вам и нужны. Как какие параметры? Там же сказано что первая программа принимает на вход 2 числа и выдает их сумму. Вот эти 2 числа и нужно ей на вход передать. Это сообщение отредактировал(а) Nofate - 25.4.2010, 15:01 -------------------- The future is not set, there is no fate but what we make for ourselves. Нофейтово пространство и смежные области |
|||
|
||||
| kornata |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 25.2.2010 Репутация: нет Всего: нет |
То есть прочитать значение введеные для первой программы ? Тоже помощью getInputStream() и getOutputStream()?
Добавлено через 7 минут и 51 секунду
Тут нету никаких примеров. |
|||
|
||||
| Nofate |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 266 Регистрация: 13.10.2008 Репутация: 4 Всего: 8 |
Отнюдь, там как минимум есть пример запуска одной программы из другой. а это пол-дела.
Определитесь для начала с алгоритмом. Предварительно: 1. Читаем про потоковый ввод/вывод, какие бывают потоки и для чего они нужны. 2. Читаем про стандартный поток ввода, стандартный поток вывода и , заодно, стандартный поток ошибок. Выясняем как ими пользуются и с чем их едяь. Первая программа: 1. Прочитать со стандартного ввода в переменную А. 2. Прочитать со стандартного ввода в переменную B. 3. Вывести в стандартный вывод сумму А и B. Вторая программа: 1. Создаем экземпляр класса ProcessBuilder, запускающий первую программу. 2. Получаем экземпляр класса Process методом start класса ProcessBuilder. 3. Инициализируем 2 переменные А и В какими-нибудь числами (или считываем их с клавиатуры). 4. Получаем из нашего экземпляра класса Process поток ввода inputStream. 5. Получаем из нашего экземпляра класса Process поток вывода outputStream. 6. Отправляем в inputStream значения А и В. 7. Читаем из outputStream результат в переменную С. 9. Выводим на экран переменную С, умноженную на 2. Это сообщение отредактировал(а) Nofate - 25.4.2010, 18:15 -------------------- The future is not set, there is no fate but what we make for ourselves. Нофейтово пространство и смежные области |
|||
|
||||
| kornata |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 25.2.2010 Репутация: нет Всего: нет |
Я не понимаю по-английски. Добавлено через 3 минуты и 1 секунду
Числами, они же должны браться и входного потока первой программы. А как считать с клавы? |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |