М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Seks7383
Seks7383
29.03.2023 22:41 •  Информатика

Дан двумерный массив. в каждом его столбце найти сумму отрицательных элементов. в паскале. решите быстрее, нужно.

👇
Ответ:
alina15299
alina15299
29.03.2023
// 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.

Пример
Количество строк в массиве: 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 - суммы отрицательных
4,4(78 оценок)
Открыть все ответы
Ответ:
dumargarita
dumargarita
29.03.2023
Const
  gl = ['а', 'е', 'ё', 'и', 'о', 'у', 'ы', 'э', 'ю', 'я'];

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.

Тестовое решение:
Введите первое "слово"
Дай, Джим, на счастье лапу мне!
Введите второе "слово"
Сергей Есенин
Гласные, присутствующие в первом слове и отсутствующие во втором:
а у
4,8(86 оценок)
Ответ:
komandaazart
komandaazart
29.03.2023
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: не совсем понятно последнее задание - вывести нижнюю треугольную матрицу. Сделать новую или что?
4,7(48 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