Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 14.12.2012
Сообщений: 9

Возвести в квадрат все отрицательные элементы матрицы

14.12.2012, 11:07. Показов 1775. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ввести двумерный массив A , вывести его. Если в массиве больше
положительных элементов, то поменять максимальный элемент среди
элементов над главной диагональю с максимальным элементом под ней,
иначе возвести в квадрат все отрицательные.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
program ABC;
const Nmass=10;
var A:array[1..Nmass,1..Nmass] of integer;
P,O,N:integer;
M,i,j,k,Imax,Jmax,Pmax: byte;
begin
cls;
//Ручной ввод массива
writeLn('Введте число элементов в массивеA');
readLn(N,M);
writeLn('вводим элементы массива A:');
for i:=1 to N do
for j:=1 to M do
begin
write('A[',i,',',j,']=');
readLn(A[i,j]);
end;
//вывод массива до изменения
writeLn('Èñõîäíûé ìàññèâ A:');
for i:=1 to N do
begin
for j:=1 to M do
write(A[i,j]:5);
writeLn;
end;
// количество положительных и отрицательных элементов массива
Begin
P:= 0;
O:= 0;
for i:=1 to N do
for j:=1 to M do
if A[i,j]>0 then
P:=P+1
else
If A[i,j]<0 then
O:=O+1;
end;
writeln(количество положительных', P);
writeln('количество отрицательных ', O);
end;
далее помогите пожалуйста, мозг кипит(
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.12.2012, 11:07
Ответы с готовыми решениями:

Возвести в квадрат все отрицательные элементы массива
В-9 Тема- &quot;одномерные числовые массивы&quot;. Указания: для каждой задачи создайте алгоритм и программу. Заполните одномерный числовой массив...

Все положительные элементы массива возвести в квадрат, а отрицательные в куб
Дан массив Y. Все положительные элементы массива возвести в квадрат, а отрицательные в куб. Вывести в файл старый и новый массивы, а также...

Все положительные элементы массива возвести в квадрат, а отрицательные в куб
1)Дан массив Y. Все положительные элементы массива возвести в квадрат, а отрицательные в куб. Вывести в файл старый и новый массивы, а...

2
181 / 179 / 23
Регистрация: 29.08.2012
Сообщений: 489
14.12.2012, 15:38
Самому не понравилось, но не хочется оптимизировать.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
program ABC;
 
const
  Nmass = 10;
 
var
  A: array[1..Nmass, 1..Nmass] of smallint;
  max: shortint;
  P: integer;
  i, j, ind_i_N, ind_j_N, ind_i_V, ind_j_V: byte;
 
procedure ln();
var
  i: byte;
begin
  for i := 1 to 60 do
    write('-');
  writeln;
  
end;
 
begin
  cls;
  ln();
  writeLn('Исходный массив:');
  ln();
  randomize;
  for i := 1 to Nmass do
  begin
    for j := 1 to Nmass do
    begin
      A[i, j] := random(254) - 128;
      write(A[i, j]:5);
      if A[i, j] > 0 then
        P := P + 1;
      if A[i, j] < 0 then
        P := P - 1;
    end;
    writeln;
  end;
  ln();
  P := Sign(P);
  case P of
    1: writeln('Положительных элементов больше');
    -1: writeln('Отрицательных элементов больше. A[i,j]=A[i,j]^2');
  else writeln( 'Положительных и отрицательных элементов поровну')
  end;
  while P = 1 do
  begin
    ind_i_V := 1;
    ind_j_V := 2;
    max := A[ind_i_V, ind_j_V];
    for i := 1 to Nmass - 1 do
      for j := i + 1 to Nmass do
        if A[i, j] > max then
        begin
          max := A[i, j];
          ind_i_V := i;
          ind_j_V := j;
        end;
    ind_i_N := 2;
    ind_j_N := 1;
    max := A[ind_i_N, ind_j_N];
    for i := 2 to Nmass do
      for j := 1 to i - 1  do
        if A[i, j] > max then
        begin
          max := A[i, j];
          ind_i_N := i;
          ind_j_N := j;
        end;
    writeln('Меняем местами элементы массива:');
    writeln('A[', ind_i_V, ',', ind_j_V, ']', ' = ', A[ind_i_V, ind_j_V]);
    writeln('A[', ind_i_N, ',', ind_j_N, ']', ' = ', A[ind_i_N, ind_j_N]);
    A[ind_i_N, ind_j_N] := A[ind_i_V, ind_j_V];
    A[ind_i_V, ind_j_V] := max;
    break;
  end;
  ln();
  writeLn('Итоговый массив:');
  ln();
  while P = -1 do
  begin
    for i := 1 to Nmass do
      for j := 1 to Nmass do
        if A[i, j] < 0 then
          A[i, j] := A[i, j] * A[i, j];
    break;
  end;
  for i := 1 to Nmass do
  begin
    for j := 1 to Nmass do
      if Sign(P) = -1 then
        write(A[i, j]:6)
      else
        write(A[i, j]:5);
    writeln;
  end;
end.
1
1 / 1 / 0
Регистрация: 14.12.2012
Сообщений: 9
14.12.2012, 16:29  [ТС]
Цитата Сообщение от Yurek Посмотреть сообщение
Самому не понравилось, но не хочется оптимизировать.
ПОд себя прогу сделал, с рандомом конечно веселее) спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.12.2012, 16:29
Помогаю со студенческими работами здесь

Дан массив A(7). Все отрицательные элементы массива возвести в квадрат
Дан массив A(7). Все отрицательные элементы массива возвести в квадрат, из положительных элементов вычислить корень. Вывести массив на...

Дан массив Y. Все положительные элементы массива возвести в квадрат, а отрицательные в куб
Задача 9. Дан массив Y. Все положительные элементы массива возвести в квадрат, а отрицательные в куб. Вывести в файл старый и новый...

Отрицательные элементы массива возвести в квадрат
Здраствуйте! Помогите пожайлуста решить задачки, очень срочно надо. Огромное спасибо! Домашнее задание на 1.10.13 3. Написать программу...

Возвести в квадрат отрицательные элементы массива
Возвести В квадрат отрицательные элементы массива В(7)

В строке матрицы заменить все отрицательные элементы на их квадрат
Дан двумерный массив, в введённый пользователем номер строки заменить все отрицательные элементы на их квадрат.Ну кароче нужна менюшка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru