for var l:=N.Low to N.High do N[l]:=(N[l] mod 2 = 0)? Q:N[l];
writeln('Полученный массив: ',N);
end.
Объяснение:
var N: array of integer; Вводим наш массив с числами
SetLength(N,16); Устанавливаем его длину, 0 - первый элемент, 15 - последний, итого 16 ячеек
N.FillRandom(1,11); Заполняем массив случайным образом числами от 1 до 11
var Q:=N.FindAll(x -> x mod 2 = 0).Length; Находим количество четных элементов. x mod 2 остаток от деления каждого элемента на 2
{Процедура FindAll заносит все значения, по условию в отдельный массив, через .Length смотрим его длину}
writeln('Количество четных элементов:',Q);
N.Sort; Reverse(N); N.Sort - сортирует массив по возрастанию, а reverse() меняет последовательность на противоположную, соответственно, теперь он отсортирован по убыванию
for var l:=N.Low to N.High do N[l]:=(N[l] mod 2 = 0)? Q:N[l]; От начала массива и до его конца, над каждым элементом смотрим - четный он или нет, если четный - заменяем на Q (число элементов)
#include <iostream>
using namespace std;
int main() {
int n, a, b, c, s = 0;
cin >> a >> b >> c >> n;
for (int na = 0; na <= n / a; na++) {
for (int nb = 0; nb <= (n - a * na) / b; nb++) {
int kk = n - na * a - nb * b;
if (kk >= 0 and kk % c == 0) s++;
}
}
cout << s << endl;
for (int na = 0; na <= n / a; na++) {
for (int nb = 0; nb <= (n - a * na) / b; nb++) {
int ll = n - na * a - nb * b;
if (ll >= 0 and ll % c == 0)
cout << na << " " << nb << " " << ll / c << endl;
}
}
}
Объяснение:
Зашло на
begin
var N: array of integer;
SetLength(N,16);
N.FillRandom(1,11);
var Q:=N.FindAll(x -> x mod 2 = 0).Length;
writeln('Количество четных элементов:',Q);
N.Sort; Reverse(N);
for var l:=N.Low to N.High do N[l]:=(N[l] mod 2 = 0)? Q:N[l];
writeln('Полученный массив: ',N);
end.
Объяснение:
var N: array of integer; Вводим наш массив с числами
SetLength(N,16); Устанавливаем его длину, 0 - первый элемент, 15 - последний, итого 16 ячеек
N.FillRandom(1,11); Заполняем массив случайным образом числами от 1 до 11
var Q:=N.FindAll(x -> x mod 2 = 0).Length; Находим количество четных элементов. x mod 2 остаток от деления каждого элемента на 2
{Процедура FindAll заносит все значения, по условию в отдельный массив, через .Length смотрим его длину}
writeln('Количество четных элементов:',Q);
N.Sort; Reverse(N); N.Sort - сортирует массив по возрастанию, а reverse() меняет последовательность на противоположную, соответственно, теперь он отсортирован по убыванию
for var l:=N.Low to N.High do N[l]:=(N[l] mod 2 = 0)? Q:N[l]; От начала массива и до его конца, над каждым элементом смотрим - четный он или нет, если четный - заменяем на Q (число элементов)
writeln('Полученный массив: ',N);