Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 18.12.2016
Сообщений: 9
1

В двумерном массиве для всех элементов равных 1 всех соседей заменить на 0

11.01.2017, 23:15. Показов 635. Ответов 2
Метки нет (Все метки)

В двумерном массиве для всех элементов равных 1 всех соседей заменить на 0. У меня не работает, выдает ошибку.
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
program dfbg;
var 
a: array[1..6,1..6]of integer;
i,j,c: integer;
begin
randomize;
for i:=1 to 6 do 
for j:=1 to 6 do
a[i,j]:=random(10);
for i:=1 to 6 do
begin
for j:=1 to 6 do
write(' ',a[i,j]);
writeln
end;
for i:=1 to 6 do
for j:=1 to 6 do
if a[i,j]=1 then
a[i,j-1]:=0;
a[i,j+1]:=0;
a[i+1,j]:=0;
a[i-1,j]:=0;
a[i-1,j-1]:=0;
a[i-1,j+1]:=0;
a[i+1,j+1]:=0;
a[i+1,j-1]:=0;
writeln;
for i:=1 to 6 do
begin
for j:=1 to 6 do
write(' ',a[i,j]);
writeln
end;
readln 
end.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.01.2017, 23:15
Ответы с готовыми решениями:

В двумерном массиве заменить числом 5 значения всех элементов, превышающих значение 5
2)В двумерном массиве заменить числом 5 значения всех элементов, превышающих значение 5.

В двумерном массиве вычислить частное от деления произведения всех gоложительных элементов на произведение всех отрицательных элементов
В двухмерном массиве вычислить частное от деления произведения всех положительных элементов на...

В двумерном массиве найти введенное с клавиатуры число и вывести индексы всех чисел равных введенному
1) Написать программу, которая в двумерном массиве находит введенное с клавиатуры число и выводит...

В массиве найти наибольшее значение, встречаются в массиве после откидывания с него всех элементов равных максимальному
В массиве D найти наибольшое значение, что встречаются в массиве после откидывания с него всех...

2
Эксперт Pascal/Delphi
2373 / 1288 / 1488
Регистрация: 29.08.2014
Сообщений: 4,617
12.01.2017, 05:33 2
Цитата Сообщение от RammKot Посмотреть сообщение
a: array[1..6,1..6]of integer;
замени на
Pascal
1
a: array[0..7,0..7]of integer;
Добавлено через 2 минуты
Цитата Сообщение от RammKot Посмотреть сообщение
if a[i,j]=1 then
a[i,j-1]:=0;
a[i,j+1]:=0;
a[i+1,j]:=0;
a[i-1,j]:=0;
a[i-1,j-1]:=0;
a[i-1,j+1]:=0;
a[i+1,j+1]:=0;
a[i+1,j-1]:=0;
должно быть в операторных скобках:
Pascal
1
2
3
4
5
6
7
8
9
10
if a[i,j]=1 then begin
a[i,j-1]:=0;
a[i,j+1]:=0;
a[i+1,j]:=0;
a[i-1,j]:=0;
a[i-1,j-1]:=0;
a[i-1,j+1]:=0;
a[i+1,j+1]:=0;
a[i+1,j-1]:=0;
end;
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31466 / 20513 / 7988
Регистрация: 22.10.2011
Сообщений: 35,630
Записей в блоге: 7
12.01.2017, 11:40 3
Задание какое-то подозрительное. А что если среди этих соседей, которые нужно заменить на 0, в свою очередь будут единицы? Фиг с ними, пускай меняются, или надо сохранить значения, равные 1 на своих местах? Если не сохранять, то получится вот что:
было:
Код
 7 8 4 5 1 1
 3 2 8 1 5 5
 3 9 1 5 5 3
 2 9 3 9 8 6
 3 1 3 9 4 1
 9 2 9 8 1 6
стало:
Код
 7 8 4 0 1 0
 3 0 0 0 0 0
 3 0 1 0 5 3
 0 0 0 0 0 0
 0 1 0 9 0 1
 0 0 0 8 0 0
В первой строке исчезла последняя 1-ца, во второй тоже, и в последней...

Я уж не говорю, что результат в случае "фиг с ними, с соседними единицами, менять всех соседей на 0 и всё тут" будет зависеть от направления обхода. Сделай циклы не
for i := 1 to 6, а for i := 6 downto 1 - получишь совершенно другой результат...
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2017, 11:40

Определить сколько в массиве элементов, равных сумме всех элементов массива
Определить сколько в массиве элементов, равных сумме всех элементов массива

Найти номера всех равных элементов в одномерном массиве B (10 элементов)
бьюсь уже второй час,не получается,помогите пожалуйста. Добавлено через 4 часа 28 минут никто...

Найти произведение всех элементов кратных 7 в двумерном массиве А(5,8)
Найти произведение всех элементов кратных 7 в двумерном массиве А(5,8)

В одномерном массиве найти сумму номеров всех элементов равных нулю.
С клавиатуры вводится одномерный массив длинной 10 символов. Найти сумму номеров всех элементов...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru