Различия между версиями 2 и 3
Версия 2 от 2008-11-26 12:17:50
Размер: 92
Редактор: FrBrGeorge
Комментарий:
Версия 3 от 2008-11-26 13:01:58
Размер: 2733
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 3: Строка 3:
 * Что есть истина? http://docs.python.org/library/stdtypes.html#truth-value-testing // http://fantom-lab.narod.ru/Python/LerningPythonHelpRus/LibRef/002/002-3/002-3-01.htm
 * Логические операции. http://docs.python.org/library/stdtypes.html#boolean-operations-and-or-not // http://fantom-lab.narod.ru/Python/LerningPythonHelpRus/LibRef/002/002-3/002-3-02.htm
 * Сравнения. http://docs.python.org/library/stdtypes.html#comparisons // http://fantom-lab.narod.ru/Python/LerningPythonHelpRus/LibRef/002/002-3/002-3-03.htm
==== Задача ====
Ввести три числа и вывести, являются ли они сторонами треугольника (т. е. выполняется ли условие, что сумма любых двух чисел больше третьего).
  1.#0 Без использования логических операций
  {{{#!Python
# -*- coding: utf-8 -*-
a,b,c=input("Введите три числа через запятую: ")
if a<b+c:
  if b<a+c:
    if c<a+b:
      print a,b,c,"являются сторонами треугольника"
    else:
      print a,b,c,"НЕ являются сторонами треугольника"
  else:
    print a,b,c,"НЕ являются сторонами треугольника"
else:
  print a,b,c,"НЕ являются сторонами треугольника"
  }}}
  1. С использованием логических операций и ровно одного оператора `if`
  {{{#!Python
# -*- coding: utf-8 -*-
a,b,c=input("Введите три числа через запятую: ")
if a<b+c and b<a+c and c<a+b:
  print a,b,c,"являются сторонами треугольника"
else:
  print a,b,c,"НЕ являются сторонами треугольника"
  }}}
  1. Без использования оператора `if`
  {{{#!Python
# -*- coding: utf-8 -*-
a,b,c=input("Введите три числа через запятую: ")
print a,b,c,
print a<b+c and b<a+c and c<a+b and "являются сторонами треугольника" or "НЕ являются сторонами треугольника"
  }}}
  1. Без использования оператора `if` и не повторяя текста дважды:
  {{{#!Python
# -*- coding: utf-8 -*-
a,b,c=input("Введите три числа через запятую: ")
print a,b,c, not (a<b+c and b<a+c and c<a+b) and "НЕ" or "", "являются сторонами треугольника"
  }}}

Условные операторы и выражения

Ссылки по теме:

Задача

Ввести три числа и вывести, являются ли они сторонами треугольника (т. е. выполняется ли условие, что сумма любых двух чисел больше третьего).

  1. Без использования логических операций
       1 # -*- coding: utf-8 -*-
       2 a,b,c=input("Введите три числа через запятую: ")
       3 if a<b+c:
       4   if b<a+c:
       5     if c<a+b:
       6       print a,b,c,"являются сторонами треугольника"
       7     else:
       8       print a,b,c,"НЕ являются сторонами треугольника"
       9   else:
      10     print a,b,c,"НЕ являются сторонами треугольника"
      11 else:
      12   print a,b,c,"НЕ являются сторонами треугольника"
    
  2. С использованием логических операций и ровно одного оператора if

       1 # -*- coding: utf-8 -*-
       2 a,b,c=input("Введите три числа через запятую: ")
       3 if a<b+c and b<a+c and c<a+b:
       4   print a,b,c,"являются сторонами треугольника"
       5 else:
       6   print a,b,c,"НЕ являются сторонами треугольника"
    
  3. Без использования оператора if

       1 # -*- coding: utf-8 -*-
       2 a,b,c=input("Введите три числа через запятую: ")
       3 print a,b,c,
       4 print a<b+c and b<a+c and c<a+b and "являются сторонами треугольника" or "НЕ являются сторонами треугольника"
    
  4. Без использования оператора if и не повторяя текста дважды:

       1 # -*- coding: utf-8 -*-
       2 a,b,c=input("Введите три числа через запятую: ")
       3 print a,b,c, not (a<b+c and b<a+c and c<a+b) and "НЕ" or "", "являются сторонами треугольника"
    

LecturesVMSH/04_Conditionals (последним исправлял пользователь eSyr 2008-11-26 22:38:13)