// PascalABC.NET 3.2, сборка 1483 от 14.06.2017 // Внимание! Если программа не работает, обновите версию!
begin Write('Количество строк и столбцов в массиве:'); var (n,m):=ReadInteger2; Writeln('*** Исходный массив [',n,',',m,'] ***'); var a:=MatrRandom(n,m,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var t:=a.ElementsWithIndexes.Where(x->x[0] mod 5=0).Take(1); a.SwapRows((t.First)[1],n-1); Writeln('*** Результирующий массив ***'); a.Println(4) end.
Пример Количество строк и столбцов в массиве:4 5 *** Исходный массив [4,5] *** -32 -12 94 -28 -42 -15 29 80 28 -69 -5 68 63 -12 22 59 84 65 14 -86
Точнее сказать - чем word отличается от программы Writer из пакета OpenOffice. Word имеет больше функций. Это важно тем, кто много профессионально работает с текстами. Кстати, Word 2010 умеет сохранять в PDF. Зато Writer может читать все форматы Word, а Word не может читать формат Writer - формат .odt. Word - платный. Если сравнивать OpenOffice с Word 2007 и выше, то они отличаются друг от друга совершенно разным расположением кнопочек и панелей. Если ты привык к Word, то тяжело привыкать к OpenOffice. И наоборот. Это я знаю по себе. Но это - дело привычки. Есть целые предприятия, которые перешли но OpenOffice. Еще могу сказать, что Writer дольше запускается. Правда, потом работает без тормозов. Вывод: нельзя сказать, какой лучше. Если для себя - то достаточно OpenOffice поставить, ибо он уже стабильный и по-честному бесплатный.
Var arr: array[1..27] of integer; summ: integer; begin Randomize; for var i := 1 to 27 do begin arr[i] := random(-5, 5); summ := summ + arr[i]; end; writeln('Массив: ',arr); writeln('Сумма всех элементов массива = ',summ); for var i := 1 to 27 do if arr[i] = 0 then arr[i] := summ; writeln('Массив: ',arr); end.
пример работы: Массив: [5,-1,1,5,4,-2,-3,0,3,5,-3,-4,3,0,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1] Сумма всех элементов массива = 14 Массив: [5,-1,1,5,4,-2,-3,14,3,5,-3,-4,3,14,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1]
var arr: array of integer; n,k,m: integer; begin write('Введи n: '); readln(n); Randomize; arr:= new integer[n]; for var i := 0 to n-1 do arr[i] := random(-5, 5); writeln('Массив: ',arr); for var i := 0 to n-1 do begin if arr[i]<0 then inc(k); if (i>=1) and (i<=6) then inc(m); if (i>=6) and (arr[i]>=0) then arr[i]:=1; end; writeln('Количество отрицательных элементов массива = ',k); writeln('Количество элементов массива в интервале [2..7] = ',m); writeln('Массив: ',arr); end.
Пример работы: Введи n: 5 Массив: [0,1,-4,1,3] Количество отрицательных элементов массива = 1 Количество элементов массива в интервале [2..7] = 4 Массив: [0,1,-4,1,3]
Введи n: 15 Массив: [0,1,4,3,-3,5,-4,-1,1,-2,3,1,-4,1,3] Количество отрицательных элементов массива = 5 Количество элементов массива в интервале [2..7] = 6 Массив: [0,1,4,3,-3,5,-4,-1,1,-2,1,1,-4,1,1]
// Внимание! Если программа не работает, обновите версию!
begin
Write('Количество строк и столбцов в массиве:');
var (n,m):=ReadInteger2;
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var t:=a.ElementsWithIndexes.Where(x->x[0] mod 5=0).Take(1);
a.SwapRows((t.First)[1],n-1);
Writeln('*** Результирующий массив ***'); a.Println(4)
end.
Пример
Количество строк и столбцов в массиве:4 5
*** Исходный массив [4,5] ***
-32 -12 94 -28 -42
-15 29 80 28 -69
-5 68 63 -12 22
59 84 65 14 -86
*** Результирующий массив ***
-32 -12 94 -28 -42
59 84 65 14 -86
-5 68 63 -12 22
-15 29 80 28 -69