Как найти равносторонний треугольник паскаля

Формулировка задачи:

Определить, является ли треугольник со сторонами a, b, c равносторонним.

Код к задаче: «Определение равностороннего треугольника.»

textual

Program Tr;
uses crt;
var
a,b,c:integer;
Begin
write('vvedute a-');
readln(a);
write('vvedute b-');
readln(b);
write('vvedute c-');
readln(c);
if ((a=b) and (b=c) and (a=c)) then writeln('Treygolnyk ravnostoronnuy')
else writeln('Treygolnyk ne ravnostoronnuy');
End.

Полезно ли:

7   голосов , оценка 3.857 из 5

Определить возможность существования треугольника по сторонам

Задача

Треугольник существует только тогда, когда сумма любых двух его сторон больше третьей.

Дано: a , b , c – стороны предполагаемого треугольника.

Требуется сравнить длину каждого отрезка-стороны с суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольника с такими сторонами не существует.

Решение

Ниже приведены решения задачи на языке программирования Паскаль двумя способами. В первом случае все стороны проверяются в одном операторе if; во втором случае каждое условие проверяется отдельно, а программа содержит вложенные операторы if-else.

Программа 1 (предпочтительный способ решения):

В языке Паскаль логический оператор and имеет приоритет над операторам >, if проверяется, что каждая из сторон меньше суммы других. Если хотя бы одна будет больше, то все логическое выражение вернет ложь ( false ). В таком случае сработает ветка else .

В данном случае существование треугольника проверяется по-этапно. Если первое условие возвращает ложь, то программа переходит к последнему else. Если же первое условие соблюдено, то поток выполнения программы оказывается у вложенного if. Здесь проверяется уже второе условие. Если оно возвращает ложь, то программа переходит к предпоследнему else. Если и второе логическое выражение возвращает истину (true), то программа идет к третьему условию. При его соблюдении выполняется тело самого вложенного оператора if. При его несоблюдении сработает самое вложенное else.

Несмотря на то, что данная программа кажется длиннее, в определенных ситуациях она может выполняться быстрее, чем первая. Здесь если внешнее if возвращает ложь, то остальные логические выражения вообще не проверяются. В первой программе могут и проверяться (это зависит от особенностей языка программирования).

Определить существование треугольника и его тип

По длинам трех отрезков, введенных пользователем, определить возможность существования треугольника, составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он разносторонним, равнобедренным или равносторонним.

Треугольник существует только тогда, когда сумма длин любых его двух сторон больше третьей стороны. Иначе две стороны просто «укладываются» на третьей.

Треугольник является разносторонним, если все его стороны имеют разную длину; треугольник будет равнобедренным, если любые две его стороны равны между собой, но отличны от третьей; и треугольник является равносторонним, когда все его стороны равны.

Прежде чем выяснять вид треугольника, необходимо удостовериться, что треугольник существует.

Если треугольник существует, то можно сначала проверить на неравенство три его стороны. Если они не равны друг другу, то треугольник разносторонний. Если это не так, то следующим шагом будет проверка на равенство всех сторон треугольника. Если все стороны равны, делается вывод о том, что треугольник равносторонний. Иначе остается только один вариант — равнобедренный треугольник.

Условие существования треугольника по трем сторонам

У треугольника сумма любых двух сторон должна быть больше третьей. Иначе две стороны просто “лягут” на третью и треугольника не получится.

Пользователь вводит длины трех сторон. Программа должна определять, может ли существовать треугольник при таких длинах. Это значит, необходимо сравнить суммы всех пар сторон с оставшейся третьей стороной. Чтобы треугольник существовал, сумма всегда должна быть больше отдельной стороны или, по крайней мере, не меньше, если учитывать так называемый вырожденный треугольник.

Поскольку всего три стороны, то можно составить три варианта сложения двух сторон: a + b , b + c , a + c . Первую сумму сравниваем с оставшейся стороной c , вторую – с a и третью – с b . Если хотя бы в одном случае сумма окажется не больше третьей стороны, то делается вывод, что треугольник не существует.

