Perl, помогите решить проблему.

Компьютеры программирование программы обучение perl

Помогите создать такой алгоритм: задается вопрос: "Какую сторону вы ищете?". Если ответ равен, например, А, то найти сторону а через определённый алгоритм, если ответ равен В, то найти сторону b по определённому алгоритму. Если я пишу: if ($ask == 'a') { BLOCK } не происходит ничего, программа просто выбивает первый блок, а остальные в упор не видит. Помогите разобраться пожалуйста.

Примечание:
Пример программы:

print "Welche Webseite Information mochtest du wissen?";
$ask = <STDIN>;

if ($ask eq 's') {
print "\n";
print "\tlogin: *****\n";
print "\tpassword: *****\n\n\n";
}
elsif ($ask eq 'm') {
print "\n";
print "*****\n";
print "\tlogin: *******\n";
print "\tpassword: *****\n";
}
$ClickEnterToGoOut = <STDIN>;

В таком варианте программа просто перескакивает блоки и ждёт, пока я нажму Enter.
Ответы:
== используется для сравнения чисел, чтобы сравнить со строкой, нужно писать if ($var eq 'string') { ... }
В добавок к ответу Tutor скажу только - chomp it :)


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.