Задачи на языке программирования С++ (repl.it).
Задача 1. Задан массив действительных чисел размерности 10х10. Найти суммы элементов каждой строки, произведения элементов каждого столбца, и максимальный элемент главной диагонали (подсказка: все элементы, для которых номер строки совпадает с номером столбца).
Задача 2. Задан одномерный массив целых чисел. Образуйте из него два отсортированных по возрастанию массива, содержащих четные и нечетные числа.
Задача 3. Задан генератором случайных чисел одномерный массив из действительных чисел. Найдите максимальное и минимальное число этого массива.
Задача 4. Решето Эратосфена число – это любое целое число, которое точно делится без остатка только само на себя и 1. Решето Эратосфена работает следующим образом:
1) Создайте массив, все элементы которого имеют начальное значение 1 (истина). Элементы массива с индексами останутся равными 1. Все другие элементы массива, в конечном счете, установятся равными нулю.
2) Начиная с индекса массива 2 (индекс 1 должен быть каждый раз отыскивается элемент массива с единичным значением, циклически обрабатывается оставшаяся часть массива и устанавливается в нуль каждый элемент массива, чей индекс кратен индексу элемента с единичным значением. Для индекса 2 все элементы в массиве с большим чем 2 индексом и кратные 2 установятся равными нулю (индексы 4, 6, 8, …); для индекса 3 все элементы с индексом свыше 3 и кратные 3, установятся равными нулю (индексы 6, 9, 12, …) и т.д.
3) Когда процесс закончится, элементы массива с единичным значением указывают, что их индексы числа. Эти индексы могут быть напечатаны.
таблица истинности:
X Y Z X+¬Y Z⇒(X+¬Y) ¬X F
0 0 0 1 1 1 1
0 0 1 1 1 1 1
0 1 0 0 1 1 1
0 1 1 0 0 1 1
1 0 0 1 1 0 1
1 0 1 1 1 0 1
1 1 0 1 1 0 1
1 1 1 1 1 0 1
F =1 тождественно истинна ,
так как её значения равны 1 при любых X,Y,Z
type ar=array[1..n+1] of integer;
var
a:ar; i,p:integer;
procedure pr(var a:ar; p:integer; var k:integer);
begin
k:=1;
while a[k]<>p do k:=k+1;
end;
begin
Randomize;
writeln('Массив A:');
for i:=1 to n do
begin
a[i]:=random(31);
write(a[i]:4);
end;
writeln;
p:=17;
a[n+1]:=p;
pr(a,p,i);
if i<n
then writeln('Значение 17 найдено, номер элемента = ',i)
else writeln('Значения 17 в массиве нет');
end.
Пример:
Массив A:
14 5 7 17 25 15 28 0 24 0
Значение 17 найдено, номер элемента = 4