Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.08.2009, 11:52   #1
Osinin
 
Регистрация: 28.08.2009
Сообщений: 4
По умолчанию Прошу помочь с программой на Shell и системными вызовами.

1)Создайте программу, которая - либо 1)каждые 2 минуты, либо 2)в указанное время, либо 3)с выходом из диалогового режима терминала - будет производить поиск файлов, соответствующих указанному с терминала шаблону и начиная с указанного с терминала каталога, а затем менять регистр букв его имени либо на 1)заглавный, либо на 2)строчный.

Вот что смог придумать:

Код:
function zamena()
{
for loop in 'ls'
cat $loop\tr "A-Z" "a-z" -or tr "a-z" "A-Z" >res
done
}
at 10:00 -or now + 2 minutes -or &
echo -n "Выберите каталог"
read answer
case answer in
Дальше идет выбор каталога, что-то типо
Код:
find. -name "q.txt" -print
find. -type f -exec zamena{}/;;
Прошу прощения за ошибки,писал сюда начисто,и слабо в этом понимаю.
Так вот собственно вопрос:тут есть хоть что-то близкое к решению задачи?


Еще проблемы с вызовами,тут я не понимаю даже условия задачи
2)Написать программу игры в "пинг-понг" двух процессов че-рез два канала. Игра завершается при нажатии комбинации кла-виш Ctrl+C.
Что значит пинг-понг?
Osinin вне форума Ответить с цитированием
Старый 28.08.2009, 13:02   #2
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Пинг-понг это настольный теннис.
Простейшая реализация пинг-понг похожа на арканоид. На противоположных сторонах экрана по одной платформе-ракетке. Одна из них в начале игры запускает шарик, игра ведется по правилам настольного тенниса.
mMAg вне форума Ответить с цитированием
Старый 28.08.2009, 13:13   #3
Osinin
 
Регистрация: 28.08.2009
Сообщений: 4
По умолчанию

Ну это я понимаю,но как быть с сигналами?
Один процесс подает сигнал,а что дальше? Второй тупо на него отвечает?
Osinin вне форума Ответить с цитированием
Старый 28.08.2009, 13:20   #4
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Я так понимаю, что эти процессы вообще о существовании друг друга не подозревают. А реакция, скорее всего, должна быть на поведение шарика.
mMAg вне форума Ответить с цитированием
Старый 28.08.2009, 13:29   #5
Osinin
 
Регистрация: 28.08.2009
Сообщений: 4
По умолчанию

ну я так понимаю,что при получении сигнала,процесс срабатывает незамедлительно?
Osinin вне форума Ответить с цитированием
Старый 28.08.2009, 13:31   #6
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Я так полагаю, что это уже на твое усмотрение.
mMAg вне форума Ответить с цитированием
Старый 28.08.2009, 18:00   #7
AndreyMust19
Пользователь
 
Регистрация: 01.03.2009
Сообщений: 31
По умолчанию

Цитата:
2)Написать программу игры в "пинг-понг" двух процессов че-рез два канала. Игра завершается при нажатии комбинации кла-виш Ctrl+C.
Классную вещь придумали! Игра должна вестить так (со стороны пользователя):

Смысл в том, чтобы каждый процесс юзал один терминал, за к-м сидит пользователь, чтобы 2 человека играли на разных терминалах. Канал нужен для двухстороннего
общения между процессами.

1 канал - первый игрок
2 канал - второй игрок
Когда 1 игрок нажимает на клавишу вниз, его процесс пишет в канал "вниз" и перерисовывает платформу. 2-ой процесс получает символ "вниз" и тоже перерисовывает платформу 1-го игрока на своем экране. Также и с другим игроком.

Игрок, ударивший по шарику, рисует его на экране и посылает через канал символы о движении шарика на 1 клетку по диагонали. При столкновении с краем экрана, процесс пишет символ, к-й значит изменение направления движения шарика. Другой процесс читает символы и рисует шарик у себя на экране. Также будет, когда 2-ой игрок ударит по шарику.

Чтобы шарик двигался медленно, процесс должен уснуть на 1 секунду, чтобы через 1 секунду послать символ о движении шарика. После передачи шарика другому игроку оба процесса уменьшают 1 секунду на 5%. Таким образом, с каждым ударом шарик ускоряется.
Кто не поймает шарик - тот проиграл .

Есть 2 варианта в зависимости от типа используемых каналов.

- Вариант 1. Именованные каналы
User1 запускает пинг-понг ждет подключения к каналу. Второй игрок подключается к каналу, сообщает свои данные (имя юзера и номер терминала) и начинается игра.

- Вариант 2. Обычные каналы
Процесс создает дочерний процесс и связывает с ним оба канала. В этом случае при запуске надо указать пути к обоим терминалам, на к-х будет запущен ping-pong.
AndreyMust19 вне форума Ответить с цитированием
Старый 28.08.2009, 18:42   #8
Osinin
 
Регистрация: 28.08.2009
Сообщений: 4
По умолчанию

О,спасибище, теперь есть от чего толкаться)
Osinin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очень прошу помочь! goggin Помощь студентам 1 15.12.2008 19:11
Прошу помочь с заданием =(( Lexxich Помощь студентам 1 14.06.2008 12:34
Прошу помочь. Оплачу. dreo Фриланс 8 22.12.2007 00:35
Прошу помочь с запросом MASTERKEY БД в Delphi 0 18.05.2007 15:15
Прошу по помочь с TMonthCalendar, Azamat_k Компоненты Delphi 12 04.04.2007 13:36