Program test; var n,i,min,max:integer; a:array[1..4] of integer; begin for i:=1 to 4 do begin readln(a[i]); if i=1 then begin min:=a[i];max:=a[i]; end else begin if a[i]>max then max:=a[i] else if a[i]<min then min:=a[i] end; end; writeln('Максимальное значение ',max); writeln('Минимальное значение ',min); end.
Возможно, не самое эффективное решение #include <iostream> #include <cstdlib> #include <ctime> int main() { using namespace std; const int N = 10; int A[N]; srand(time(0)); for (int i = 0; i < N; ++i) A[i] = rand() % 201 - 100;
//Вывод исходного массива на экран for (int i = 0; i < N; ++i) cout << A[i] << " "; cout << endl;
//Подсчитаем количества положительных и отрицательных int kpos = 0, kneg = 0; for (int i = 0; i < N; i++) if (A[i] > 0) ++kpos; else ++kneg;
int * Apos = new int[kpos]; int * Aneg = new int[kneg]; int pos = 0, neg = 0; for (int i = 0; i < N; ++i) if (A[i] > 0) Apos[pos++] = A[i]; else Aneg[neg++] = A[i];
for (int i = 0; i < N; ++i) if (i < kpos) A[i] = Apos[i]; else A[i] = Aneg[i - kpos];
delete[] Apos; delete[] Aneg;
//Вывод полученного массива на экран for (int i = 0; i < N; ++i) cout << A[i] << " "; cout << endl; return 0; }
var
n,i,min,max:integer;
a:array[1..4] of integer;
begin
for i:=1 to 4 do begin
readln(a[i]);
if i=1 then begin
min:=a[i];max:=a[i];
end
else
begin
if a[i]>max then max:=a[i]
else if a[i]<min then min:=a[i]
end;
end;
writeln('Максимальное значение ',max);
writeln('Минимальное значение ',min);
end.