|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.01.2012, 17:59 | #1 |
Пользователь
Регистрация: 11.01.2012
Сообщений: 55
|
Паскаль.Загвостка в решении задачи с прямоугольным треугольником.
Даны числа а,в,с.Обозначающие стороны.Выяснить является ли треугольник прямоугольным.И если он прямоугольный,вывести в порядке возрастания стороны и вычислить площадь.Иначе,программа должна выдавать что треуг. не прямоугольный и заканчивать работу.
У меня прога работает,но не так.Прикрепила бы ее вам проверить,но нет инета,сижу с телефона.Помогите решить задачу.(( |
12.01.2012, 18:48 | #2 |
Форумчанин
Регистрация: 13.12.2007
Сообщений: 788
|
Изначально отсортировать стороны по возрастанию, затем проверить - если сумма квадратов первых двух равна квадрату третьей - то треугольник прямоугольный, и можно сразу выводить эти три стороны в этом же порядке, а площадь будет равна произведению первых двух сторон деленному пополам
благодарность - сюда (не забываем писать от кого)
|
12.01.2012, 18:50 | #3 |
Пользователь
Регистрация: 11.01.2012
Сообщений: 51
|
program Pr15;
var a, b, c, k: real; BEGIN write('a= '); readln(a); write('b= '); readln(b); write('c= '); readln(c); if c*c=(b*b+a*a) then begin if b < a then begin k:= a; a:= b; b:= k end; if c < a then begin k:= a; a:= c; c:= k end; if c < b then begin k:= b; b:= c; c:= k end; writeln('стороны ',a, ', ', b, ', ', c); writeln('Площадь ',(a+b)/2); end else writeln('не прямоугольный'); END.
Я учусь на своих ошибках, но порой их слишком много
|
12.01.2012, 22:15 | #4 |
Пользователь
Регистрация: 11.01.2012
Сообщений: 55
|
Спасибо вам большое!Поняла свою ошибку.Запуталась с бегинами.
|
13.01.2012, 06:40 | #5 |
Форумчанин
Регистрация: 13.12.2007
Сообщений: 788
|
Aranea tela telam, хорошо, я ввожу числа 5,3,4 (это прямоугольный треугольник с гипотенузой = 5)
Ваша программа напишет что треугольник "не прямоугольный" "Сортировка" выглядит кривой, но сколько примеров не проверял - вроде сортирует правильно По уму нужно сначала сортировать, а потом уже сравнивать через формулу (как я выше и писал), но как вариант можно просто добавить условия для других возможных вариантов (где гипотенузой является не c, а b или a)
благодарность - сюда (не забываем писать от кого)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массивы в C++. Решении задачи. | <onegin> | Помощь студентам | 1 | 11.12.2011 00:17 |
Подсказка в решении задачи С++ | Pycbka | Помощь студентам | 4 | 16.11.2011 21:49 |
Проблема в решении задачи [С++] | asp1k | Помощь студентам | 0 | 17.11.2010 16:16 |
помогите в решении задачи. | gaddam | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 24.11.2008 19:06 |
Помогите в решении задачи! | Toxass | Общие вопросы Delphi | 16 | 19.11.2008 22:06 |