Const n = 10; var a:array[1..n]of integer; min,imin,i,oldmin:integer; begin //Заполнение массива значениями в диапазоне //от -100 до 100 //и одновременно находим минимальный элемент элемент min:=100; for i:=1 to n do begin a[i]:=random(201)-100; if a[i]<= min then begin min:=a[i]; imin:=i;//Запомним index минимального end; write(a[i]:5); end; writeln;
//В цикле сдвигаем элементы массива //до индекса минимального включительно на //одну позицию вправо for i:=imin downto 2 do a[i]:=a[i-1]; a[1]:=min; //вывод элементов массива for i:=1 to n do write(a[i]:5); end.
abroskin2002
09.01.2022
Вот решение на C++:
#include <iostream> #include <cstdlib> #include <ctime> using namespace std;
int main() { int n=0; cout <<"Введите размер массива: "; cin >>n; if (n<1) { cout <<"Массив не может быть пустым!"; return 1; }
int a[n]; srand(time(0)); for (int i=0; i<n; i++) { int r=rand()%271-100; a[i]=r; }
int min=170; for (int i=0; i<n; i++) { if ((a[i]>0) and (a[i]<min)) min=a[i]; }
cout <<"Минимальный положительный элемент иассива: " <<min <<endl;
return 0; }
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Чему равна сумма элементов массива от a[1] до a[4], сформированного следующим образом: for i: =1 to 4 do a[i]: =i*(i+2);