亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? treeio.c

?? 簡單遺傳算法經(jīng)典例子!! SGPC: Simple Genetic Programming in C by Walter Alden Tackett and Aviram Carmi
?? C
字號:
/*
SGPC: Simple Genetic Programming in C
(c) 1993 by Walter Alden Tackett and Aviram Carmi
 
 This code and documentation is copyrighted and is not in the public domain.
 All rights reserved. 
 
 - This notice may not be removed or altered.
 
 - You may not try to make money by distributing the package or by using the
   process that the code creates.
 
 - You may not distribute modified versions without clearly documenting your
   changes and notifying the principal author.
 
 - The origin of this software must not be misrepresented, either by
   explicit claim or by omission.  Since few users ever read sources,
   credits must appear in the documentation.
 
 - Altered versions must be plainly marked as such, and must not be
   misrepresented as being the original software.  Since few users ever read
   sources, credits must appear in the documentation.
 
 - The authors are not responsible for the consequences of use of this 
   software, no matter how awful, even if they arise from flaws in it.
 
If you make changes to the code, or have suggestions for changes,
let us know!  (gpc@ipld01.hac.com)
*/

#ifndef lint
static char treeio_c_rcsid[]="$Id: treeio.c,v 2.6 1993/04/22 07:39:12 gpc-avc Exp gpc-avc $";
#endif

/*
 *
 * $Log: treeio.c,v $
 * Revision 2.6  1993/04/22  07:39:12  gpc-avc
 * Removed old log messages
 *
 * Revision 2.5  1993/04/14  04:40:17  gpc-avc
 * Added pop[p].format instead of pop[p].terminal_table[pop[p].terminal_table_size].printname
 * to store the formatting string
 *
 *
 */

#include <stdio.h>
#include <malloc.h>
#include <errno.h>
#include "gpc.h"



#ifdef ANSI_FUNC

int read_terminal_set_values(
  pop_struct 	*pop,
  int 		p,
  FILE 		*f
  )
#else

int read_terminal_set_values(pop,p,f)
  pop_struct	*pop;
  int		p;
  FILE		*f;
#endif
{
  int	i;

  for (i=0; i<pop[p].terminal_table_size; i++) {
    if (fscanf(f,pop[p].format, &(pop[p].terminal_table[i].val)) == EOF) 
      return EOF;
  }
  return 1;
}

#ifdef ANSI_FUNC

VOID load_terminal_set_values(
  pop_struct	*pop,
  int 		p,
  GENERIC 	*v
)
#else

VOID load_terminal_set_values(pop,p,v)
  pop_struct	*pop;
  int		p;
  GENERIC 	*v;
#endif
{
  int	i;

  for (i=0; i<pop[p].terminal_table_size; i++) {
    pop[p].terminal_table[i].val = v[i];
  }
}

#define TRACE 0
#ifdef ANSI_FUNC

tree *read_tree(
  pop_struct 	*pop,
  int 		p,
  FILE 		*f
  )
#else

tree *read_tree(pop,p,f)
  pop_struct 	*pop;
  int		p;
  FILE		*f;
#endif
{
  int	i;
  tree 	*t;
  char	buf[80];
  
  if (fscanf(f,"%1s",buf) == EOF) return (tree *) EOF;
  if (buf[0] == '(') {

    if (TRACE) printf("(");

    fscanf(f,"%1s", buf);
    ungetc(buf[0],f);
    get_next_token(buf, f);

    if (TRACE) printf("%s ",buf);

    t = create_tree_node(p,FUNCTION, lookup_function_name(pop,p,buf));
    for (i=0; i < function_arity(t); i++) {
      t->type.func->arg[i] = read_tree(pop,p,f);
    }

    fscanf(f,")");
    if (TRACE) printf(")\n");

  } else {
    ungetc(buf[0], f);
    get_next_token(buf, f);

    if (TRACE) printf("%s ",buf);

    t = create_tree_node(p,TERMINAL, lookup_terminal_name(pop,p,buf));
    if (terminal_is_constant(t)) {
      sscanf(buf, pop[p].format, (t->type.term->valptr));
    }
  }
  return(t);
}

#ifdef ANSI_FUNC

VOID write_tree(
  pop_struct	*pop,
  tree 		*t,
  char		*format,
  FILE 		*f
  )
#else

VOID write_tree(pop, t, format, f)
  pop_struct 	*pop;
  tree		*t;
  char		*format;
  FILE		*f;
#endif
{
  pprint_tree(pop, t, format, f, 0);
}

#ifdef ANSI_FUNC

VOID pprint_tree(
  pop_struct	*pop,
  tree 		*t,
  char		*format,
  FILE 		*f,
  int 		level
  )
#else

VOID pprint_tree(pop, t, format, f, level)
  pop_struct 	*pop;
  tree		*t;
  char		*format;
  FILE		*f;
  int		level;
