Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Почему то код не работает, как надо  (Прочитано 6729 раз)
0 Пользователей и 1 Гость смотрят эту тему.
samlab
Гость
« : 08-07-2010 01:29 » 

 Улыбаюсь Приветствую всех... Вот тружусь над таким простым кодом, а что то не работает А черт его знает...
Код:
#!/usr/bin/perl -w

$| = 1;

open(F, '<num.txt') || die $!;

my @some = <F>;

close F;

my $now;

my $i =1;

$i++;
if(!$now){ $now = shift(@some);
              chomp($now);
              print"NUM $now\n";}
              if($i>3)
              {
              $now = shift(@some);
              chomp($now);
                print"NUM $now\n";
              $i=0;

              }
Т.е., 2 раза должно выпасть число 1, а потом 2, потом 3 и т.п. А почему то не работает, как надо.
Содержимое файла num.txt
Код:
1
2
3
4
5
6
7
8
9
10

Помогите пожалуйста, умные головы Улыбаюсь. Заранее спасибо большое за помощь...
Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 08-07-2010 03:52 » 

samlab, а что ты хотел получить?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 08-07-2010 07:37 » 

я так понимаю, цикла не хватает. вместо первого if какой-нибудь while должен быть?
Записан
samlab
Гость
« Ответ #3 : 10-07-2010 10:22 » 

samlab, а что ты хотел получить?

Чтобы в цикле бралось число из файла, потом следующее и т.д.

Добавлено через 14 секунд:
я так понимаю, цикла не хватает. вместо первого if какой-нибудь while должен быть?
Нет, не помогло...
« Последнее редактирование: 10-07-2010 10:22 от samlab » Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 10-07-2010 12:02 » 

что не помогло?
код покажи где не помогло.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 10-07-2010 12:12 » 

Эх...

Код:
my ($fd, $num);

open $fd, '<num.txt' or die $!;

while (<$fd>)
{
    chomp;
    $num = 0 + $_; # Для преобразования строки в число.
    print "NUM $num\n";
}

close $fd;
« Последнее редактирование: 10-07-2010 14:09 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
samlab
Гость
« Ответ #6 : 10-07-2010 13:31 » 

Эх...

Код:
my ($fd, $num);

open $fd, '<num.txt' or die $!;

while (<$fd>)
{
    chomp;
    $num = 0 + $_; // Для преобразования строки в число.
    print "NUM $num\n";
}

close $fd;

C:\>c.pl
Unrecognized character \xC4; marked by <-- HERE after  + $_; // <-- HERE near co
lumn 23 at C:\c.pl line 12.
Не робит што то...

Добавлено через 1 минуту и 9 секунд:
что не помогло?
код покажи где не помогло.
Код:
#!/usr/bin/perl -w

$| = 1;

open(F, '<num.txt') || die $!;

my @some = <F>;

close F;

my $now;

my $i =1;

$i++;
while(!$now){ $now = shift(@some); # заменил как вы сказали первый цикл на while
              chomp($now);
              print"NUM $now\n";}
              if($i>3)
              {
« Последнее редактирование: 10-07-2010 13:32 от samlab » Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #7 : 10-07-2010 13:39 » 

Код:
$i++;
while(!$now){ $now = shift(@some); # заменил как вы сказали первый цикл на while
              chomp($now);
              print"NUM $now\n";}
              if($i>3)
              {
Это какой-то обрывок
Но....
Читай код

Присвоили И равное 1
Увеличили И на единицу
Вошли  в цикл
    В цикле что-то должны делать с И
 
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 10-07-2010 14:10 » 

samlab, ошибку исправил. См. пост №6.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
samlab
Гость
« Ответ #9 : 10-07-2010 15:41 » 

Всем спасибо за участие, буду дальше сам разбираться.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines