ПАСКАЛЬ! Нужна ! значения трех строк заданы в строковых переменных s1, s2 и s3. заполните пропуск фрагмента программы, который в строковой переменной s1 заменяет первое вхождение строковой переменной s2 на s3
p := pos(s2, s1);
delete(s1, p, lenght(s2));
insert( ... );
1) p, s1, s3
2) p, s3, s1
3) s1, s3, p
4) s3, s1, p
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
begin
Writeln('Sпол.неч = ',ArrRandom(50,-10,20).Println
.Where((x,i)->(x>0) and (i.IsEven)).Sum)
end.
Тестовое решение
15 16 0 17 20 7 -3 -4 9 9 -3 -8 14 10 10 11 7 18 -8 8 0 15 1 4 11 1 9 -10 -7 -7 12 17 8 13 7 15 1 13 12 11 4 -5 -3 -6 -5 -10 -9 -8 8 -8
Sпол.неч = 148
2. Длинный "школьный" вариант ("почувствуйте разницу")
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
var
a:array[1..50] of integer;
i,s:integer;
begin
Randomize;
s:=0;
for i:=1 to 50 do begin
a[i]:=Random(31)-10; Write(a[i],' ');
if (a[i]>0) and Odd(i) then s:=s+a[i]
end;
Writeln;
Writeln('Sпол.неч = ',s)
end.
Тестовое решение
4 14 4 7 9 -4 3 6 20 -10 3 -3 15 12 9 0 3 12 13 -1 9 -2 -2 16 18 -2 5 9 17 -3 4 -6 10 10 -5 10 8 13 12 15 13 1 12 1 7 6 9 2 -9 -6
Sпол.неч = 207
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
const int n = 5;
double a[n][n];
double m1, m2;
srand(time(0));
for (int i = 0; i < n; i++){
for (int j = 0; j < n; j++){
a[i][j]=-20 + (101.0 / RAND_MAX) * rand();
cout << fixed << setw (7) << setprecision (2) << a[i][j];
}
cout <<endl;
}
m1=a[0][0];
m2=a[0][n-1];
for (int i = 1; i < n; i++){
if (a[i][i]>m1) m1=a[i][i];
if (a[i][n-i-1]>m2) m2=a[i][n-i-1];
}
cout << "m1=" << m1 << " m2=" << m2 << endl;
}
37.11 71.19 25.77 53.53 35.74
39.90 63.69 11.67 70.38 -4.10
64.46 52.37 35.03 42.58 69.18
44.22 8.46 13.23 71.17 3.10
6.83 65.07 75.24 21.61 37.22
m1=71.17 m2=70.38