2 числа

Discussion in 'Болталка' started by -Onotole-, 24 Nov 2008.

  1. smOleg

    smOleg Banned

    Joined:
    30 Nov 2007
    Messages:
    69
    Likes Received:
    25
    Reputations:
    -5
    ну так нада было проставить соответствующий тип данных при инициализации переменных :confused:
     
  2. Delimiter

    Delimiter Banned

    Joined:
    8 Apr 2005
    Messages:
    317
    Likes Received:
    173
    Reputations:
    12
    3+5+8-2-7+901-3+36+4995=4841+1095
     
  3. Delimiter

    Delimiter Banned

    Joined:
    8 Apr 2005
    Messages:
    317
    Likes Received:
    173
    Reputations:
    12
    РАЗЛОЖЕНИЕ НА АРИФМЕТИЧЕСКИЕ ЭЛЕМЕНТЫ!
    Code:
    long numb=48411095;
    char str[100];
    struct dcsi
    {
    	char znak;
    	int len;
    	int flag;
    };
    dcsi decision[50];
    long my_step(char *zstr,long rez,int my_level)
    {
    	long l;
    	int len,i;
    	char buf[50];
    	len=strlen(zstr);
    	if(len==0)
    	{
    		i=0;
    		if(rez==numb)
    		{
    			decision[my_level].flag=-1;
    			return 1;
    		}
    		else
    			return -1;
    	}
    	else
    	{
    	  for(i=1,l=-1;i<=len && l==-1;i++)
    	  {
               memmove(buf,zstr,i);
    	   buf[i]=0;
               decision[my_level].znak='+';
    	   decision[my_level].len=i;
    	   decision[my_level].flag=1;
    	   l=my_step(zstr+i,rez+atol(buf),my_level+1);
    
    	   if(l==-1)
    	   {
    	    decision[my_level].znak='-';
    	    decision[my_level].len=i;
    	    decision[my_level].flag=1;
    	    l=my_step(zstr+i,rez-atol(buf),my_level+1);
    	   }
    
    	  }
    	}
    	return l;
    }
    
    ^-- основная рекурсивная функкция
    ................
    
        char dstr[100];
        numb=atol(str2);
        strcpy(str,"358279013364995");
        if(my_step(str,0,0)==1)
    	{
    		for(int i=0;decision[i].flag==1;i++)
    		{
    			printf("%c-%d\r\n",decision[i].znak,decision[i].len);
       		}
    	}
        printf("Finish\r\n");
    
    
    
    
    поскольку с арифметикой не была простора ....деление на крупные единицы не давало результата
    (разбиение на мелкие не даст никогда такой большой цифры 8))) если не использовать умножения).... разбил и второе на 2 слагаемых ВРУЧНУЮ(что первое взбрело в голову)!
     
    #23 Delimiter, 25 Nov 2008
    Last edited: 25 Nov 2008
  4. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
    надо попробывать!
     
    #24 -Onotole-, 25 Nov 2008
    Last edited: 25 Nov 2008
  5. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
    а чем запускать,не пойму...подскажите... Оо
     
  6. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
    так как? :////
     
  7. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
    ... сорри за флуд,и тупой вопрос,но как? Оо никто не знает?
     
  8. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
    ауау..как запустить под вин?
     
  9. Gopar

    Gopar Member

    Joined:
    10 May 2008
    Messages:
    19
    Likes Received:
    10
    Reputations:
    0
    Онотоле Палено хватит уже ***ней страдать...
     
  10. -Onotole-

    -Onotole- Elder - Старейшина

    Joined:
    10 Jun 2008
    Messages:
    44
    Likes Received:
    141
    Reputations:
    8
  11. Delimiter

    Delimiter Banned

    Joined:
    8 Apr 2005
    Messages:
    317
    Likes Received:
    173
    Reputations:
    12
    код дан в рамках Си .... подойдет любой компилятор
     
  12. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    нда, арефметик
     
  13. VERte][

    VERte][ Elder - Старейшина

    Joined:
    17 May 2007
    Messages:
    240
    Likes Received:
    163
    Reputations:
    32
    горе математик) неправильно выносишь если выносишь то будет m(1/m^2)=n(1/n^2) бугага =)
     
  14. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    2 VERte][
    ты считаешь эт круто повторить содержание предыдущего поста?
     
  15. Dian

    Dian Elder - Старейшина

    Joined:
    2 Sep 2008
    Messages:
    57
    Likes Received:
    11
    Reputations:
    4
    Ещё лучше ))

    число деленое само на себя будет 1, от числа не зависит.