Minmax6. Дано целое число N и набор из N целых чисел. Найти номера первого минимального и последнего максимального элемента из данного набора и вывести их в указанном порядке.
>Решение Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | program MinMax6; var R,Min,Max:Real; i,N,MinNum,MaxNum:Integer; begin Write('N:'); Readln(N); for i:=1 to N do begin Write(i,' число:'); Readln(R); if i=1 then begin Min:=R; Max:=R; MaxNum:=i; MinNum:=i; end; if R<Min then begin Min:=R; MinNum:=i; end; if R>=Max then begin Max:=R; MaxNum:=i; end; end; Writeln(MinNum,' ',MaxNum); end. |
>
Решение C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <stdio.h> int main(void) { int i,n,minnum,maxnum,r,min,max; printf("N:"); scanf("%i", &n); for (i=1;i<=n;++i){ printf("%i>",i); scanf("%i", &r); if ((i==1)||(r<min)){ min=r; minnum=i; } if ((i==1)||(r>=max)){ max=r; maxnum=i; } } printf("%i %i\n", minnum,maxnum); return 0; } |
int i, n, minnum, maxnum, r, min, max, flag = 1;
printf(«N:»);
scanf(«%i», &n);
for (i = 1; i «, i);
scanf(«%i», &r);
if (((i == 1) || (r = max)) {
max = r;
maxnum = i;
}
}
printf(«%i %i\n», minnum, maxnum);
#include
#include
#include
using namespace std;
int main() {
srand(time(0));
int N, imin = 0, imax = 0;
cin >> N;
int* A = new int[N];
for (int i = 0; i < N; i++) {
A[i] = rand() % 100 + 1;
cout << A[i] << " ";
}
cout << endl;
for (int i = 0; i < N; i++) {
if (A[i] = A[imax]) {
imax = i;
}
}
cout <<"Fist min element: "<< imin << endl;
cout << "Second max element: " << imax << endl;
return 0;
}
for (int i = 0; i < N; i++) {
if (A[i] = A[imax]) {
imax = i;
}
}
Там должно быт так
for (int i = 0; i < N; i++)
if (A[i] = A[imax])
imax = i;
if (A[i] >= A[imax]) {
imax = i;
}