#endif
{
  int	i;
    
  blanks(level,f);
  if (t->nodetype == FUNCTION) {
    fprintf(f,"(%s\n",function_printname(t));
    for (i=0; i<function_arity(t); i++) {
      pprint_tree(pop, t->type.func->arg[i], format, f, level+INDENT);
      if (i == (function_arity(t)-1))
	fprintf(f,")");  
      else 
	fprintf(f,"\n");
    }
  } else if (t->nodetype == TERMINAL) {
    if (t->id == pop[t->pop].terminal_table_size) { /* a constant */
      fprintf(f, format, *(t->type.term->valptr));
    } else {
      fprintf(f,"%s",terminal_printname(t));
    }
  } else {
    fprintf(stderr,
	    "nodetype %d must be %d or %d in pprint_tree() <treeio.c>\n",
	    t->nodetype, FUNCTION, TERMINAL);
  }
  if (!level) fprintf(f,"\n");
}

#ifdef ANSI_FUNC

int lookup_function_name(
  pop_struct 	*pop,
  int 		p,
  char 		*buf
  )
#else

int lookup_function_name(pop,p,buf)
  pop_struct	*pop;
  int		p;
  char		*buf;
#endif
{
  int	i;

  for (i=0; i<pop[p].function_table_size; i++) {
    if (!strcasecmp(buf, pop[p].function_table[i].printname)) {
      return(i);
    }
  }

  fprintf(stderr,"%s not found in function_table[%d]\n",buf,p);
  exit(1);
  return(-1); /* make lint happy */
}

#ifdef ANSI_FUNC

int lookup_terminal_name(
  pop_struct	*pop,
  int 		p,
  char 		*buf
  )
#else

int lookup_terminal_name(pop,p,buf)
  pop_struct 	*pop;
  int		p;
  char		*buf;
#endif
{
  int	i;

  for (i=0; i<pop[p].terminal_table_size; i++) {
    if (!strcasecmp(buf, pop[p].terminal_table[i].printname)) {
      return(i);
    }
  }
  /* Assume that buf is a constant value */
  return(pop[p].terminal_table_size);
}

#ifdef ANSI_FUNC

VOID get_next_token(
	char *buf,
	FILE *f
	)
#else

VOID get_next_token(buf,f)
  char 	*buf;
  FILE	*f;
#endif
{
  int	ibuf;
  int	i = 0;

  while ((ibuf = getc(f)) != EOF) {
    if (isspace((char) ibuf)) {
      buf[i] = '\0';
      break;
    } else if (((char) ibuf) == ')') {
      ungetc((char) ibuf, f);      
      buf[i] = '\0';
      break;
    } else {
      buf[i++] = (char) ibuf;
    }
  }
}

#ifdef ANSI_FUNC

VOID blanks(
	int n,
	FILE *f
	)
#else

VOID blanks(n,f)
  int	n;
  FILE	*f;
#endif
{
  int	i;

  for (i=0; i<n; i++) fprintf(f," ");
}

 == ')') {
      ungetc((char) ibuf, f);      
      buf[i] = '\0';
      break;
    } else {
      buf[i++] = (char) ibuf;
    }
  }
}

#ifdef ANSI_FUNC

VOID blanks(
	int n,
	FILE *f
	)
#else

VOID blanks(n,f)
  int	n;
  FILE	*f;
