1樓:
program p1293;
const maxl = 1000000;
type node = record
ch:char;
l,r:longint;
end;
var s:ansistring;
list:array[1..maxl] of node;
t:longint;
function getlevel(x:char):longint;
begin
case x of
'*','/':exit(3);
'-':exit(1);
'+':exit(1);
end;
end;
procedure work(var s:ansistring);
var now:longint;
begin
inc(t);
now:=t;
list[now].ch:=s[length(s)];
delete(s,length(s),1);
if list[now].ch in ['+','-','*','/'] then begin
list[now].r:=t+1;
work(s);
list[now].l:=t+1;
work(s);
endelse begin
list[now].r:=-1;
list[now].l:=-1;
end;
end;
function outp(x:longint;level:longint;c:longint;d:char):ansistring;
var tmps:ansistring;
nowlevel:longint;
begin
if list[x].ch in ['+','-','*','/'] then begin
nowlevel:=getlevel(list[x].ch);
tmps:=outp(list[x].l,nowlevel,1,list[x].
ch)+list[x].ch+outp(list[x].r,nowlevel,2,list[x].
ch);
if nowlevel tmps:='('+tmps+')'; end; if (nowlevel=level) and (c=2) and (((d='/')and(list[x].ch='*'))or((d='+')and(list[x].ch='-'))or((list[x]. ch='/')and(d='/'))) then begin tmps:='('+tmps+')'; end; endelse tmps:=list[x].ch; outp:=tmps; end; begin readln(s); t:=0; work(s); writeln(outp(1,getlevel(list[1].ch),1,list[1].ch)); end.抄的 2樓:匿名使用者 program bzlx2; vars:array[1..100] of longint; i,j,n,x,k:longint; a:char; begin repeat read(a); if (a>='0') and (a<='9')then begin k:=1; j:=j+1; s[j]:=0; while a<>'.' do begin s[j]:=s[j]*k+(ord(a)-ord('0')); k:=k*10; read(a); end; endelse begin case a of '+':begin x:=s[j]+s[j-1]; j:=j-1; s[j]:=x; end; '-':begin x:=s[j-1]-s[j]; j:=j-1; s[j]:=x; end; '*':begin x:=s[j-1]*s[j]; j:=j-1; s[j]:=x; end; '/':begin x:=s[j] div s[j-1]; j:=j-1; s[j]:=x; end; end; end; until a='@'; writeln(s[j]); end. 如果不想要兩邊的小括號用 string reg d 就可以了 c 如果同一行裡可能有多組括弧的話,必須得用我這個。如果同一行裡只有一組括弧的話,樓上那個也行,當然我這個也行。這是vb的,c 不是這麼寫的 你最好弄明白格式,再來問內容 string s reg regex reg new regex ... 字 符描 述 將下一個字元標記為一個特殊字元 或一個原義字元 或一個後向引用 或一個八進位制轉義符。例如,n 匹配字元 n n 匹配一個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結... 具體回答如圖 找出真值表中使邏輯函式y 1的那些輸人變數取值的組合。每組輸人變數取值的組合對應一個乘積項,其中取值為1的寫為原變數,取值為0的寫為反變數。將這些乘積項相加,即得y的邏輯函式式。需將輸人變數取值的所有組合狀態逐一代人邏輯式求出函式值,列成表,即可得到真值表。先說一下概念吧 常用的邏輯 ...正規表示式,提取括號內的內容,java正規表示式匹配小括號內的內容
求正規表示式 除了漢字以外,所有字元的正規表示式,在js裡面用到
數電真值表寫出邏輯表示式數位電路由真值表如何寫邏輯表示式?