1樓:木子日勻
你錯在寫的程式太長了。。。
program asfl;
vars:string;
i,j,b:longint;
a:array[1..10]of longint;
begin
readln(s);
i:=1;
j:=1;
while ibegin
inc(i);
if s[i]='-' then delete(s,i,1);
end;
for i:=1 to 9 do
val(s[i],a[i]);
if s[10]='x' then a[10]:=10 else val(s[10],a[10]);
while j<10 do
begin
b:=a[j]*j+b;
inc(j);
end;
if (b mod 11=a[10])then writeln('right')
else if b mod 11 <10 then writeln(a[1],'-',a[2],a[3],a[4],'-',a[5],a[6],a[7],a[8],a[9],'-',b mod 11)
else writeln(a[1],'-',a[2],a[3],a[4],'-',a[5],a[6],a[7],a[8],a[9],'-','x')
end.
2樓:任其逍遙自在
program p1425;
varb,h,t,k,i:longint;
a:array[1..10] of integer;
s:string;
begin
readln(s);
b:=0;
for i:=1 to 9 do
if s[i]<>'?' then val(s[i],a[i])else begin
k:=i;
h:=11-i;
a[i]:=0;
end;
t:=a[1]*10;
for i:=2 to 9 do t:=t+a[i]*(11-i);
if s[10]<>'?' then
begin
if s[10]='x' then a[10]:=10else val(s[10],a[10]);
t:=t+a[10];
for i:=0 to 9 do
if (i*h+t) mod 11=0 then beginwriteln(i);
break; end
else b:=b+1;
if b=10 then writeln(-1) elseendelse begin
for i:=0 to 10 do
if (t+i) mod 11=0 thenif i=10 then writeln('x')else begin
writeln(i);
break; end
else b:=b+1;
if b=11 then writeln(-1) elseend;
end.
pascal問題,pascal是什麼?
pascal是什麼?pascal是一個多義詞,所代表的意思分別是 1 pascal指的是結構化程式語言 pascal的名稱是為了紀念十七世紀法國著名哲學家和數學家blaise pascal而來的,它由瑞士niklaus wirth教授於六十年代末設計並創立的。2 pasca指的是壓力的國際標準單位 ...
pascal完全揹包問題(很難,pascal 一個完全揹包問題(很難。。。。。。。。)
這有何難.完全揹包的轉移你會吧?這樣不就簡單了,在轉移完成的dp 1.maxv 陣列中,從maxv到1降序查詢每一個dp i 在第一個dp i dp i 1 的地方退出迴圈,此時i即為所求.這個很簡單 可以類比為普通的揹包 將每個物體的體積看做為每個的價值進行dp 用陣列記錄最後輸出最大值即可 va...
pascal程式問題
1.輾轉相除法 用來求公約數 2.整個程式 把每個數除以公約數後得到的都是素數,若是素數就停止。最後的相乘然後又除以5 好像是求相乘後5的倍數的有幾個。不是太懂 輾轉相除法 設兩數為a b b a 求它們最大公約數 a b 的步驟如下 用b除a,得a bq.r 1 0 r 若r1 0,則 a,b b...