Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
103 / 1 / 0
Регистрация: 13.12.2009
Сообщений: 136

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент

22.12.2009, 19:56. Показов 1357. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.
Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с убыванием характеристик.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.12.2009, 19:56
Ответы с готовыми решениями:

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

Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент
Ребятки всем привет. Помогите пожалуйста,я конечно новенький на форуме,и не очень соображаю в паскале а тут вообще затруднение. Буду...

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

4
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
22.12.2009, 21:06
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
1.
uses crt;
const nmax=20;
var a:array[1..nmax,1..nmax] of integer;
    n,m,i,j,k:byte;
begin
clrscr;
repeat
write('Количество строк=');
readln(m);
until m in [1..nmax];
repeat
write('Количество столбцов=');
readln(n);
until n in [1..nmax];
writeln('Введите ',n*m,' элементов матрицы:');
for i:=1 to m do
for j:=1 to n do
 begin
  write('a[',i,',',j,']=');
  readln(a[i,j]);
 end;
clrscr;
writeln('Исходная матрица:');
for i:=1 to m do
 begin
   for j:=1 to n do
   write(a[i,j]:5);
   writeln;
 end;
writeln;
for i:=1 to m do
 begin
  k:=0;
  for j:=1 to n do
  if a[i,j]=0 then k:=i;
  if k>0 then break;
 end;
if k=0 then write('В матрице нет нулевых элементов!')
else write('Номер первой строки с нолем=',k);
readln
end.
Добавлено через 11 минут
2.
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
uses crt;
const nmax=20;
var a:array[1..nmax,1..nmax] of integer;
    n,m,i,j,l:byte;
    sm,b:integer;
begin
clrscr;
randomize;
write('Количество строк n=');
readln(n);
write('Количество столбцов m=');
readln(m);
{вычисление сумм в строках и запись их в дополнительный столбец}
for i:=1 to n do
 begin
  sm:=0;
  for j:=1 to m do
   begin
    a[i,j]:=random(20)-9;
    if (a[i,j]<0)and(a[i,j] mod 2=0) then sm:=sm+a[i,j];
   end;
  a[i,m+1]:=sm;
 end;
writeln('Исходный массив:');
writeln('Сумма':(m*5+8));
for i:=1 to n do
 begin
  for j:=1 to m+1 do
  if j=m+1 then write(a[i,j]:8)
  else write(a[i,j]:5);
  writeln;
 end;
{перестановка строк по убыванию сумм(по последнему столбцу)}
for i:=1 to n-1 do
for l:=i+1 to n do
if a[i,m+1]<a[l,m+1] then
for j:=1 to m+1 do
 begin
  b:=a[i,j];
  a[i,j]:=a[l,j];
  a[l,j]:=b;
 end;
writeln('Строки по убыванию сумм:');
writeln('Сумма':(m*5+8));
for i:=1 to n do
 begin
  for j:=1 to m+1 do
  if j=m+1 then write(a[i,j]:8)
  else write(a[i,j]:5);
  writeln;
 end;
readln
end.
1
103 / 1 / 0
Регистрация: 13.12.2009
Сообщений: 136
26.12.2009, 17:12  [ТС]
а как это сделать с процедурами???
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
26.12.2009, 23:23
1.
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
uses crt;
const nmax=20;
type matr=array[1..nmax,1..nmax] of integer;
procedure Vvod(var mt:matr;var x,y:byte);
var i,j:byte;
begin
repeat
write('Количество строк=');
readln(x);
until x in [1..nmax];
repeat
write('Количество столбцов=');
readln(y);
until y in [1..nmax];
writeln('Введите ',x*y,' элементов матрицы:');
for i:=1 to x do
for j:=1 to y do
 begin
  write('el[',i,',',j,']=');
  readln(mt[i,j]);
 end;
clrscr;
writeln('Исходная матрица:');
for i:=1 to x do
 begin
   for j:=1 to y do
   write(mt[i,j]:5);
   writeln;
 end;