#endif
{
  int	i;

  for (i=0; i<n; i++) fprintf(f," ");
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区黄色| 欧美日韩精品系列| 亚洲男人的天堂一区二区| 国产精品综合av一区二区国产馆| 久久精品人人做| 在线免费av一区| 精品在线播放免费| 一区二区在线观看av| 精品精品欲导航| 日本韩国一区二区三区| 精品亚洲成av人在线观看| 日韩一区欧美小说| 欧美大度的电影原声| 色综合久久中文字幕综合网| 日韩精品电影在线| 最新中文字幕一区二区三区| 日韩午夜电影av| 一本到三区不卡视频| 国产资源在线一区| 午夜精品久久久久久久99樱桃| 亚洲三级电影网站| 欧美一区二区免费观在线| 91亚洲永久精品| 国产美女精品一区二区三区| 亚洲高清中文字幕| 国产精品久久久久影院亚瑟 | 亚洲天堂2014| 亚洲精品一区二区三区福利| 欧美日本精品一区二区三区| 成人激情免费电影网址| 精品亚洲国内自在自线福利| 亚洲第一福利一区| 亚洲人午夜精品天堂一二香蕉| 2020国产精品自拍| 宅男在线国产精品| 欧美性xxxxx极品少妇| 99久久99久久久精品齐齐| 国产盗摄一区二区| 激情小说欧美图片| 精品影视av免费| 蜜臀a∨国产成人精品| 亚洲国产wwwccc36天堂| 日韩理论在线观看| 中文字幕一区二区三区av| 久久久久久久久岛国免费| 欧美成人官网二区| 日韩一二三四区| 日韩一区二区精品| 欧美一三区三区四区免费在线看| 欧美日韩在线播| 欧美三级日韩三级| 欧美三电影在线| 欧美日韩高清在线| 制服丝袜日韩国产| 7777精品伊人久久久大香线蕉完整版| 欧美四级电影网| 欧美精品久久天天躁| 欧美午夜在线观看| 欧美日韩国产色站一区二区三区| 欧美日韩在线播放三区四区| 欧美日韩一区小说| 91麻豆精品91久久久久同性| 在线成人免费观看| 日韩精品专区在线影院重磅| 欧美tickling网站挠脚心| 26uuu精品一区二区| 2021久久国产精品不只是精品| 国产午夜精品理论片a级大结局| 久久免费精品国产久精品久久久久| 欧美成人a视频| 国产色一区二区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 亚洲天堂精品视频| 亚洲国产视频一区二区| 丝瓜av网站精品一区二区| 日韩综合在线视频| 国产真实乱子伦精品视频| 成人黄色综合网站| 在线观看网站黄不卡| 在线不卡的av| 久久久电影一区二区三区| ...xxx性欧美| 丝袜脚交一区二区| 国产成人精品aa毛片| 色婷婷综合久色| 制服视频三区第一页精品| 久久这里都是精品| 亚洲视频免费观看| 捆绑变态av一区二区三区| 成人一区二区三区中文字幕| 日本道精品一区二区三区 | 麻豆91在线播放| 岛国一区二区在线观看| 欧美性猛交一区二区三区精品 | 精品av综合导航| 亚洲色图欧美激情| 蜜臀av一区二区在线免费观看| 成人丝袜高跟foot| 欧美精品久久99久久在免费线| 26uuu欧美| 一区二区三区中文免费| 九九九精品视频| 一道本成人在线| 精品国产自在久精品国产| 亚洲色图欧美偷拍| 黄色日韩网站视频| 欧美三电影在线| 中文字幕国产精品一区二区| 视频一区视频二区中文字幕| 成人激情文学综合网| 欧美一卡二卡在线观看| 中文字幕中文字幕在线一区| 日韩中文欧美在线| 一本高清dvd不卡在线观看| 久久综合狠狠综合| 日韩精品三区四区| 色偷偷一区二区三区| 国产网红主播福利一区二区| 日韩精品电影在线| 一本到高清视频免费精品| 久久精品男人天堂av| 日日噜噜夜夜狠狠视频欧美人| 99精品久久免费看蜜臀剧情介绍| 欧美大胆一级视频| 婷婷夜色潮精品综合在线| av亚洲精华国产精华精| 久久亚洲一区二区三区明星换脸| 亚洲高清视频在线| 日本久久电影网| 亚洲色图在线视频| www.欧美色图| 国产亚洲制服色| 韩国成人在线视频| 日韩欧美成人激情| 青青草原综合久久大伊人精品优势| 在线观看91视频| 一区二区三区在线免费视频| 9i看片成人免费高清| 国产精品色呦呦| 国产99久久久国产精品潘金| wwwwxxxxx欧美| 精品亚洲porn| 精品国产乱码久久| 精品一区二区三区免费| 精品久久国产字幕高潮| 久久精品国产精品亚洲精品| 欧美一区二区三区性视频| 天堂蜜桃91精品| 91麻豆精品国产自产在线观看一区| 亚洲一区成人在线| 欧美日韩另类国产亚洲欧美一级| 亚洲综合色丁香婷婷六月图片| 色悠悠久久综合| 亚洲精品日韩综合观看成人91| 一本色道久久综合狠狠躁的推荐 | 国内精品写真在线观看| 日韩欧美激情在线| 精品在线视频一区| 久久久久久电影| 高清成人免费视频| 中文字幕一区二区三区在线观看 | 亚洲最新视频在线播放| 色域天天综合网| 亚洲国产人成综合网站| 欧美精品国产精品| 精品综合久久久久久8888| 久久嫩草精品久久久精品一| 国产成人丝袜美腿| 亚洲欧洲精品一区二区三区 | 国产精品免费久久久久| 成人午夜在线播放| 性做久久久久久| 五月天一区二区| 日韩午夜av电影| 国产精品系列在线观看| 国产精品五月天| 欧美亚洲一区三区| 热久久国产精品| 国产性天天综合网| 色婷婷综合久久久久中文 | 在线视频国产一区| 日韩精品一卡二卡三卡四卡无卡| 五月婷婷久久综合| 久久久久久久免费视频了| 在线免费观看成人短视频| 精品国产凹凸成av人导航| 国产精品白丝jk黑袜喷水| 亚洲欧美成aⅴ人在线观看| 欧美美女喷水视频| 国产精品一级黄| 亚洲香肠在线观看| 亚洲精品一区二区三区四区高清 | 亚洲精品高清在线| 欧美巨大另类极品videosbest| 久久精品国产免费看久久精品| 国产精品三级av在线播放| 色婷婷精品久久二区二区蜜臀av| 日本sm残虐另类| 日韩毛片精品高清免费| 日韩精品自拍偷拍|