Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 16.01.2015, 18:40   #1
shewlett
Пользователь
 
Регистрация: 05.01.2015
Сообщений: 19
По умолчанию Спасайте!) Нужна помощь с программой по Паскалю.

Нужна или блок схема или готовая программа, или просто словами объясните как это сделать. Я не понимаю
"Рассматривая индексы элементов массива 'М' как координаты точек на плоскости, найти 'd' - расстояние между наибольшим и наименьшим элементом массива."
Помогите...
shewlett вне форума
Старый 16.01.2015, 18:51   #2
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

Решение может быть неоднозначным, если элементы в массиве повторяются. Расстояние это разность индексов, если я правильно понимаю условие. Наибольший и наименьший элемент определяются переборов всех элементов массива.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума
Старый 16.01.2015, 19:12   #3
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,817
По умолчанию

понятно, нужно пройтись по всему квадратному массиву, запомнить координаты [I;J]максимального и минимального элемента, а потом по теореме Пифагора (у нас же плоскость, даже есть координаты [I,J]) вычислить расстояние d между этими МИН и МАКС
Код:
program Project1;
{$APPTYPE CONSOLE}
uses SysUtils;
const N=4;
var A:array[1..N,1..N]of Integer=((1,2,3,4),(5,6,8,9),(14,35,10,7),(8,4,3,2));
    Xmin,Xmax,Ymin,Ymax,Min,Max,i,j:Integer;
    d:Real;
    C:Char;
begin
   Min:=10000;
   Max:=-10000;
   Xmin:=0;
   Xmax:=0;
   Ymin:=0;
   Ymax:=0;
   for i:=1 to N do for j:=1 to N do
   begin
      if(Max<A[i,j])then
      begin
         Max:=A[i,j];
         Xmax:=i;
         Ymax:=j;
      end;
      if(A[i,j]<Min)then
      begin
         Min:=A[i,j];
         Xmin:=i;
         Ymin:=j;
      end;
   end;
   d:=sqrt((Xmax-Xmin)*(Xmax-Xmin)+(Ymax-Ymin)*(Ymax-Ymin));
   writeLn(d);
   Read(c);
end.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 16.01.2015 в 19:26.
NetSpace вне форума
Старый 16.01.2015, 19:25   #4
shewlett
Пользователь
 
Регистрация: 05.01.2015
Сообщений: 19
По умолчанию

Цитата:
Сообщение от NetSpace Посмотреть сообщение
понятно, нужно пройтись по всему квадратному массиву, запомнить координаты [I;J]максимального и минимального элемента, а потом по теореме Пифагора (у нас же плоскость, даже есть координаты [I,J]) вычислить расстояние d между этими МИН и МАКС
Спасибо, уже понятней) А можете поподробней объяснить как именно мы находим расстояние между макс и мин элементами?
shewlett вне форума
Старый 16.01.2015, 19:27   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,817
По умолчанию

смотри пост выше -я там код приписал. рабочий =)))
если помог - жми на весы
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума
Старый 16.01.2015, 19:36   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Пару комментов:
1) Min,Max можно убрать в пользу:
Код:
      if(A[Xmax,Ymax]<A[i,j])then
      begin
         Xmax:=i;
         Ymax:=j;
      end;
      if(A[i,j]<A[Xmin,Ymin])then
      begin
         Xmin:=i;
         Ymin:=j;
      end;
2) Read(c); лучше заменить на readln. Во-первых это избавляет от лишней переменки, а во вторых это в конце программы еще не принесет проблем, но если захочется вдруг в середине поставить, могут быть сложности с последующим вводом.

Это все к слову, и не влияет на работоспособность вышеприведенного кода.
I'm learning to live...
Stilet вне форума
Старый 16.01.2015, 20:07   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Рассматривая индексы элементов массива 'М' как координаты точек на плоскости, найти 'd' - расстояние между наибольшим и наименьшим элементом массива.
А я этого не понимаю. Логики в этой фразе минимум

ЗЫ

дошло
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 16.01.2015 в 20:14.
Аватар вне форума
Старый 16.01.2015, 22:08   #8
shewlett
Пользователь
 
Регистрация: 05.01.2015
Сообщений: 19
По умолчанию

Цитата:
Сообщение от NetSpace Посмотреть сообщение
смотри пост выше -я там код приписал. рабочий =)))
если помог - жми на весы
Нажму с превеликим удовольствием :D Благодаря Вам, у меня 4 за экзамен по информатике. Счастью нет предела!) Спасибо!
shewlett вне форума
Старый 16.01.2015, 22:12   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Логики в этой фразе минимум
Она просто звучит так как будто препод хочет сказать студенту "Сынок, армия из тебя сделает человека"
I'm learning to live...
Stilet вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь по паскалю! aShsville Помощь студентам 1 15.12.2014 20:13
Нужна помощь с программой Ддмитрий Фриланс 1 28.11.2009 16:27
Нужна помощь с программой... Joker_35815 Фриланс 14 16.11.2009 14:48
Нужна помощь с программой... Joker_35815 Фриланс 1 12.11.2009 10:54
Нужна помощь по паскалю!! 4meen Помощь студентам 5 03.12.2007 12:09