writeln;
end;
procedure Perv(mt:matr;x,y:byte; var k:byte);
var i,j:byte;
begin
for i:=1 to x do
 begin
  k:=0;
  for j:=1 to y do
  if mt[i,j]=0 then k:=i;
  if k>0 then break;
 end;
if k=0 then write('В матрице нет нулевых элементов!')
else write('Номер первой строки с нолем=',k);
end;
var a:matr;
    n,m,k:byte;
begin
clrscr;
Vvod(a,n,m);
Perv(a,n,m,k);
readln
end.
Добавлено через 20 минут
2.
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
uses crt;
const nmax=20;
type matr=array[1..nmax,1..nmax] of integer;
procedure Vvod(var mt:matr;var x,y:byte);
var i,j:byte;
    sm:integer;
begin
write('Количество строк = ');
readln(x);
write('Количество столбцов = ');
readln(y);
{вычисление сумм в строках и запись их в дополнительный столбец}
for i:=1 to x do
 begin
  sm:=0;
  for j:=1 to y do
   begin
    mt[i,j]:=random(20)-9;
    if (mt[i,j]<0)and(mt[i,j] mod 2=0) then sm:=sm+mt[i,j];
   end;
  mt[i,y+1]:=sm;
 end;
writeln('Исходный массив:');
writeln('Сумма':(y*5+8));
for i:=1 to x do
 begin
  for j:=1 to y+1 do
  if j=y+1 then write(mt[i,j]:8)
  else write(mt[i,j]:5);
  writeln;
 end;
end;
 
procedure Sort(var mt:matr;x,y:byte);
var i,j,l:byte;
    b:integer;
begin
{перестановка строк по убыванию сумм(по последнему столбцу)}
for i:=1 to x-1 do
for l:=i+1 to x do
if mt[i,y+1]<mt[l,y+1] then
for j:=1 to y+1 do
 begin
  b:=mt[i,j];
  mt[i,j]:=mt[l,j];
  mt[l,j]:=b;
 end;
writeln('Строки по убыванию сумм:');
writeln('Сумма':(y*5+8));
for i:=1 to x do
 begin
  for j:=1 to y+1 do
  if j=y+1 then write(mt[i,j]:8)
  else write(mt[i,j]:5);
  writeln;
 end;
end;
 
var a:matr;
    n,m:byte;
begin
clrscr;
randomize;
Vvod(a,n,m);
Sort(a,n,m);
readln
end.
А вообще это хамство не писать сразу полное условие, а потом просить еще раз написать. Это точно последний раз.
1
103 / 1 / 0
Регистрация: 13.12.2009
Сообщений: 136
26.12.2009, 23:48  [ТС]
спасибо большое. извиняюсь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.12.2009, 23:48
Помогаю со студенческими работами здесь

Определить количество столбцов, содержащих хотя бы один нулевой элемент.
Задание: Целочисленная прямоугольная матрица заполняется с помощью генератора случайных чисел значениями из промежутка . Определить...

Определить количество столбцов, содержащих хотя бы один нулевой элемент
Здравствуйте! Помогите пожалуйста написать программу придерживаясь этого: Размерности массивов следует задать именованными константами. Все...

Определить количество столбцов, содержащих хотя бы один нулевой элемент
Дана целочисленная прямоугольная матрица. Определить количество столбцов, содержащих хотя бы один нулевой элемент. Используя процедуры...

Определить количество столбцов, содержащих хотя бы один нулевой элемент
Дана целочисленная прямоугольная матрица. Определить: 1) количество столбцов, содержащих хотя бы один нулевой элемент; 2) номер строки, в...

Найти количество столбцов матрицы, содержащих хотя бы один нулевой элемент
Дана целочисленная прямоугольная матрица. Определить: 1) Количество столбцов, содержащих хотя бы один нулевой элемент; 2) Номер строки,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru