Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Chudesov
0 / 0 / 0
Регистрация: 26.04.2014
Сообщений: 1
1

Перевести цветной рисунок в чёрно-белый

12.12.2014, 19:39. Просмотров 1311. Ответов 1
Метки нет (Все метки)

Задача с informatics.mccme.ru

Алгоритм решения я понимаю, но с написанием программ я не дружу

Яркости пикселей рисунка закодированы числами от 0 до 255 в виде матрицы. Преобразовать рисунок в черно-белый по следующему алгоритму:

1. Вычислить среднюю яркость пикселей по всему рисунку
2. Все пиксели, яркость которых меньше средней, сделать черными (записать код 0), а остальные – белыми (код 255)

Входные данные:

В первой строке записаны через пробел размеры матрицы: количество строк N и количество столбцов M ( 1 ≤ N , M ≤ 100 ). В следующих N строках записаны строки матрицы, в каждой – по M натуральных чисел в диапазоне от 0 до 255, разделённых пробелами.

Выходные данные:

Программа должна вывести в первой строчке среднее значение яркости для заданного рисунка с точностью 4 знака в дробной части. В следующих N строчках выводится построенная матрица, соответствующая чёрно-белому изображению.

Примеры:

Входные данные:

4 4
12 14 67 45
32 87 45 63
69 45 14 11
40 12 35 15

Выходные данные:

37.8750
0 0 255 255
0 255 255 255
255 255 0 0
255 0 0 0


P.S. Подобного на форуме не нашёл, поэтому и создал, ибо не один я, наверное, такой)
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2014, 19:39
Ответы с готовыми решениями:

Преобразовать рисунок в черно-белый по алгоритму
Пиксели рисунка закодированы числами от 0 до 255 (обозначающими яркость...

Как создать рисунок и сохранить его в bmp (точечный рисунок)
Здравствуйте, пишу свой графический редактор и вот не знаю как из того что я...

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

Как сделать цветной градиент?
uses GraphABC; var a: boolean; begin SetBrushColor(clBlue); ...

Цветной дождь
В Банановой республике очень много холмов, соединенных мостами. На химическом...

1
Cyborg Drone
Модератор
5293 / 3171 / 2442
Регистрация: 17.08.2012
Сообщений: 10,186
14.12.2014, 04:26 2
Лучший ответ Сообщение было отмечено Chudesov как решение

Решение

Цитата Сообщение от Chudesov Посмотреть сообщение
Яркости пикселей рисунка закодированы числами от 0 до 255 в виде матрицы
Цитата Сообщение от Chudesov Посмотреть сообщение
Вычислить среднюю яркость пикселей по всему рисунку
Иными словами, найти среднее арифметическое всех элементов матрицы.
Цитата Сообщение от Chudesov Посмотреть сообщение
Подобного на форуме не нашёл
Задач про среднее арифметическое всех элементов матрицы на форуме хоть пруд пруди. Вы что, искали среднюю яркость пикселей, что ли?

Даже не хочу знать требования к оформлению кода на этом... "обучающем" сайте. Что не так, подкорректируете.
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
var i, j, n, m: byte;
    s: real;
    a: array [1..100, 1..100] of byte;
begin
  s := 0;
  readln(n, m);
  writeln(n, m);
  for i := 1 to n do
    begin
      for j := 1 to m do
        begin
          read(a[i, j]);
          s  := s + a[i, j]
        end;
      readln
    end;
  s := s / n / m;
  writeln(s:0:4);
  for i := 1 to n do
    begin
      for j := 1 to m do
        begin
          if a[i, j] < s then a[i, j] := 0 else a[i, j] := 255;
          write(a[i, j], ' ')
        end;
      writeln
    end;
  readln
end.

Не по теме:

Цитата Сообщение от Chudesov Посмотреть сообщение
с написанием программ я не дружу
И чего ж тогда без базовых знаний языка программирования Вас потянуло к роботу задачки решать? Без базовых знаний на подобных сайтах делать нечего. Это Вас преподаватель туда направил, чтобы самому только лень лениться вместо того, чтобы свою работу работать, или Вы сами по доброй воле у тамагочи чему-то научиться собрались?

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2014, 04:26

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

Изобразить цветной пистолет
нужен не сильно замароченый рисунок писталета в паскале и желательно цветной

Чёрно-белый скрин экрана
всем привет. помогите делать ч.б скрины procedure TForm1.Button4Click(Sender:...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru