Сделать это в pascal, чтобы можно было выполнить все условия используя следующий фрагмент программы, преобразуйте массив x по указанному ниже правилу, воспользовавшись массивом y как : var х, у: array [1..70] of real; k: 1..69; а) все отрицательные элементы массива x перенесите в его начало, а все остальные — в конец, сохраняя исходное взаимное расположение как среди отрицательных, так и среди остальных элементов; б) элементы массива х циклически сдвиньте на k позиций влево.
240
242
Ответы на вопрос:
{используя следующий фрагмент программы, преобразуйте массив x по указанному ниже правилу, воспользовавшись массивом y как : а) все отрицательные элементы массива x перенесите в его начало, а все остальные — в конец, сохраняя исходное взаимное расположение как среди отрицательных, так и среди остальных элементов; б) элементы массива х циклически сдвиньте на k позиций влево.} var x, y: array [1..70] of real; k: 1..69; n, i,j, k1: integer; c : real; begin writeln('введите кол-во элементов массива'); readln(n); writeln('введите элементы массива'); for i: =1 to n do read(x[i]); k1: =0; {все отрицательные элементы массива x перенесите в начало массива y} for i: =1 to n do if x[i]< 0 then begin k1: =k1+1; y[k1]: =x[i] end; {все не отрицательные элементы массива x переносим в конец массива y} for i: =1 to n do if x[i]> =0 then begin k1: =k1+1; y[k1]: =x[i] end; for i: =1 to n do x[i]: =y[i]; for i: =1 to n do write(x[i]: 8: 2); {б) элементы массива х циклически сдвиньте на k позиций влево.} writeln('введите k'); readln(k); for i: =1 to n do y[i]: =x[i]; for i: =1 to n-k do x[i]: =x[i+k]; for i: =1 to k do x[n-k+i]: =y[i]; for i: =1 to n do write(x[i]: 8: 2); end.
Популярно: Информатика
-
AlenaSey04.11.2022 02:15
-
odin232313.02.2023 11:47
-
235www23.08.2020 13:41
-
НекоТянка6a27.09.2021 05:02
-
vladyakovlev2209.03.2021 18:06
-
HOHLOFF29.06.2023 21:51
-
HiКАK30.05.2022 08:05
-
Попова123413.06.2023 09:23
-
vasyapupkin12121225.05.2022 06:30
-
asfandiyarova2007.09.2022 16:37