1樓:pascal博士
var f:array['a'..'d'] of boolean;
s:longint;
ch:char;
begin
for ch:='a' to 'd' dobegin
f[ch]:=true; //列舉誰是小偷,做標記s:=0; //說真話數量計數器
if not f['a'] then inc(s); //a不是小偷則計數器加一
if f['c'] then inc(s); //c是小偷則s+1if f['d'] then inc(s); //d是小偷則s+1if not f['d'] then inc(s); //d不是小偷則s+1
if s=3 then writeln(ch); //如果說真話的數量有三句說明當前列舉的小偷是正確的
f[ch]:=false; //釋放標記,列舉下個小偷end;
end.
2樓:柏靜佛
var a:array['a'..'d'] of boolean;
s:longint;
i:char;
begin
for i:='a' to 'd' do
begin
a[i]:=true;
s:=0;
if not a['a'] then s:=s+1;
if a['c'] then s:=s+1;
if a['d'] then s:=s+1;
if not a['d'] then s:=s+1;
if s=3 then writeln('xiaotoushi:',i);
a[i]:=false;
end;
readln;
end.
3樓:
begin
write('b');
end.
4樓:匿名使用者
vari:char;
begin
for i:='a' to 'd' do
if (ord(a<>i)+ord(c=i)+ord(d=i)+ord(d<>i))=3
then writeln(i);
end.
pascal程式設計題目,大師解答一下,最好用最簡潔的方法,做上批註。
5樓:匿名使用者
varn,k:integer;
a:array[1..1000] of integer;
s:array[1..1000] of longint;
i,j:integer;
max:longint;
begin
readln(n,k);
for i:=1 to n do read(a[i]);
for i:=1 to n do s[i]:=0;
for i:=1 to n-k+1 do for j:=1 to k do s[i]:=s[i]+a[i+j-1];
max:=s[1];
for i:=2 to n-k+1 do if s[i]>max then max:=s[i];
writeln(max);
end.
pascal 程式設計題 n皇后問題
program tt var a array 1.100 of integer b,c,d array 100.200 of integer t,i,j,k integer procedure print begin t t 1 write t,for k 1 to n do write a k w...
Pascal程式設計牛棚回聲,Pascal程式設計 牛棚回聲
由於兩個字串長度只有80個,所以最實惠的方法是列舉列舉長度l,然後看第一個字串的後l個字元與第二個字串的前l個字串比較,相同即可跳出迴圈 記錄跳出迴圈的l,交換兩個字串 再次進行1操作 比較跳出迴圈的l和剛才記錄的l的大小,取較大者即為答案程式 略 pascal幾個問題 問題a程式 varn int...
PASCAL程式設計問題,PASCAL程式設計問題
我剛剛自己編的 試過了 肯定對 程式中公雞數量為a 母雞數量為b 小雞數量為c 輸出順序為 a1 b1 c1 a2 b2 c2 如下 for迴圈 vara,b,c integer begin for a 1 to 100 div 3 do for b 1 to 100 a div 2 do begi...