![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
Lisssa |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Не получилось запустить твой скрипт (((. Запустили прогу на Си и на Perl данный скрипт
Все таки он заработал, я избавилась от четных множителей. Старый скрипт, который не работал (с исключенными четными множетелями) не нашла, видемо потерла. Так что не понятно, почему считал не правильно и выводились четные числа. Си по скорости победил данный скрипт. Арто, винды к сожалению у меня нет, чтобы проверить ... (((, да как-то мне страшно пробывать запускать перл там. Мне кажется там жутко неудобно и не понятно , ведь виндоус имеет закрытый код. Вот , что получилось у меня: lisssa@orion:/data/school/lesson03>./0320.pl Unquoted string "sum" may clash with future reserved word at ./0320.pl line 2. Number found where operator expected at ./0320.pl line 4, near ": 1 } @prim) } $n+=2 } print "@prim"' 100" (Might be a runaway multi-line '' string starting on line 2) (Missing operator before 100?) syntax error at ./0320.pl line 2, near "-le" Execution of ./0320.pl aborted due to compilation errors. Вот сам скрипт
|
||||||
|
|||||||
dixoNICH |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 222 Регистрация: 20.3.2011 Репутация: нет Всего: нет |
вы как его запускали? то, что arto написал, засунули в файл и пытались запустить?
|
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
1)cpan>install List::Util 2) скопировала в файл(исправив шапку под юникс), как обычно chmod +x file.pl 3)./file.pl |
|||
|
||||
Pfailed |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 22 Всего: 39 |
Lisssa, это неверно. Вам нужно прочитать perldoc perlrun
Например perl -MList::Util=sum -e 'print sum(1,2,3)' это
|
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Спасиба за наводку.
![]() Блин , многие ссылаются на англоязычную информацию. Если бы действительно владела английским, а не просто переводила слова , то тут бы просто даже не появилась, это же логично, как два плюс два. Я и так сейчас "курю" мануалы на родном языке , а Вы предлогаете еще усугубить енто дело . ![]() Может , где нить есть русскоязычный ресурс ? |
|||
|
||||
Pfailed |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 22 Всего: 39 |
Некоторая часть документации переведена на http://perl5doc.ru/
|
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Спасибки за ресурс.
Только не могу найти, то что мне надо . Что только не набирала в поиске... Пробовала и преобразовать из Windows в Unix и "конвертирование" , "формат" и т.п. Подскажите русскую терминологию по данному вопросу, чтобы я могла перевести скрипт в понятный синтаксис под unix. |
|||
|
||||
Pfailed |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 22 Всего: 39 |
Это не из windows в unix, а из однострочного формата в полноценный скрипт.
Опции командной строки описаны в perlrun, там это не переведено. |
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Спасибо , весьма благодарна .
![]() Да в моем пособии по которому сейчас изучаю - это есть в 12 уроке "Работа с командной строки."(потом вернусь) Запустила оба скрипта. С модулем из командной строки оказался быстрее где-то в 3 раза, чем из учебного пособия , но медленнее Си. Сейчас в процессе изучения массивов. Изучение идет туго, думаю напишу не скоро. Чем дальше, тем труднее ![]() Обратила внимание , что надо обязательно учить терминологию (русскоязычную) и синтаксис, без этого просто не возможно вникнуть с ходу в последующий урок. |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
на программу на c можно взглянуть?
|
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Да , конечно. ![]() Она на рабочем компьютере. Буду на работе после завтра. Ночью скину. Вообще синтаксис Си и PHP c виду, очень похож на Perl. Ну я конечно как новенькая смотрю. Геометрия похожа . |
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
|
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Переписала код по аналогичной математической схеме , как в примере на Cи
Код значительно быстрее вывел результат простых чисел , чем вышестоящие скрипты на Perl, но аказался в раз 5 медленнее Си. А ведь у меня была сразу идея написать его в таком виде , не как в учебном пособии. Я побывала построить скрипт с данным оператором "%" )), вот только руки не с того места. Как сразу в голове просчитать , какой код более быстрый ? По примерному представлению количества операций , который производит код ? |
|||
|
||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
хороший вопрос. однозначного ответа нет, потому и говорят, что основанием для оптимизации должно являться профилирование. однако сравнить два алгоритма можно и нужно (хотя это тоже может оказаться непростой задачей). обычно анализ основывается на выявлении основной операции (или группы операций) алгоритма и подсчете числа операций в зависимости от размера данных. в данном случае все довольно просто: в первом алгоритме на один внутренний цикл больше. если есть k вложенных циклов, каждый из которых выполняется за n шагов (с точностью до множителя), то класс эффективности алгоритма O(n^k) таким образом первый алгоритм имеет трудоемкость O(n^3), второй O(n^2), где n это $maxprimes вот если бы они попадали в один класс эффективности, нам пришлось бы более точный анализ проводить Добавлено через 1 минуту и 54 секунды Lisssa, вообще этот вопрос относится к теме "Анализ алгоритмов", который довольно широко освещен в литературе |
|||
|
||||
Lisssa |
|
|||
Новичок Профиль Группа: Участник Сообщений: 41 Регистрация: 27.9.2011 Репутация: нет Всего: нет |
Ясненько, спасибки за ответ. Чуть позже вернусь к профилированию, а пока еще профилоровать то нечем ))) |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |