Программа На C++ Дана прямоугольная матрица размерности MxN "A". Вводится дополнительный массив "B" разрешенных значений. Создать новый массив “C”, где C[I] – количество элементов I-той строки исходной матрицы "A", имеющих неразрешенные значения
// PascalABC.NET 3.2, сборка 1387 от 17.02.2017 // Внимание! Если программа не работает, обновите версию!
1) begin var a,b:real; Read(a,b); if (a>0) and (b>0) then Writeln('Произведение равно ',a*b) else Writeln('Сумма квадратов равна ',a*a+b*b) end.
2) begin var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println; for var i:=0 to a.Length-1 do if i.IsOdd then a[i]:=0 else if (i+1) mod 5 =0 then a[i]*=2; a.Println; end.
Замечание "Каждый второй" и "каждый пятый" дают пересечение на каждом десятом. И получается. что каждый десятый элемент должен быть обнулён. как каждый второй и удвоен, как каждый пятый, так что все равно получим ноль.
#include <iostream>
#include <vector>
#include <random>
#include <ctime>
using namespace std;
void solve(){
srand(time(NULL));
const int N = 10;
vector<int> a(N), d(N + 1, 0);
for(int i = 0; i < N; i++){
a[i] = rand() % 100 + 1;
d[i + 1] = d[i] + a[i];
cout << a[i] << " ";
}
int firstIndex = -1, lastIndex = -1;
for(int i = 0; i < N; i++){
if(!(a[i] & 1)){
if(firstIndex < 0)
firstIndex = i;
lastIndex = i;
}
}
cout << "\n" << d[lastIndex + 1] - d[firstIndex];
}
int main(){
solve();
}
// Внимание! Если программа не работает, обновите версию!
1)
begin
var a,b:real;
Read(a,b);
if (a>0) and (b>0) then Writeln('Произведение равно ',a*b)
else Writeln('Сумма квадратов равна ',a*a+b*b)
end.
2)
begin
var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
for var i:=0 to a.Length-1 do
if i.IsOdd then a[i]:=0
else
if (i+1) mod 5 =0 then a[i]*=2;
a.Println;
end.
Пример
n= 17
7 -49 -21 84 87 12 27 86 -29 -55 -32 -83 -24 96 -3 -3 -78
7 0 -21 0 174 0 27 0 -29 0 -32 0 -24 0 -6 0 -78
Замечание
"Каждый второй" и "каждый пятый" дают пересечение на каждом десятом. И получается. что каждый десятый элемент должен быть обнулён. как каждый второй и удвоен, как каждый пятый, так что все равно получим ноль.