The UNIX and Linux Forums  

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Поиск заменить строку в file1 со строкой из (таблицы поиска) file2? gstuart Shell программирование и сценарии 9 06-08-2009 07:11 AM
libapache2-мод-карабканье-МП 0,2 (по умолчанию филиала) iBot Релизов программ - RSS Новости 0 07-10-2008 07:50 PM
Карабканье Яйца 1.1 (по умолчанию филиала) iBot Релизов программ - RSS Новости 0 05-04-2008 06:30 PM
добавить строку в текстовый файл, основанные на поиске строки malaymaru Shell программирование и сценарии 1 06-09-2006 09:53 AM
SED проблема - замена строки должны быть одинаковой длины, как соответствующие строки. amangeles Shell программирование и сценарии 4 01-11-2006 06:11 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 08-29-2008
Email-Лалит email-lalit is offline
Зарегистрированный пользователь
  
 

Регистрация: Май 2008
Сообщений: 36
Карабканье строку.

Привет всем,

Я пытаюсь написать Perl скрипт, который будет принимать ввод пользователя в виде строки и карабканье строку и распечатать результат.
Примечание: Я не могу использовать функцию Shuffle .... используя для петель.


Код:
so here is example.
Enter a String: abcdef

Print the Result: debacf 

Enter a String: abcdef

print the Result: cdabef

Вот мои Perl код, но он не работает так:

Код:
print "Enter a string:   ";
$sString = <STDIN>;

chomp($sString);

print "String = $sString\n";

$iLength = length($sString);
@array = split(//, $sString);

print "array = @array\n";

print "length = $iLength\n";
for ( $i = 1; $i <= $iLength; $i++ ){
$item = int(rand($#array));
print "@array[$item]\n";
}

Пожалуйста, любой орган, помоги мне.

спасибо,
Old 08-29-2008
Джим Макнамара jim mcnamara is offline Forum Staff  
...@...
  
 

Регистрация: Февраль 2004
Местонахождение: Н. М.
Сообщения: 5808
Если у вас есть Perl 5.8.0 или более поздней версии вашего следовало Shuffle. Если вы не можете использовать Shuffle, почему бы и нет?
Old 09-01-2008
Annihilannic Annihilannic is offline Forum Advisor  
  
 

Регистрация: Май 2008
Место проведения: Сидней, Австралия
Сообщений: 1009
Самый простой способ состоит в том, чтобы петля через массив обмен каждый пункт с другим пунктом в произвольном положении. Обратите внимание, что массив индексируется с 0, а не 1.


Код:
for ( $i = 0; $i < $iLength; $i++ ){
        $random = int(rand($#array));
        $temp=$array[$random];
        $array[$random]=$array[$i];
        $array[$i]=$temp;
}
for ( $i = 0; $i < $iLength; $i++ ){
        print "$array[$i]";
}
print "\n";

Old 09-01-2008
эпоха era is offline Forum Advisor  
Гердер бесполезных Кошки (В субботний)
  
 

Регистрация: Mar 2008
Местоположение: / там / это / только / BIN / ш
Сообщений: 3652
Я еще не слышал Shuffle поэтому я googled немного.

perlfaq4 - perldoc.perl.org
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 01:48 PM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0