-
上下文無(wú)關(guān)文法(Context-Free Grammar, CFG)是一個(gè)4元組G=(V, T, S, P),其中,V和T是不相交的有限集,S∈V,P是一組有限的產(chǎn)生式規(guī)則集,形如A→α,其中A∈V,且α∈(V∪T)*。V的元素稱為非終結(jié)符,T的元素稱為終結(jié)符,S是一個(gè)特殊的非終結(jié)符,稱為文法開始符。
設(shè)G=(V, T, S, P)是一個(gè)CFG,則G產(chǎn)生的語(yǔ)言是所有可由G產(chǎn)生的字符串組成的集合,即L(G)={x∈T* | Sx}。一個(gè)語(yǔ)言L是上下文無(wú)關(guān)語(yǔ)言(Context-Free Language, CFL),當(dāng)且僅當(dāng)存在一個(gè)CFG G,使得L=L(G)。 *⇒
例如,設(shè)文法G:S→AB
A→aA|a
B→bB|b
則L(G)={a^nb^m | n,m>=1}
其中非終結(jié)符都是大寫字母,開始符都是S,終結(jié)符都是小寫字母。
標(biāo)簽:
Context-Free
Grammar
CFG
上傳時(shí)間:
2013-12-10
上傳用戶:gaojiao1999
-
(1) 、用下述兩條具體規(guī)則和規(guī)則形式實(shí)現(xiàn).設(shè)大寫字母表示魔王語(yǔ)言的詞匯 小寫字母表示人的語(yǔ)言詞匯 希臘字母表示可以用大寫字母或小寫字母代換的變量.魔王語(yǔ)言可含人的詞匯.
(2) 、B→tAdA A→sae
(3) 、將魔王語(yǔ)言B(ehnxgz)B解釋成人的語(yǔ)言.每個(gè)字母對(duì)應(yīng)下列的語(yǔ)言.
標(biāo)簽:
字母
tAdA
語(yǔ)言
詞匯
上傳時(shí)間:
2013-12-30
上傳用戶:ayfeixiao
-
1.有三根桿子A,B,C。A桿上有若干碟子
2.每次移動(dòng)一塊碟子,小的只能疊在大的上面
3.把所有碟子從A桿全部移到C桿上
經(jīng)過研究發(fā)現(xiàn),漢諾塔的破解很簡(jiǎn)單,就是按照移動(dòng)規(guī)則向一個(gè)方向移動(dòng)金片:
如3階漢諾塔的移動(dòng):A→C,A→B,C→B,A→C,B→A,B→C,A→C
此外,漢諾塔問題也是程序設(shè)計(jì)中的經(jīng)典遞歸問題
標(biāo)簽:
移動(dòng)
發(fā)現(xiàn)
上傳時(shí)間:
2016-07-25
上傳用戶:gxrui1991
-
1. 下列說法正確的是 ( )
A. Java語(yǔ)言不區(qū)分大小寫
B. Java程序以類為基本單位
C. JVM為Java虛擬機(jī)JVM的英文縮寫
D. 運(yùn)行Java程序需要先安裝JDK
2. 下列說法中錯(cuò)誤的是 ( )
A. Java語(yǔ)言是編譯執(zhí)行的
B. Java中使用了多進(jìn)程技術(shù)
C. Java的單行注視以//開頭
D. Java語(yǔ)言具有很高的安全性
3. 下面不屬于Java語(yǔ)言特點(diǎn)的一項(xiàng)是( )
A. 安全性
B. 分布式
C. 移植性
D. 編譯執(zhí)行
4. 下列語(yǔ)句中,正確的項(xiàng)是 ( )
A . int $e,a,b=10
B. char c,d=’a’
C. float e=0.0d
D. double c=0.0f
標(biāo)簽:
Java
A.
B.
C.
上傳時(shí)間:
2017-01-04
上傳用戶:netwolf
-
This routine calls the glpk library to solve a LP/MIP problem. A typical
LP problem has following structure:
[min|max] C x
s.t.
Ax ["="|"<="|">="] b
{x <= UB}
{x >= LB}
The calling syntax is:
[XMIN,FMIN,STATUS,EXTRA]=glpkmex(SENSE,C,A,B,CTYPE,LB,UB,... VARTYPE,PARAM,LPSOLVER,SAVE)
標(biāo)簽:
problem
following
routine
library
上傳時(shí)間:
2014-12-01
上傳用戶:changeboy
-
#include <stdlib.h>
#include<stdio.h>
#include <malloc.h>
#define stack_init_size 100
#define stackincrement 10
typedef struct sqstack
{
int *base;
int *top;
int stacksize;
} sqstack;
int StackInit(sqstack *s)
{
s->base=(int *)malloc(stack_init_size *sizeof(int));
if(!s->base)
return 0;
s->top=s->base;
s->stacksize=stack_init_size;
return 1;
}
int Push(sqstack *s,int e)
{
if(s->top-s->base>=s->stacksize)
{
s->base=(int *)realloc(s->base,(s->stacksize+stackincrement)*sizeof(int)); if(!s->base)
return 0;
s->top=s->base+s->stacksize;
s->stacksize+=stackincrement;
}
*(s->top++)=e;
return e;
}
int Pop(sqstack *s,int e)
{
if(s->top==s->base)
return 0;
e=*--s->top;
return e;
}
int stackempty(sqstack *s)
{
if(s->top==s->base)
{
return 1;
}
else
{
return 0;
}
}
int conversion(sqstack *s)
{
int n,e=0,flag=0;
printf("輸入要轉(zhuǎn)化的十進(jìn)制數(shù):\n");
scanf("%d",&n);
printf("要轉(zhuǎn)化為多少進(jìn)制:\n"); scanf("%d",&flag);
printf("將十進(jìn)制數(shù)%d 轉(zhuǎn)化為%d 進(jìn)制是:\n",n,flag);
while(n)
{
Push(s,n%flag);
n=n/flag;
}
while(!stackempty(s))
{
e=Pop(s,e);
switch(e)
{
case 10: printf("A");
break;
case 11: printf("B");
break;
case 12: printf("C"); break;
case 13: printf("D"); break;
case 14: printf("E"); break;
case 15: printf("F"); break;
default: printf("%d",e); }
}
printf("\n");
return 0;
}
int main()
{
sqstack s;
StackInit(&s);
conversion(&s);
return 0;
}
標(biāo)簽:
整數(shù)
棧
基本操作
十進(jìn)制
轉(zhuǎn)化
進(jìn)制
上傳時(shí)間:
2016-12-08
上傳用戶:愛你198
-
#include<stdio.h>
#include<windows.h>
int xuanxiang;
int studentcount;
int banjihao[100];
int xueqihao[100][10];
char xm[100][100];
int xuehao[100][10];
int score[100][3];
int yuwen;
int shuxue[000];
int yingyu[100];
int c[100];
int p;
char x[1000][100]="",y[100][100]="";/*x學(xué)院 y專業(yè) z班級(jí)*/
int z[100];
main()
{
void input();
void inputsc();
void alter();
void scbybannji();
printf("--------學(xué)生成績(jī)管理-----\n");
printf("請(qǐng)按相應(yīng)數(shù)字鍵來(lái)實(shí)現(xiàn)相應(yīng)功能\n");
printf("1.錄入學(xué)生信息 2.錄入學(xué)生成績(jī) 3.修改學(xué)生成績(jī)\n");
printf("4.查詢學(xué)生成績(jī) 5.不及格科目及名單 6.按班級(jí)輸出學(xué)生成績(jī)單\n");
printf("請(qǐng)輸入你要實(shí)現(xiàn)的功能所對(duì)應(yīng)的數(shù)字:");
scanf("%d",&xuanxiang);
system("cls");
getchar();
switch (xuanxiang)
{
case 1:input();
case 2:inputsc();
case 3:alter();
/*case 4:select score();
case 5:bujigekemujimingdan();*/
case 6:scbybanji;
}
}
void input()
{
int i;
printf("請(qǐng)輸入你的學(xué)院名稱:");
gets(x);
printf("請(qǐng)輸入你的專業(yè)名稱:");
gets(y);
printf("請(qǐng)輸入你的班級(jí)號(hào):");
scanf("%d",&z);
printf("請(qǐng)輸入你們一個(gè)班有幾個(gè)人:");
scanf("%d",&p);
system("cls");
for(i=0;i<p;i++)
{
printf("請(qǐng)輸入第%d個(gè)學(xué)生的學(xué)號(hào):",i+1);
scanf("%d",xuehao[i]);
getchar();
printf("請(qǐng)輸入第%d個(gè)學(xué)生的姓名:",i+1);
gets(xm[i]);
system("cls");
}
printf("您已經(jīng)錄入完畢您的班級(jí)所有學(xué)生的信息!\n");
printf("您的班級(jí)為%s%s%s\n",x,y,z);
/*alter(p);*/
}
void inputsc()
{
int i;
for(i=0;i<p;i++)
{
printf("\n");
printf("--------------------------------------------------------------------------------\n\n");
printf("\t\t\t\t錄入學(xué)生的成績(jī)\n\n\n");
printf("--------------------------------------------------------------------------------\n\n");
printf("\t\t\t\t%s\n",xm[i]);
printf("\n");
printf("\t\t\t\t數(shù)學(xué):");
scanf("%d",&shuxue[i]);
printf("\n");
getchar();
printf("\t\t\t\t英語(yǔ):");
scanf("%d",&yingyu[i]);
printf("\n");
getchar();
printf("\t\t\t\tc語(yǔ)言:");
scanf("%d",&c[i]);
system("cls");
}
}
void alter()
{
int i;/*循環(huán)變量*/
int m[10000];/*要查詢的學(xué)號(hào)*/
int b;/*修改后的成績(jī)*/
char kemu[20]="";
printf("請(qǐng)輸入你要修改的學(xué)生的學(xué)號(hào)");
scanf("%d",&m);
for (i=0;i<p;i++)
{
if (m==xuehao[i])
{
printf("%s的數(shù)學(xué)成績(jī)?yōu)?d,英語(yǔ)成績(jī)?yōu)?d,c語(yǔ)言成績(jī)?yōu)?d,xm[i],shuxue[i],yingyu[i],c[i]");
printf("請(qǐng)輸入你想修改的科目");}
}
gets(kemu);
getchar();
if (kemu=="數(shù)學(xué)");
{
scanf("%d",&b);
shuxue[i]=b;}
if (kemu=="英語(yǔ)");
{
scanf("%d",&b);
yingyu[i]=b;}
if (kemu=="c語(yǔ)言");
{
scanf("%d",&b);
c[i]=b;
}
printf("%s的數(shù)學(xué)成績(jī)?yōu)?d,英語(yǔ)成績(jī)?yōu)?d,c語(yǔ)言成績(jī)?yōu)?d,xm[i],shuxue[i],yingyu[i],c[i]");
}
void scbybannji()
{
int i;
char zyname[20];
int bjnumber;
printf("請(qǐng)輸入你的專業(yè)名稱");
scanf("%s",&zyname);
printf("請(qǐng)輸入你的班級(jí)號(hào)");
scanf("%d",&bjnumber);
for (i=0;i<p;i++)
{
if (zyname==y[i]);
if (bjnumber==z[i]);
printf("專業(yè)名稱%s班級(jí)號(hào)%d數(shù)學(xué)成績(jī)%d英語(yǔ)成績(jī)%dc語(yǔ)言成績(jī)%d,y[i],z[i],shuxue[i],yingyu[i],c[i]");
}
}
標(biāo)簽:
c語(yǔ)言
上傳時(shí)間:
2018-06-08
上傳用戶:2369043090
-
特點(diǎn)(FEATURES) 精確度0.1%滿刻度 (Accuracy 0.1%F.S.) 可作各式數(shù)學(xué)演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 類比輸出功能(16 bit DAC isolating analog output function) 輸入/輸出1/輸出2絕緣耐壓2仟伏特/1分鐘(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 寬范圍交直流兩用電源設(shè)計(jì)(Wide input range for auxiliary power) 尺寸小,穩(wěn)定性高(Dimension small and High stability)
標(biāo)簽:
微電腦
數(shù)學(xué)演算
輸出
隔離傳送器
上傳時(shí)間:
2013-11-24
上傳用戶:541657925
-
TLC2543是TI公司的12位串行模數(shù)轉(zhuǎn)換器,使用開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程。由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機(jī)I/O資源;且價(jià)格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應(yīng)用。
TLC2543的特點(diǎn)
(1)12位分辯率A/D轉(zhuǎn)換器;
(2)在工作溫度范圍內(nèi)10μs轉(zhuǎn)換時(shí)間;
(3)11個(gè)模擬輸入通道;
(4)3路內(nèi)置自測(cè)試方式;
(5)采樣率為66kbps;
(6)線性誤差±1LSBmax;
(7)有轉(zhuǎn)換結(jié)束輸出EOC;
(8)具有單、雙極性輸出;
(9)可編程的MSB或LSB前導(dǎo);
(10)可編程輸出數(shù)據(jù)長(zhǎng)度。
TLC2543的引腳排列及說明
TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1
TLC2543電路圖和程序欣賞
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit clock=P1^0; sbit d_in=P1^1;
sbit d_out=P1^2;
sbit _cs=P1^3;
uchar a1,b1,c1,d1;
float sum,sum1;
double sum_final1;
double sum_final;
uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar wei[]={0xf7,0xfb,0xfd,0xfe};
void delay(unsigned char b) //50us
{
unsigned char a;
for(;b>0;b--)
for(a=22;a>0;a--);
}
void display(uchar a,uchar b,uchar c,uchar d)
{
P0=duan[a]|0x80;
P2=wei[0];
delay(5);
P2=0xff;
P0=duan[b];
P2=wei[1];
delay(5);
P2=0xff;
P0=duan[c];
P2=wei[2];
delay(5);
P2=0xff;
P0=duan[d];
P2=wei[3];
delay(5);
P2=0xff;
}
uint read(uchar port)
{
uchar i,al=0,ah=0;
unsigned long ad;
clock=0;
_cs=0;
port<<=4;
for(i=0;i<4;i++)
{
d_in=port&0x80;
clock=1;
clock=0;
port<<=1;
}
d_in=0;
for(i=0;i<8;i++)
{
clock=1;
clock=0;
}
_cs=1;
delay(5);
_cs=0;
for(i=0;i<4;i++)
{
clock=1;
ah<<=1;
if(d_out)ah|=0x01;
clock=0;
}
for(i=0;i<8;i++)
{
clock=1;
al<<=1;
if(d_out) al|=0x01;
clock=0;
}
_cs=1;
ad=(uint)ah;
ad<<=8;
ad|=al;
return(ad);
}
void main()
{
uchar j;
sum=0;sum1=0;
sum_final=0;
sum_final1=0;
while(1)
{
for(j=0;j<128;j++)
{
sum1+=read(1);
display(a1,b1,c1,d1);
}
sum=sum1/128;
sum1=0;
sum_final1=(sum/4095)*5;
sum_final=sum_final1*1000;
a1=(int)sum_final/1000;
b1=(int)sum_final%1000/100;
c1=(int)sum_final%1000%100/10;
d1=(int)sum_final%10;
display(a1,b1,c1,d1);
}
}
標(biāo)簽:
2543
TLC
上傳時(shí)間:
2013-11-19
上傳用戶:shen1230
-
摘 要:用一種新的思路和方法,先計(jì)算低通、再計(jì)算高通濾波器的有關(guān)參數(shù),然后組合成帶通濾波器.關(guān)鍵詞:濾波器;參數(shù);新思路中圖分類號(hào): TN713. 5 文獻(xiàn)識(shí)別碼:B 文章編號(hào):1008 - 1666 (1999) 04 - 0089 - 03A New Consideration of the Band Filter’s CalculationGuo Wencheng( S hao Yang B usiness and Technology school , S haoyang , Hunan ,422000 )Abstract :This essay deals with a new method of calculating the band filters - first calculatingthe relevant parameters of low - pass filters ,then calculating the ones of high - pass filters.Key words :filter ; parameters ;new considercation八十年代后,信息產(chǎn)業(yè)得到了迅猛發(fā)展. 帶通濾波器在微波通信、廣播電視和精密儀器設(shè)備中得到了廣泛應(yīng)用. 帶通濾波器性能的優(yōu)劣,對(duì)提高接收機(jī)信噪比,防止鄰近信道干擾,提高設(shè)備的技術(shù)指標(biāo),有著十分重要的意義.我在長(zhǎng)期的教學(xué)實(shí)踐中,用切比雪夫型方法設(shè)計(jì)、計(jì)算出寬帶濾波器集中參數(shù)元件的數(shù)據(jù). 該濾波器可運(yùn)用在檢測(cè)微波頻率的儀器和其他設(shè)備中. 再將其思路和計(jì)算方法介紹給大家,供參考.
標(biāo)簽:
帶通濾波器設(shè)計(jì)
計(jì)算
上傳時(shí)間:
2014-12-28
上傳用戶:Yukiseop