• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Как включить(подвязать) отображение русских букв в Perl в командной ст

  • Автор темы Redee
  • Дата начала
R

Redee

Как включить(подвязать) отображение русских букв в Perl в командной строке виндовс?
При запуске программы Perl, установлен ActivePerl (команд. строка виндовс -- пуск - выполнить - cmd) место русских символов выдает иероглифы, вот исходник >>>

Код:
#!/usr/bin/perl -w

print "Величина месячного взноса?";
$pmt=<STDIN>;
chomp $pmt;

print "Годовая процентная ставка? (пример 7% - 0.07)";
$interest=<STDIN>;
chomp $interest;

print "Период депозита в месяцах?";
$mons=<STDIN>;
chomp $mons;

# В формуле заложена месячная процентная ставка
$interest/=12;

$total=$pmt*((1+$interest)**($mons-1))/$interest;

print "После $mons месяцев при ежемесячной ставке $interest\n";
print "у вас будет сумма $total.\n";
Вот наглядно что выходит>>>
2af5ec096bb7.jpg


З.Ы. Только начал изучать, объясните пожалуйста поподробнее.
 
B

brunchik

Форум программистов называется.115 просмотров и заданый вопрос в прошлом году.А ответов 0.Я то же задал и у меня 37 просмотров и тишина.А попробуй сейчас мат напиши так все сразу проснутся.Я сам решу свой вопрос и тут все еще будет тишина.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Используй модули:
Код:
use locale;
use encoding 'cp1251';
У меня так же было.Я один раз объявил и теперь у меня без вызова этих модулей все с русским Ок.
Тут видимо этого не знают!
 
T

TimeDontWait

Ну если вы знаете, так помогите. Здесь никто никому ничего не должен.
 
R

Redee

Короче решил так, сначала код стал таким >>>
Код:
#!/usr/bin/perl -w
use Encode qw(encode decode);
$content = "Величина месячного взноса?";
$content = Encode::encode('cp866', Encode::decode('cp1251', $content));
print $content;
$pmt=<STDIN>;
chomp $pmt;

$content = "Годовая процентная ставка? (пример 7% - 0.07)";
$content = Encode::encode('cp866', Encode::decode('cp1251', $content));
print $content;
$interest=<STDIN>;
chomp $interest;

$content = "Период депозита в месяцах?";
$content = Encode::encode('cp866', Encode::decode('cp1251', $content));
print $content;
$mons=<STDIN>;
chomp $mons;

# В формуле заложена месячная процентная ставка
$interest/=12;

$total=$pmt*((1+$interest)**($mons-1))/$interest;

$content = "После";
$content = Encode::encode('cp866', Encode::decode('cp1251', $content));
$content2 = "месяцев при ежемесячной ставке";
$content2 = Encode::encode('cp866', Encode::decode('cp1251', $content2));
print "$content $mons $content2 $interest\n";

$content = "У вас будет сумма";
$content = Encode::encode('cp866', Encode::decode('cp1251', $content));
print "$content $total.\n";

Потом нашел такой способ >>>
Код:
#!/usr/bin/perl -w
use Encode qw(encode decode);

sub print_enc {
my $text = shift; # получили текст
my $from = shift||"cp1251"; # если нужно указали другую кодировку или по умолчанию
my $to = shift||"cp866"; # если нужно указали другую кодировку или по умолчанию
$text = Encode::encode($to, Encode::decode($from, $text));
print $text;
}

print_enc "Величина месячного взноса?";
$pmt=<STDIN>;
chomp $pmt;

print_enc "Годовая процентная ставка? (пример 7% - 0.07)";
$interest=<STDIN>;
chomp $interest;

print_enc "Период депозита в месяцах?";
$mons=<STDIN>;
chomp $mons;

# В формуле заложена месячная процентная ставка
$interest/=12;

$total=$pmt*((1+$interest)**($mons-1))/$interest;

print_enc "После $mons месяцев при ежемесячной ставке $interest
у вас будет сумма $total.\n";

З.Ы. инфу рыл здесь >>>


и здесь >>>
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!