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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2010, 12:31   #1
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
Вопрос Найти S – суммарную площадь N равнобедренных треугольников

Всем привет! Помогите решить задачку, она вроде не сложная но с условием я никак разобраться не могу.

Цитата:
Найти S – суммарную площадь N равнобедренных треугольников, значения сторон которых образуют последовательность 1, 2, 4, …, 2N, а высоты одинаковые h=2. Число N вводить с клавиатуры.
sllh_111 вне форума Ответить с цитированием
Старый 08.05.2010, 14:10   #2
kogemrka
Форумчанин
 
Аватар для kogemrka
 
Регистрация: 08.01.2010
Сообщений: 165
По умолчанию

кхм, в каком смысле "значения сторон"? Длины сторон? или длины оснований, на которые опущены высоты?

Формулируй задачу поточнее.

Ах да, ещё ты забыл указать, на каком языке тебе её нужно сдать.
kogemrka вне форума Ответить с цитированием
Старый 08.05.2010, 14:11   #3
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

Код:
for i:=1 to n do   begin      
   read(x);             // x - введите основание тр.
   S:=S+0.5*x*2;     
end;
write('S = ',S);
Skype: CODERua

Последний раз редактировалось [CODER]; 08.05.2010 в 14:45. Причина: оптимизировал :)
[CODER] вне форума Ответить с цитированием
Старый 08.05.2010, 16:40   #4
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

изменяюсь за назойливость, но мемного нетак поняли.

надо найти суммарную площадь N равнобедренных треугольников.
нам даны:
1. значения сторон - последовательность 1, 2, 4, …, 2N
2. высот h= 2
3. количество треугольников(N) - их вводим сами
язык - Паскаль

[CODER]
спасибо, если не трудно помоги плиз доделать
sllh_111 вне форума Ответить с цитированием
Старый 08.05.2010, 17:39   #5
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

Значения каких сторон? Вполне достаточно одной стороны(основания). В этом случае боковая будет лишней
Код:
for i:=1 to n do   begin      
   read(x);             // x - введите основание тр.
   S:=S+0.5*x*2;     
end;
write('S = ',S);
Но можно и иначе, НО тогда нам не нужна высота которая фигурирует в условии
Код:
for i:=1 to n do   begin  
   read(x);              //  x - сторона равнобедренного треугольника
   read(b);             //   y - основание равнобедренного треугольника
   S:=S+y*sqrt(x*x-(y*y/4))/2;  
end;
write('S = ',S);
Непонятно это:
Цитата:
1. значения сторон - последовательность 1, 2, 4, …, 2N
A если например n = 5, то чему будут равны значения сторон (не забываем о вопросе "каких сторон")?
Код:
шаг 1
      х=1
шаг 2 
      х=2
шаг 3 
      х=4
шаг 4 
      х=8
шаг 5 
      х=16
Но тогда получается что условие "1, 2, 4, …, 2N" не соблюдается т.к. n*2=10, а на последнем шаге сторона(ы) = 16.
Skype: CODERua
[CODER] вне форума Ответить с цитированием
Старый 08.05.2010, 18:24   #6
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

согласен задача тупая и многое в ней не прописано
Цитата:
равнобедренных треугольников, значения сторон
т.е значение 2 сторон. тет имелось ввиду сторона грани(1=2), а не основания.
насчет последовательности надо число умножать на два пока не дойдем до введенного нами числа(умножать надо начиная с 1)
sllh_111 вне форума Ответить с цитированием
Старый 08.05.2010, 19:11   #7
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

Для вычисления треугольника такого рода надо еще его угол о котором в задании не сказано ни слова.
Может так?
Код:
for i:=1 to N do   begin  
   read(x);              //  x - сторона равнобедренного треугольника
   read(y);             //   y - основание равнобедренного треугольника
   S:=S+y*sqrt(x*x-(y*y/4))/2;  
   if (n*2 < N) then
        n:=n*2;
end;
write('S = ',S);
Skype: CODERua
[CODER] вне форума Ответить с цитированием
Старый 08.05.2010, 21:03   #8
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

[CODER]
ладно сам как-нибудь додумаю, огромное спасибо тебе!
sllh_111 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
подобие треугольников Виталя Woody Помощь студентам 3 25.03.2010 22:02
Найти площадь треугольник (задача в делфи) YO$YA Помощь студентам 5 19.11.2008 21:29
Найти объём куба и площадь его боковой поверхности BASIC Ветренная Помощь студентам 23 02.06.2008 13:15