Можно решить задачу сложнее. Если требуется также определить, какая из сторон больше суммы двух других, то решение может быть таким:

Особого смысла использовать переменную flag здесь нет. Она просто позволяет лишний раз не писать в программе строки, информирующие о том, что треугольник не существует. Большего внимания заслуживает использование вложенных конструкций if-else.

Задача

Треугольник существует только тогда, когда сумма любых двух его сторон больше третьей.

Дано: a , b , c – стороны предполагаемого треугольника.

Требуется сравнить длину каждого отрезка-стороны с суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольника с такими сторонами не существует.

Решение

Ниже приведены решения задачи на языке программирования Паскаль двумя способами. В первом случае все стороны проверяются в одном операторе if; во втором случае каждое условие проверяется отдельно, а программа содержит вложенные операторы if-else.

Программа 1 (предпочтительный способ решения):

В языке Паскаль логический оператор and имеет приоритет над операторам >, if проверяется, что каждая из сторон меньше суммы других. Если хотя бы одна будет больше, то все логическое выражение вернет ложь ( false ). В таком случае сработает ветка else .

В данном случае существование треугольника проверяется по-этапно. Если первое условие возвращает ложь, то программа переходит к последнему else. Если же первое условие соблюдено, то поток выполнения программы оказывается у вложенного if. Здесь проверяется уже второе условие. Если оно возвращает ложь, то программа переходит к предпоследнему else. Если и второе логическое выражение возвращает истину (true), то программа идет к третьему условию. При его соблюдении выполняется тело самого вложенного оператора if. При его несоблюдении сработает самое вложенное else.

Несмотря на то, что данная программа кажется длиннее, в определенных ситуациях она может выполняться быстрее, чем первая. Здесь если внешнее if возвращает ложь, то остальные логические выражения вообще не проверяются. В первой программе могут и проверяться (это зависит от особенностей языка программирования).

По длинам трех отрезков, введенных пользователем, определить возможность существования треугольника, составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он разносторонним, равнобедренным или равносторонним.

Треугольник существует только тогда, когда сумма длин любых его двух сторон больше третьей стороны. Иначе две стороны просто “укладываются” на третьей.

Треугольник является разносторонним, если все его стороны имеют разную длину; треугольник будет равнобедренным, если любые две его стороны равны между собой, но отличны от третьей; и треугольник является равносторонним, когда все его стороны равны.

Прежде чем выяснять вид треугольника, необходимо удостовериться, что треугольник существует.

Если треугольник существует, то можно сначала проверить на неравенство три его стороны. Если они не равны друг другу, то треугольник разносторонний. Если это не так, то следующим шагом будет проверка на равенство всех сторон треугольника. Если все стороны равны, делается вывод о том, что треугольник равносторонний. Иначе остается только один вариант – равнобедренный треугольник.

var
a , b , c : word ;

begin
write ( ‘a=’ ) ; readln ( a ) ;
write ( ‘b=’ ) ; readln ( b ) ;
write ( ‘c=’ ) ; readln ( c ) ;
if ( a + b = c ) or ( a + c = b ) or ( b + c = a ) then
writeln ( ‘Такой треугольник не существует.’ )
else
if ( a <> b ) and ( a <> c ) and ( b <> c ) then
writeln ( ‘Это разносторонний треугольник.’ )
else
if ( a = b ) and ( b = c ) then
writeln ( ‘Это равносторонний треугольник.’ )
else
writeln ( ‘Это равнобедренный треугольник.’ ) ;
end .

a = 34
b = 6
c = 5
Такой треугольник не существует.

a = 7
b = 8
c = 9
Это разносторонний треугольник.

a = 6
b = 6
c = 4
Это равнобедренный треугольник.

a = 5
b = 5
c = 5
Это равносторонний треугольник.

a = int ( input ( “a = ” ) )
b = int ( input ( “b = ” ) )
c = int ( input ( “c = ” ) )

if a + b c or a + c b or b + c a:
print ( “Треугольник не существует” )
elif a != b and a != c and b != c:
print ( “Разносторонний” )
elif a == b == c:
print ( “Равносторонний” )
else :
print ( “Равнобедренный” )

