Как определить на каком языке написана программа
Как узнать язык программы, на которой она была написана?
Ответ мастера:Для того, чтобы написать компьютерную программу, необходимо использовать определенный язык программирования. И после того, как исходный код скомпилируется, можно получить исполняемый файл.
Сложность определения языка написания программы состоит в том, в каком виде вам попала данное программное приложение, поскольку это может быть, как и исходный код, так и исполняемый файл.
В первом случае, определить язык очень легко, так как достаточно лишь взглянуть на код, чтобы узнать его конструкцию. И не смотря на то, что языков программирования существует на сегодня большое количество, широко известными стали лишь некоторые из них.
Если вы увидели, что исходный код программы содержит такие операторы, как begin и end, тогда это язык программирования под названием Delphi, который ведет свое начало еще от Паскаля. И если вы посмотрите исходник, написанный на языке Делфи, вы больше не спутаете его с другим.
Распознать язык программы, которая написана в С++, также не представляет особого труда, поскольку у него есть свои характерные черты. Если впервые взглянуть на данный программный код, то перед вашим взором откроется большое количество фигурных скобок. Вместе с тем, для языка С++ характерно наличие комментариев, которые указываются после двойного слеша (//), тем более, что каждый комментарий имеет следующую конструкцию: /* текст комментария */.
Такой язык программирования, как C#, появился совсем недавно и активно используется для создания программных приложений компанией Microsoft. Он достаточно удобен, а также имеет некие черты с языком С++.
Распознать Visual Basic достаточно просто, благодаря своеобразному синтаксису. Аналогично распознается и Ассемблер. Данный язык имеет не столь много уровней, как другие языки программирования. Создавать программы с его помощью достаточно сложно, но полученное в результате приложение имеет небольшой размер и функционирует очень быстро.
Для читки исходного кода программы на языках С, С++, С# и VB необходимо использовать среду Microsoft Visual Studio, а для Делфи - Borland Delphi.
Если же вам нужно узнать язык уже откомпилированной программы, тогда придется прибегнуть к утилите Protection ID, поскольку большинство из программных приложений закриптованы от взлома. Для этого вначале распакуйте скачанный архив, а затем распакуйте сам установочный файл при помощи специальной утилиты.
Чтобы узнать, на каком языке программирования написана программа, воспользуйтесь утилитой PEID, скачать которую вы можете в интернете. Установите ее и запустите. Откройте интересующий вас исполнимый файл. И результат не заставит себя ждать, так как в нижнем окошке появится интересующая вас информация о языке программирования.
Как определить язык программы?
Для написания компьютерных программ используют языки программирования. После компиляции кода получают исполнимый файл. Иногда у пользователя возникает необходимость узнать, на каком языке написана программа.Как узнать, на каком языке написана программа?
Язык программирования – это код, в котором заключены команды компьютеру – что делать в случае тех или иных действий. Таких языков существует огромное количество. А как же узнать, на каком языке написана программа?Как определить язык текста?
Хочется раз и навсегда решить проблему определения языка пользовательского ввода на сайте. Представьте, что я делаю многоязычный Habrahabr :-) и не хочу спрашивать у пользователя, на каком языке он пишет. Думаю, компьютер должен справится с такой проблемой.
Формулировка задачи
- нужно по фрагменту текста определить его язык. Длина фрагмента — от нескольких слов до нескольких десятков предложений. Это может быть связный текст или, например, заголовок статьи;
- текст дан в кодировке UTF-8;
- набор интересующих меня языков жестко задан. Количество языков — 5..10. В рабочем приложении можно даже ограничиться меньшим количеством, чтобы увеличить точность определения;
- текст может содержать включения других языков. Нужно определить основной (более 60% слов, например);
- для моей задачи не всегда нужно точно определять. Например, чаще всего не нужно различать украинский и русский;
- автор текста знает язык, на котором пишет.
Ради эксперимента я попробовал визуально определять незнакомый язык текста. Например, запросто отличу португальский от немецкого, хотя не знаю ни тот ни другой.
Алгоритм моих действий примерно такой:
- смотрю на набор символов, которые встречаются в словах. Причем, именно по словам, а не по всему тексту, т.к. в тексте могут быть «иностранные» слова. На этом этапе уже можно исключить две трети языков.
- ищу характерные союзы и предлоги — по ним можно разделить языки с одинаковым набором символов
- пытаюсь прочитать текст, исходя из предположения, что он написан на языке, который определился. Мне сложно сказать, что происходит на этом этапе… Думаю, это сложный анализ грамматики языка. Я распознаю известные мне слова, проверяю окончания.
Несколько примеров несостоятельных алгоритмов
vitali.at.tut.by — статистический алгоритм, основанный на подсчете количества двухбуквенных сочетаний в тексте. Протестировать не удалось, т.к. бинарник с сайта удалили. Перловый модуль. Живой пример, который сказал, что эта статья написана на турецком. Еще есть статья про нейросетевые классификаторы и семантический анализ:В полиграммной модели со степенью n и основанием M текст представляется вектором {fi}, i = 1..Mn, где fi – частота встречаемости i-ой n-граммы в тексте.n-грамма является последовательностью подряд идущих n – символов вида a1…an-1an... — нихрена не понял Дальше искать не стал.Пример состоятельного алгоритма
Переводчик Google прекрасно определяет язык по нескольким словам. Его не сбивает с толку даже включение «иностранного» слова в предложение.P.S.
Еще у меня есть странное желание проделать это на стороне клиента, с использованием javascript. Не думаю, что анализ нескольких слов требует обращения к Google Language API…P.S. 2
В итоге использовал Google Language API… Подозреваю, что в спорных случаях они используют поиск по словарю, а я этого не могу себе позволить на стороне клиента. Теги:- язык
- определение языка
- язык ввода
- мультиязычность
- google translate
Переводчик онлайн - определить язык автоматически
Периодические контакты российского сообщества с представителями зарубежных стран сегодня не редкость. Расширение границ международного сотрудничества, доступность туристических путешествий или просто желание познакомиться с иностранной культурой вынуждают постоянно искать точки соприкосновения между носителями разных языков. Основой эффективного общения двух сторон выступает качественный перевод.
Бывают ситуации, когда сложно определить, на каком языке написан иностранный текст. Многие в такой ситуации теряются, но более продвинутая часть населения предпочитает обратиться к переводчику с определением языка онлайн. Удобный и невероятно полезный, переводчик языков онлайн от «m-translate.ru» развеет ваши сомнения в один миг. Не нужно перебирать десятки вариантов, чтобы определиться, с каким именно языком вы имеете дело! Наш «интеллектуальный» переводчик онлайн позволяет определить язык в два счета – просто введите или вставьте нуждающийся в переводе текст в соответствующую форму, выберете автоматическое определение языка и через мгновение уже читайте предоставленный программой результат. Такая функция позволяет не только разрешить языковые трудности, но и ощутимо сэкономить ваше время. Желаем удачи!
Рейтинг страницы:
4.28/5 (всего:1103)