Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Pascal] Найти значение максимального периметра, N треугольников 
:(
    Опции темы
Foxy
Дата 15.1.2007, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 15.1.2007

Репутация: нет
Всего: нет



Дано N треугольников и координаты их вершин (х,у). Вывести значение максимального периметра. (Задачу нужно решить с помошью подрограммы-процедуры)
PM MAIL   Вверх
Ramzey
Дата 15.1.2007, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 26.12.2006

Репутация: 1
Всего: 1



так что надо найти максимальный периметр из этих треугольников?
PM MAIL   Вверх
sergejzr
Дата 15.1.2007, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 11
Всего: 360



Для домашних заданий, курсовых, существует "Центр Помощи"

Тема перенесена! 


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Sunvas
Дата 15.1.2007, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 7
Всего: 89



Все просто. Задача решается в несколько этапов.
1. Сначала по теореме Пифагора вычисляем все стороны треугольника
2. Потом их суммируем
3. Запоминаем периметр треугольника и его номер в какой-нить массив
4. Ищим номер треугольника у которого самый большой перимтр.
Я бы закодил, но что-то вломно страшно.


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
powerfox
Дата 15.1.2007, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 97



Код

program max_perimetr;
const
N=3;
type pair=record
 x:Integer;
 y:Integer;
 end;
type triangle=record
 points:Array[1..3] of Pair;
 end;

function perimetr(abs:triangle):Real;
var
a,b,c:Real;
begin
a:=sqrt( sqr(abs.points[2].x-abs.points[1].x)+sqr(abs.points[2].y-abs.points[1].y) );
b:=sqrt( sqr(abs.points[3].x-abs.points[2].x)+sqr(abs.points[3].y-abs.points[2].y) );
c:=sqrt( sqr(abs.points[3].x-abs.points[1].x)+sqr(abs.points[3].y-abs.points[1].y) );
perimetr:=a+b+c;
end;

var
triangles:Array[1..N] of triangle;
i,j:Integer;
current,max:Real;
begin
for i:=1 to N do
  begin
  Writeln('Введите координаты ',i,'-го треугольника');
  for j:=1 to 3 do
   begin
   write('Введите x y точки ', j ,':');
   read(triangles[i].points[j].x);
   readln(triangles[i].points[j].y);
   end;
  end;

max:=0;
for i:=1 to N do
  begin
  current:=perimetr(triangles[i]);
  if current > max then
   max:=current;
end;

writeln('Наибольший периметр: ', max);

end.


Это сообщение отредактировал(а) powerfox - 17.1.2007, 16:04


--------------------
user posted image
PM WWW   Вверх
powerfox
Дата 15.1.2007, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 97



Цитата(Sunvas @  15.1.2007,  22:31 Найти цитируемый пост)
1. Сначала по теореме Пифагора вычисляем все стороны треугольника

При чём здесь Пифагор?


--------------------
user posted image
PM WWW   Вверх
Sunvas
Дата 15.1.2007, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 7
Всего: 89



Цитата(powerfox @  15.1.2007,  22:35 Найти цитируемый пост)
При чём здесь Пифагор?

А чья это теорема про два катета и гипотенузу?


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
V.A.KeRneL
  Дата 16.1.2007, 03:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 7
Всего: 14



Цитата(sergejzr @  15.1.2007, 21:15 Найти цитируемый пост)

Для домашних заданий, курсовых, существует "Центр Помощи"

Тема перенесена!

Что-то не похоже... 
Или, похоже, Alexeis решил, что она интересная... 
smile


Это сообщение отредактировал(а) V.A.KeRneL - 16.1.2007, 03:22


--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
Magister Y0da
Дата 16.1.2007, 03:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зелёненький
*


Профиль
Группа: Участник
Сообщений: 235
Регистрация: 30.11.2004

Репутация: нет
Всего: 2



ты не мог бы спросить что-нибудь посложнее?
--------------------
PM MAIL ICQ   Вверх
powerfox
Дата 16.1.2007, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 97



Цитата(Sunvas @  16.1.2007,  00:38 Найти цитируемый пост)
А чья это теорема про два катета и гипотенузу?

А при чём здесь катеты и гипотенуза? Треугольники не прямоугольные ;) И стороны неизвестны ;)


--------------------
user posted image
PM WWW   Вверх
Sunvas
Дата 16.1.2007, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 7
Всего: 89



Цитата(powerfox @  16.1.2007,  17:16 Найти цитируемый пост)
А при чём здесь катеты и гипотенуза? Треугольники не прямоугольные ;) И стороны неизвестны ;)

А длину сторон ты как находишь? По-моиму по теореме Пифагора! - Когда даны координаты начала и конца отрезнка и надо найти его длину.


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
powerfox
Дата 16.1.2007, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 97



Цитата(Sunvas @  16.1.2007,  18:49 Найти цитируемый пост)
А длину сторон ты как находишь? По-моиму по теореме Пифагора! - Когда даны координаты начала и конца отрезнка и надо найти его длину.

Теорема Пифагора - частный случай теоремы косинусов. Служит для нахождения одной из сторон по двум другим. Нахождение длины стороны по координатам идёт по формуле длины вектора.
Цитата(powerfox @  15.1.2007,  23:09 Найти цитируемый пост)
a:=sqrt( sqr(abs.points[2].x-abs.points[1].x)+sqr(abs.points[2].y-abs.points[1].y) );

Вектор а: (abs.points[2].x-abs.points[1].x, abs.points[2].y-abs.points[1].y).



--------------------
user posted image
PM WWW   Вверх
V.A.KeRneL
Дата 17.1.2007, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 7
Всего: 14



По-моему, powerfox решил задачу. 
Только нечаянно вставил следующий кусочек кода дважды.
Код

max:=0;
for i:=1 to N do
  begin
  current:=perimetr(triangles[i]);
  if current > max then
   max:=current;
end;

Если это поправит, то будет совсем красиво! smile

Давайте автор пометит вопрос решённым, и перенесём топик в «Центр помощи». smile


Это сообщение отредактировал(а) V.A.KeRneL - 18.1.2007, 14:55


--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
powerfox
Дата 17.1.2007, 16:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I wanna fork()
****


Профиль
Группа: Комодератор
Сообщений: 3990
Регистрация: 1.10.2005
Где: Санкт-Петербург

Репутация: 3
Всего: 97



Цитата(V.A.KeRneL @  17.1.2007,  15:31 Найти цитируемый пост)
Только нечайно вставил следующий кусочек кода дважды.

 smile Отредактировал 


--------------------
user posted image
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0884 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.