12 18 14
Разносторонний треугольник

25 30 25
Равнобедренный треугольник

input “a = ” , a
input “b = ” , b
input “c = ” , c
if a+b or a+c or b+c then
print “Треугольник не существует.”

else
if a<>b and a<>c and b<>c then
print “Разносторонний треугольник.”
else
if a = b and a = c then
print “Равносторонний треугольник.”
else
print “Равнобедренный треугольник”
endif
endif
endif

[spoiler title=”источники:”]

http://gospodaretsva.com/triangle.html

http://4apple.org/uslovie-sushhestvovanija-treugolnika-po-trem/

[/spoiler]



Ученик

(46),
закрыт



11 лет назад

Миоко Таканава

Гений

(51590)


12 лет назад

var a,b,c:integer; {или real;}
begin
writeln(‘Введите стороны треугольника: ‘);
readln(a,b,c);
if (a = b) and (b = c) then
writeln(‘Равносторонний’);
else
writeln(‘Неравносторонний’);
readln
end.

0 / 0 / 0

Регистрация: 01.11.2012

Сообщений: 120

1

Определение равностороннего треугольника.

04.11.2012, 19:46. Показов 1942. Ответов 4


Студворк — интернет-сервис помощи студентам

Определить, является ли треугольник со сторонами a, b, c равносторонним.

 Комментарий модератора 
Создавайте темы с осмысленными и понятными названиями



0



Derogosu

3 / 0 / 5

Регистрация: 04.11.2012

Сообщений: 30

04.11.2012, 20:23

2

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
    a,b,c: Integer;
 
begin
  Writeln('storony:');
  readln(a);
  readln(b);
  readln(c);
  if a=b then
    if a=c then writeln('Treugolnik ravnostoronnii')
    else writeln('Treugolnik neravnostoronnii')
  else  writeln('Treugolnik neravnostoronnii');
  Readln;
end.



0



qwer1234

14 / 14 / 4

Регистрация: 30.10.2012

Сообщений: 463

04.11.2012, 20:40

3

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Program Tr;
uses crt;
var
a,b,c:integer;
Begin
write('vvedute a-');
readln(a);
write('vvedute b-');
readln(b);
write('vvedute c-');
readln(c);
if ((a=b) and (b=c) and (a=c)) then writeln('Treygolnyk ravnostoronnuy')
else writeln('Treygolnyk ne ravnostoronnuy');
End.

Добавлено через 4 минуты
Derogosu, а если с не равно b??



1



3 / 0 / 5

Регистрация: 04.11.2012

Сообщений: 30

04.11.2012, 20:57

4

если a=b и a=c, то b=c. Школа, 6 класс вроде



0



14 / 14 / 4

Регистрация: 30.10.2012

Сообщений: 463

04.11.2012, 21:05

5

Derogosu, ступил… но я попроще сделал)))



1



Перейти к содержанию

Определить существование треугольника и его тип

Просмотров 12.9к. Обновлено 26 сентября 2021

По длинам трех отрезков, введенных пользователем, определить возможность существования треугольника, составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он разносторонним, равнобедренным или равносторонним.

Треугольник существует только тогда, когда сумма длин любых его двух сторон больше третьей стороны. Иначе две стороны просто «укладываются» на третьей.

Треугольник является разносторонним, если все его стороны имеют разную длину; треугольник будет равнобедренным, если любые две его стороны равны между собой, но отличны от третьей; и треугольник является равносторонним, когда все его стороны равны.

Прежде чем выяснять вид треугольника, необходимо удостовериться, что треугольник существует.

Если треугольник существует, то можно сначала проверить на неравенство три его стороны. Если они не равны друг другу, то треугольник разносторонний. Если это не так, то следующим шагом будет проверка на равенство всех сторон треугольника. Если все стороны равны, делается вывод о том, что треугольник равносторонний. Иначе остается только один вариант — равнобедренный треугольник.

Pascal

Язык Си

Python

КуМир

Basic-256

Добавить комментарий