// PascalABC.NET 3.2, сборка 1447 от 22.05.2017 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('Количество строк в массиве:'); var m:=ReadInteger('Количество колонок в массиве:'); Writeln('*** Исходный массив [',n,',',m,'] ***'); var a:=MatrRandom(n,m,-99,99); a.Println(5); Writeln(5*a.ColCount*'-'); a.Cols.Select(x->Format('{0,5}',x.Where(y->y<0).Sum)).Print(''); Println(' - суммы отрицательных'); end.
var w1, w2: string; m: set of char; c: char; i: integer;
begin Writeln('Введите первое "слово"'); Readln(w1); Writeln('Введите второе "слово"'); Readln(w2); m := []; w1 := LowerCase(w1);w2 := LowerCase(w2); for i := 1 to length(w1) do if w1[i] in gl then Include(m, w1[i]); for i := 1 to length(w2) do if w2[i] in m then Exclude(m, w2[i]); Writeln('Гласные, присутствующие в первом слове и отсутствующие во втором:'); foreach c in m do Write(c, ' '); Writeln end.
Тестовое решение: Введите первое "слово" Дай, Джим, на счастье лапу мне! Введите второе "слово" Сергей Есенин Гласные, присутствующие в первом слове и отсутствующие во втором: а у
Var A: array[1..20, 1..20] of integer; m, n, k, i, j: integer; begin randomize; repeat write('Введите число столбцов и строк через пробел: '); readln(n, m); until (n in [1..20]) and (m in [1..20]); for i := 1 to m do begin for j := 1 to n do begin A[ i, j ] := random(19) - 9; write(A[i, j]:5); end; if odd(i) then writeln(' ') else writeln; end; writeln; writeln('Заменяем отрицательные числа на нули, положительные - на единицы:'); writeln; for i := 1 to m do begin for j := 1 to n do begin if A[ i, j ] <= 0 then A[ i, j ] := 0 else A[ i, j ] := 1; write(A[i, j]:5); end; if odd(i) then writeln(' ') else writeln; end; end.
p.s: не совсем понятно последнее задание - вывести нижнюю треугольную матрицу. Сделать новую или что?
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк в массиве:');
var m:=ReadInteger('Количество колонок в массиве:');
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(5); Writeln(5*a.ColCount*'-');
a.Cols.Select(x->Format('{0,5}',x.Where(y->y<0).Sum)).Print('');
Println(' - суммы отрицательных');
end.
Пример
Количество строк в массиве: 5
Количество колонок в массиве: 9
*** Исходный массив [5,9] ***
-43 -96 34 82 3 92 -59 31 35
65 94 76 66 90 -39 26 -24 83
73 -92 94 -94 44 -35 -66 87 -46
90 56 -37 -60 -9 94 9 -76 -58
-16 97 65 -21 -86 64 -20 46 -26
-59 -188 -37 -175 -95 -74 -145 -100 -130 - суммы отрицательных