Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Roman Tuchin                         2:5020/811.13  23 Oct 2003  00:03:18
 To : Artem Chuprina
 Subject : требуется перевести программу с perl на c++
 -------------------------------------------------------------------------------- 
 
 
 22 Oct 03 13:09, you wrote to me:
 
  RT>> Сабж! очень надо! помогите плз.
  AC> Лениво... Сколько денег дашь? Бесплатно могу посоветовать почитать про
  AC> шаблон vector в STL - переписывается один в один.
 
 если бы я был дураком то обратился бы в другую эху,
 это я все попробовал, но когда в перле в массив запихивается $n
 число $#x почему то равно нулю(а это колво элтов массива)
 когда же я делаю x.push_back(n) в с++  то x.size() почему то равен 1!!!
 К чему бы это?! =) поэтому если перевести все грамотно на c++ получается
 следующая программа которая, после числа 6 , выдает разные ответы с программой
 на перле! может подскажешь где я наврал?:
 #include <iostream>
 #include <stdlib.h>
 #include <vector>
 using namespace std;
 
 void re_lexograf(int n){
   int s;
   int sum;
   vector <int> x;
   cout<<n<<endl;
   x.push_back(n);
   while(x[0]>1){
     s=x.size()-1;
     while(s>0){
       if ((x[s]>1))
         break;
       s--;
     }
     x[s]--;
 
     sum=1;
     for(int i=s;i<=x.size();i++){
       sum +=x.back();
       x.pop_back();
     }
     for(int d=x[s];sum>0;d--){
       for(int i=1;i<=(int)(sum/d);i++)
         x.push_back(d);
       sum -= (d * (int)(sum/d));
     }
     for(int i=0;i<x.size();i++){
       if(!i)
         cout<<x[i];
       else
         cout<<"+"<<x[i];
     }
     cout<<endl;
   }
 }
 
 int main(int argc,char** argv){
 
   if(argc>2){
     exit(-1);
   }
   else if(argc==1){
     int chislo;
     cout<<"Input number -> ";
     cin>>chislo;
     re_lexograf(chislo);
   }
   else{
     re_lexograf(atoi(argv[1]));
   }
 }
  RT>> $n=5;
  RT>> my @x = ($n);
  RT>> print $x;
  RT>> print $n, "\n";
  RT>> while ( $x[0] > 1 ) {
  RT>>     my $s = $#x;
  RT>>     while ( $s > 0 ) {
  RT>>         last  if $x[$s] > 1;
  RT>>         $s--;
  RT>>     }
  RT>>     $x[$s]--;
  RT>>     my $sum = 1;
  RT>>     $sum += pop @x  foreach $s+1..$#x;
  RT>>     for (my $d = $x[$s]; $sum > 0; $d-- ) {
  RT>>         push (@x, $d) foreach 1 .. int ($sum / $d);
  RT>>         $sum -= $d * int ($sum / $d);
  RT>>     }
  RT>>     print join ('+', @x), "\n";
  RT>> }
 
  AC> --
  AC> Artem Chuprina
  AC> RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757
  AC> --- ifmail v.2.15dev5
  AC>  * Origin: Leninsky 45 home network (2:5020/400)
 
 Roman                                               [tre1@mail.msiu.ru]
 
 xmms: Distemper - Дверь в небо
 Linux 2.4.22 i686
 
 ... [МГИУ] [PlagiatЪ] [ПМиТФ-5102] [Ska-Punk] [SlowlyNet] [LinuxNet]
 --- GoldED+/LNX 1.1.5-030809
  * Origin: Возьму поинтов и нод в SlowlyNet, писать в нетмыло (2:5020/811.13)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 требуется перевести программу с perl на c++   Roman Tuchin   22 Oct 2003 01:02:38 
 Re: требуется перевести программу с perl на c++   Artem Chuprina   22 Oct 2003 13:09:01 
 требуется перевести программу с perl на c++   Roman Tuchin   23 Oct 2003 00:03:18 
 Re: требуется перевести программу с perl на c++   Konstantin Tokar   23 Oct 2003 01:07:58 
 требуется перевести программу с perl на c++   Roman Tuchin   23 Oct 2003 23:14:46 
 Re: требуется перевести программу с perl на c++   Alex Povolotsky   25 Oct 2003 12:53:35 
 Re: требуется перевести программу с perl на c++   Artem Chuprina   23 Oct 2003 13:31:47 
 требуется перевести программу с perl на c++   Roman Tuchin   23 Oct 2003 23:15:36 
 Re: требуется перевести программу с perl на c++   Artem Chuprina   24 Oct 2003 00:59:05 
 Re: требуется перевести программу с perl на c++   Alex Povolotsky   23 Oct 2003 17:07:21 
 требуется перевести программу с perl на c++   Roman Tuchin   23 Oct 2003 23:17:50 
 Re: требуется перевести программу с perl на c++   Alex Povolotsky   25 Oct 2003 12:54:14 
Архивное /ru.perl/38663f96e35b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional