-
var n,max:longint;
beginmax:=-maxlongint;
for i:=1 to n do
if n>max then max:=n;
writeln(max);
end.這是最基本的方法。
-
program p1;
type node=record 這是記錄型別,number 是序號,data 是資料。
number:integer;
data:integer;
end;var a:array[1..1000] of node;
i,j,n:integer;
procedure qsort(h,t:integer);這是快速排序部分。
var i,j,x,y:integer;
begini:=h;
j:=t;x:=a[(i+j) mod 2].data;
while i<=j do
beginwhile a[i].datax do dec(j);
if ih+1 then qsort(h,t-1);
end;開始主程式。
fillchar(a,sizeof(a),0);
readln(n);
for i:=1 to n do
beginread(a[i].data);
a[i].number:=i;
end;write(a[n].number,' ');
for i:=n-1 downto 1 do
if a[i].data<>a[n].data then break
else write(a[i].number,' ');
end.思路:在輸入資料時新增序號字段,在對資料進行排序的同時也帶上序號,因為它是按公升序排列的,所以需要從陣列的末尾開始,從後到前掃瞄,遇到與最大資料相同的資料時輸出序列號,遇到第乙個不同的資料時跳出, 類似於搜尋的修剪思路。這裡使用的知識是快速排序和基於記錄的資料(陣列,你會的)。
祝你OI成功!
-
program maxs;
varn,i,max:longint;
a:array[1..1000] of longint;您可以決定陣列的大小。
beginreadln(n);
for i:=1 to n do
beginread(a[i]);
if a[i]>max then max:=a[i];
end;閱讀並找出最大值。
for i:=1 to n do
if a[i]=max then write(i,' ');使用 for 迴圈掃瞄它,如果 a[i] 是最大值,則輸出。
writeln;
end.
-
這很簡單,找到最大值,然後找到輸出 i,如果第 i 個值是最大值
-
vari,n,m,max,min:longint;
beginreadln(n);
max:=-maxlongint;
min:=maxlonint;初始化。
for i:=1 to n do
beginreadln(m);輸入乙個數字,迴圈 n 次,如果 m>max 則 max:=m;
如果 mwriteln(max) 最大值;
writeln(min);最小。
-
vari,n,max,min:integer;
a:array[1..100]of integer;
beginreadln(n);輸入 n
max:=-maxint+1;初始化。
min:=maxint;初始化。
for i:=1 to n do
beginread(a[i]);讀入每個數字。
if a[i]>max then max:=a[i];如果該數字大於 max,則為 max 分配乙個值
if a[i]end;
writeln(max,' ',min);輸出端
-
首先,讓我們談談隨機函式。
random 生成乙個介於 0 和 1 之間的隨機數(不會取 1)。
random(x) 後跟引數 x(整數)表示生成乙個介於 0 x 之間的隨機數(不會取 x)。
隨機化隨機函式切換,每次設定隨機數時都會將其放在首位。
const maxnum=100;其中 maxnum 表示要隨機生成的數字的大小,請參見上文。
var i,max,min,sum:integer;其中 i 是迴圈變數,max 是最大值,min 是最小值,sum 是總和。
a:array[1..10]of integer;乙個包含 10 個單元格的陣列,用於儲存值。
beginrandomize;開啟隨機開關。
for i:=1 to 10 do begin a[i]:=random(maxnum); sum:=sum+a[i];end;
將陣列中的 10 個單元格指定為隨機數,並將 s 用於求和。
for i:=1 to 10 do write(a[i],'逐個輸出。
writeln;
writeln(sum/10:0:2);計算平均值和輸出(保留小數點後兩位)。
max:=-maxint;min:=maxint;32767 的 maxint 初始化 maxint 是 pascal 預設的常量。
對於 i:=1 到 10 開始遍歷陣列以查詢最大值和最小值。
if a[i]>max then max:=a[i];
if a[i]end;writeln(max,' min);輸出最大值 最小值。
end.如果還有什麼你不知道該怎麼問的。
-
program exam;
var n,i,max:longint;
a:array[1..100000] of longint;
beginwhile not eof do
beginreadln(n);
max:=0-maxlongint;
for i:=1 to n do beginread(a[i]);
if a[i]>max then max:=a[i];
end;readln;
writeln(max);
end;end.
簡單的戰鬥。
資料範圍在所有數字longint的範圍內,如果n小於100,000,則自己更改是不夠的。
-
varl,i,j,t:longint;
a:array[1..1000]of longint;
beginwhile not eoln do
begininc(l);
read(a[l]);
end;for i:=1 to l-1 do
for j:=i+1 to l do
if a[i]writeln(l,' ',a[1]);
end.簡單。
無需輸入 n
輸入變數
l,i,j,t,n:longint;
a:array[1..1000]of longint;
beginreadln(n);
while not eoln do
begininc(l);
read(a[l]);
end;for i:=1 to l-1 do
for j:=i+1 to l do
if a[i]writeln(l,' ',a[1]);
end.
varn,m,i:integer;
t:int64; >>>More
只需使用陣列即可。
var a:array[1..1000]of longint; >>>More
**天賦雙** 專精 指出斧頭和錘子專精 主手拿著BT1號的高潮 副手拿著暴徒掉落的迅捷鋼錘 具體來說,去魔獸戰士找相關崗位。 >>>More