ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

03.11.2008, 12:08
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Сообщение от VIP
С помощью какой функции можно вычислить факториал числа?
Код:
def factorial(x):
if x == 0:
return 1
else:
return x * factorial(x - 1)
|
|
|

07.11.2008, 14:52
|
|
Участник форума
Регистрация: 29.12.2004
Сообщений: 105
Провел на форуме: 89596
Репутация:
21
|
|
Сообщение от astrologer
Код:
def factorial(x):
if x == 0:
return 1
else:
return x * factorial(x - 1)
Спасибо! Просто я думал там есть, что-то по проще, типа как pow для возведения в степень!
А какую команду нужно написать, чтобы прога остановилась?
|
|
|

07.11.2008, 15:10
|
|
Участник форума
Регистрация: 23.03.2007
Сообщений: 170
Провел на форуме: 1355906
Репутация:
211
|
|
Если выйти, то "exit()"
|
|
|

07.11.2008, 17:56
|
|
Участник форума
Регистрация: 29.12.2004
Сообщений: 105
Провел на форуме: 89596
Репутация:
21
|
|
Сообщение от H1Z
Если выйти, то "exit()"
СПАСИБО! 
|
|
|

08.12.2008, 22:05
|
|
Участник форума
Регистрация: 29.12.2004
Сообщений: 105
Провел на форуме: 89596
Репутация:
21
|
|
У меня к вам очередной вопрос:
в чём ошибка в этой программе:
Код:
#! usr/bin/env python
#! -*- coding: utf-8 -*-
print "Enter x1 of first triangle, please:"
x11=raw_input()
print "Enter y1 of first triangle, please:"
y11=raw_input()
print "Enter x2 of first triangle, please:"
x21=raw_input()
print "Enter y2 of first triangle, please:"
y21=raw_input()
print "Enter x3 of first triangle, please:"
x31=raw_input()
print "Enter y3 of first triangle, please:"
y31=raw_input()
print "Enter x1 of second triangle, please:"
x12=raw_input()
print "Enter y1 of second triangle, please:"
y12=raw_input()
print "Enter x2 of second triangle, please:"
x22=raw_input()
print "Enter y2 of second triangle, please:"
y22=raw_input()
print "Enter x3 of second triangle, please:"
x32=raw_input()
print "Enter y3 of second triangle, please:"
y32=raw_input()
x11=3
x21=7
x31=12
x12=5
x22=7
x32=8
y11=1
y21=9
y31=1
y12=3
y22=5
y32=3
try:
x11=float(x11)
x21=float(x21)
x31=float(x31)
x12=float(x12)
x22=float(x22)
x32=float(x32)
y11=float(y11)
y21=float(y21)
y31=float(y31)
y12=float(y12)
y22=float(y22)
y32=float(y32)
except ValueError:
print "Error!"
## проверка существования треугольников
A1_B1=((x21-x11)**2+(y21-y11)**2)**0.5 ## нахождение длины AB в первом треугольнике
B1_C1=((x31-x21)**2+(y31-y21)**2)**0.5 ## нахождение длины BC в первом треугольнике
A1_C1=((x31-x11)**2+(y31-y11)**2)**0.5 ## нахождение длины AC в первом треугольнике
A2_B2=((x22-x12)**2+(y22-y12)**2)**0.5 ## нахождение длины AB вo втором треугольнике
B2_C2=((x32-x22)**2+(y32-y22)**2)**0.5 ## нахождение длины BC во втором треугольнике
A2_C2=((x32-x12)**2+(y32-y12)**2)**0.5 ## нахождение длины AC во втором треугольнике
if A1_B1+B1_C1<=A1_C1 or A1_B1+A1_C1<=B1_C1 or A1_C1+B1_C1<=A1_B1:
print "Error"
elif A2_B2+B2_C2<=A2_C2 or A2_B2+A2_C2<=B2_C2 or A2_C2+B2_C2<=A2_B2:
print "Error"
else:
a=0
## построение отрезков от вершины второго к вершинам первого
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A2_B1=((x21-x12)**2+(y21-y12)**2)**0.5
A2_C1=((x31-x12)**2+(y31-y12)**2)**0.5
## вычисление площадей треугольников
S_A1_B1_C1=(((A1_B1+B1_C1+A1_C1)/2)*(((A1_B1+B1_C1+A1_C1)/2)-A1_B1)*(((A1_B1+B1_C1+A1_C1)/2)-B1_C1)*(((A1_B1+B1_C1+A1_C1)/2)-A1_C1))**0.5 ## площадь первого треугольника по формуле Герона
S_A2_B2_C2=(((A2_B2+B2_C2+A2_C2)/2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_B2)*(((A2_B2+B2_C2+A2_C2)/2)-B2_C2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь второго треугольника по формуле Герона
S_A2_A1_C1=(((A2_A1+A1_C1+A2_C1)/2)*(((A2_A1+A1_C1+A2_C1)/2)-A2_A1)*(((A2_A1+A1_C1+A2_C1)/2)-A1_C1)*(((A2_A1+A1_C1+A2_C1)/2)-A2_C1))**0.5 ## площадь треугольника A2_A1_C1 по формуле Герона
S_A2_A1_B1=(((A2_A1+A1_B1+A2_B1)/2)*(((A2_A1+A1_B1+A2_B1)/2)-A2_A1)*(((A2_A1+A1_B1+A2_B1)/2)-A1_B1)*(((A2_A1+A1_B1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_A1_B1 по формуле Герона
S_A2_C1_B1=(((A2_C1+B1_C1+A2_B1)/2)*(((A2_C1+B1_C1+A2_B1)/2)-A2_C1)*(((A2_C1+B1_C1+A2_B1)/2)-B1_C1)*(((A2_C1+B1_C1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_C1_B1 по формуле Герона
## построение отрезков от вершины первого к вершинам второго
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A1_B2=((x11-x22)**2+(y11-y22)**2)**0.5
A1_C2=((x11-x32)**2+(y11-y32)**2)**0.5
## вычисление площадей треугольников
S_A1_A2_B2=(((A2_A1+A1_B2+A2_B2)/2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_A1)*(((A2_A1+A1_B2+A2_B2)/2)-A1_B2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_B2))**0.5 ## площадь треугольника A2_A1_B2 по формуле Герона
S_A1_B2_C2=(((A1_B2+A1_C2+B2_C2)/2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_B2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_C2)*(((A1_B2+A1_C2+B2_C2)/2)-B2_C2))**0.5 ## площадь треугольника A1_B2_C2 по формуле Герона
S_A1_A2_C2=(((A2_A1+A1_C2+A2_C2)/2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_A1)*(((A2_A1+A1_C2+A2_C2)/2)-A1_C2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь треугольника A1_A2_C2 по формуле Герона
## сравнение площадей треугольников
if S_A1_B1_C1==S_A2_A1_C1+S_A2_A1_B1+S_A2_C1_B1:
print "Second triangle in first"
elif S_A2_B2_C2==S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2:
print "First triangle in second"
else:
print "%f | %f" %(S_A2_B2_C2, S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2)
Программа должна определять вложен ли один треугольник в другой. Но меня интересуют последний цик if. Если выполнить программу, то она выводит на печать значения S_A2_B2_C2 и S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2 = 36, то есть они одинаковы, но само то, что он печатает эти значения говорит о том, что он уходит не в первую ветку цикла, а в ELSE  Почему так происходит?
|
|
|

08.12.2008, 22:41
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от VIP
У меня к вам очередной вопрос:
в чём ошибка в этой программе:
Код:
#! usr/bin/env python
#! -*- coding: utf-8 -*-
print "Enter x1 of first triangle, please:"
x11=raw_input()
print "Enter y1 of first triangle, please:"
y11=raw_input()
print "Enter x2 of first triangle, please:"
x21=raw_input()
print "Enter y2 of first triangle, please:"
y21=raw_input()
print "Enter x3 of first triangle, please:"
x31=raw_input()
print "Enter y3 of first triangle, please:"
y31=raw_input()
print "Enter x1 of second triangle, please:"
x12=raw_input()
print "Enter y1 of second triangle, please:"
y12=raw_input()
print "Enter x2 of second triangle, please:"
x22=raw_input()
print "Enter y2 of second triangle, please:"
y22=raw_input()
print "Enter x3 of second triangle, please:"
x32=raw_input()
print "Enter y3 of second triangle, please:"
y32=raw_input()
x11=3
x21=7
x31=12
x12=5
x22=7
x32=8
y11=1
y21=9
y31=1
y12=3
y22=5
y32=3
try:
x11=float(x11)
x21=float(x21)
x31=float(x31)
x12=float(x12)
x22=float(x22)
x32=float(x32)
y11=float(y11)
y21=float(y21)
y31=float(y31)
y12=float(y12)
y22=float(y22)
y32=float(y32)
except ValueError:
print "Error!"
## проверка существования треугольников
A1_B1=((x21-x11)**2+(y21-y11)**2)**0.5 ## нахождение длины AB в первом треугольнике
B1_C1=((x31-x21)**2+(y31-y21)**2)**0.5 ## нахождение длины BC в первом треугольнике
A1_C1=((x31-x11)**2+(y31-y11)**2)**0.5 ## нахождение длины AC в первом треугольнике
A2_B2=((x22-x12)**2+(y22-y12)**2)**0.5 ## нахождение длины AB вo втором треугольнике
B2_C2=((x32-x22)**2+(y32-y22)**2)**0.5 ## нахождение длины BC во втором треугольнике
A2_C2=((x32-x12)**2+(y32-y12)**2)**0.5 ## нахождение длины AC во втором треугольнике
if A1_B1+B1_C1<=A1_C1 or A1_B1+A1_C1<=B1_C1 or A1_C1+B1_C1<=A1_B1:
print "Error"
elif A2_B2+B2_C2<=A2_C2 or A2_B2+A2_C2<=B2_C2 or A2_C2+B2_C2<=A2_B2:
print "Error"
else:
a=0
## построение отрезков от вершины второго к вершинам первого
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A2_B1=((x21-x12)**2+(y21-y12)**2)**0.5
A2_C1=((x31-x12)**2+(y31-y12)**2)**0.5
## вычисление площадей треугольников
S_A1_B1_C1=(((A1_B1+B1_C1+A1_C1)/2)*(((A1_B1+B1_C1+A1_C1)/2)-A1_B1)*(((A1_B1+B1_C1+A1_C1)/2)-B1_C1)*(((A1_B1+B1_C1+A1_C1)/2)-A1_C1))**0.5 ## площадь первого треугольника по формуле Герона
S_A2_B2_C2=(((A2_B2+B2_C2+A2_C2)/2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_B2)*(((A2_B2+B2_C2+A2_C2)/2)-B2_C2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь второго треугольника по формуле Герона
S_A2_A1_C1=(((A2_A1+A1_C1+A2_C1)/2)*(((A2_A1+A1_C1+A2_C1)/2)-A2_A1)*(((A2_A1+A1_C1+A2_C1)/2)-A1_C1)*(((A2_A1+A1_C1+A2_C1)/2)-A2_C1))**0.5 ## площадь треугольника A2_A1_C1 по формуле Герона
S_A2_A1_B1=(((A2_A1+A1_B1+A2_B1)/2)*(((A2_A1+A1_B1+A2_B1)/2)-A2_A1)*(((A2_A1+A1_B1+A2_B1)/2)-A1_B1)*(((A2_A1+A1_B1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_A1_B1 по формуле Герона
S_A2_C1_B1=(((A2_C1+B1_C1+A2_B1)/2)*(((A2_C1+B1_C1+A2_B1)/2)-A2_C1)*(((A2_C1+B1_C1+A2_B1)/2)-B1_C1)*(((A2_C1+B1_C1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_C1_B1 по формуле Герона
## построение отрезков от вершины первого к вершинам второго
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A1_B2=((x11-x22)**2+(y11-y22)**2)**0.5
A1_C2=((x11-x32)**2+(y11-y32)**2)**0.5
## вычисление площадей треугольников
S_A1_A2_B2=(((A2_A1+A1_B2+A2_B2)/2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_A1)*(((A2_A1+A1_B2+A2_B2)/2)-A1_B2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_B2))**0.5 ## площадь треугольника A2_A1_B2 по формуле Герона
S_A1_B2_C2=(((A1_B2+A1_C2+B2_C2)/2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_B2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_C2)*(((A1_B2+A1_C2+B2_C2)/2)-B2_C2))**0.5 ## площадь треугольника A1_B2_C2 по формуле Герона
S_A1_A2_C2=(((A2_A1+A1_C2+A2_C2)/2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_A1)*(((A2_A1+A1_C2+A2_C2)/2)-A1_C2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь треугольника A1_A2_C2 по формуле Герона
## сравнение площадей треугольников
if S_A1_B1_C1==S_A2_A1_C1+S_A2_A1_B1+S_A2_C1_B1:
print "Second triangle in first"
elif S_A2_B2_C2==S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2:
print "First triangle in second"
else:
print "%f | %f" %(S_A2_B2_C2, S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2)
Программа должна определять вложен ли один треугольник в другой. Но меня интересуют последний цик if. Если выполнить программу, то она выводит на печать значения S_A2_B2_C2 и S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2 = 36, то есть они одинаковы, но само то, что он печатает эти значения говорит о том, что он уходит не в первую ветку цикла, а в ELSE  Почему так происходит?
Все у тебя в порядке с последним циклом, только что попробовал присвоить вручную:
S_A1_B1_C1=3
S_A2_A1_C1=1
S_A2_A1_B1=1
S_A2_C1_B1=1
, результат :Second triangle in first
У тебя просто не выполняется условие
|
|
|

08.12.2008, 22:50
|
|
Участник форума
Регистрация: 29.12.2004
Сообщений: 105
Провел на форуме: 89596
Репутация:
21
|
|
Но почему он тогда с данными значениями не выполняет условие??? Получается у него 36 не равно 36 ?
|
|
|

08.12.2008, 23:02
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от VIP
Но почему он тогда с данными значениями не выполняет условие??? Получается у него 36 не равно 36 ?
Не вижу условий, если честно  , точнее значений
Упс, сорри, увидел
Короче, блин в глазах уже рябит от твоих цифр - глянь формулы свои, скорее всего ошибка в них
Короче смотри, сделал
S_A2_B2_C2=3
S_A1_A2_B2=1
S_A1_B2_C2=1
S_A1_A2_C2=1
результат: First triangle in second
Значит: 1 вариант - ошибка в формулах
2 вариант- заданные условия не являются подходящими для данной ветки цикла
Цикл у тебя отрабатывает нормально
Блин, и если уж на то пошло, то код у тебя отрабатывает нормально :
Код:
#! usr/bin/env python
#! -*- coding: utf-8 -*-
print "Enter x1 of first triangle, please:"
x11=raw_input()
print "Enter y1 of first triangle, please:"
y11=raw_input()
print "Enter x2 of first triangle, please:"
x21=raw_input()
print "Enter y2 of first triangle, please:"
y21=raw_input()
print "Enter x3 of first triangle, please:"
x31=raw_input()
print "Enter y3 of first triangle, please:"
y31=raw_input()
print "Enter x1 of second triangle, please:"
x12=raw_input()
print "Enter y1 of second triangle, please:"
y12=raw_input()
print "Enter x2 of second triangle, please:"
x22=raw_input()
print "Enter y2 of second triangle, please:"
y22=raw_input()
print "Enter x3 of second triangle, please:"
x32=raw_input()
print "Enter y3 of second triangle, please:"
y32=raw_input()
x11=3
x21=7
x31=12
x12=5
x22=7
x32=8
y11=1
y21=9
y31=1
y12=3
y22=5
y32=3
try:
x11=float(x11)
x21=float(x21)
x31=float(x31)
x12=float(x12)
x22=float(x22)
x32=float(x32)
y11=float(y11)
y21=float(y21)
y31=float(y31)
y12=float(y12)
y22=float(y22)
y32=float(y32)
except ValueError:
print "Error!"
## проверка существования треугольников
A1_B1=((x21-x11)**2+(y21-y11)**2)**0.5 ## нахождение длины AB в первом треугольнике
B1_C1=((x31-x21)**2+(y31-y21)**2)**0.5 ## нахождение длины BC в первом треугольнике
A1_C1=((x31-x11)**2+(y31-y11)**2)**0.5 ## нахождение длины AC в первом треугольнике
A2_B2=((x22-x12)**2+(y22-y12)**2)**0.5 ## нахождение длины AB вo втором треугольнике
B2_C2=((x32-x22)**2+(y32-y22)**2)**0.5 ## нахождение длины BC во втором треугольнике
A2_C2=((x32-x12)**2+(y32-y12)**2)**0.5 ## нахождение длины AC во втором треугольнике
if A1_B1+B1_C1<=A1_C1 or A1_B1+A1_C1<=B1_C1 or A1_C1+B1_C1<=A1_B1:
print "Error"
elif A2_B2+B2_C2<=A2_C2 or A2_B2+A2_C2<=B2_C2 or A2_C2+B2_C2<=A2_B2:
print "Error"
else:
a=0
## построение отрезков от вершины второго к вершинам первого
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A2_B1=((x21-x12)**2+(y21-y12)**2)**0.5
A2_C1=((x31-x12)**2+(y31-y12)**2)**0.5
## вычисление площадей треугольников
S_A1_B1_C1=(((A1_B1+B1_C1+A1_C1)/2)*(((A1_B1+B1_C1+A1_C1)/2)-A1_B1)*(((A1_B1+B1_C1+A1_C1)/2)-B1_C1)*(((A1_B1+B1_C1+A1_C1)/2)-A1_C1))**0.5 ## площадь первого треугольника по формуле Герона
S_A2_B2_C2=(((A2_B2+B2_C2+A2_C2)/2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_B2)*(((A2_B2+B2_C2+A2_C2)/2)-B2_C2)*(((A2_B2+B2_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь второго треугольника по формуле Герона
S_A2_A1_C1=(((A2_A1+A1_C1+A2_C1)/2)*(((A2_A1+A1_C1+A2_C1)/2)-A2_A1)*(((A2_A1+A1_C1+A2_C1)/2)-A1_C1)*(((A2_A1+A1_C1+A2_C1)/2)-A2_C1))**0.5 ## площадь треугольника A2_A1_C1 по формуле Герона
S_A2_A1_B1=(((A2_A1+A1_B1+A2_B1)/2)*(((A2_A1+A1_B1+A2_B1)/2)-A2_A1)*(((A2_A1+A1_B1+A2_B1)/2)-A1_B1)*(((A2_A1+A1_B1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_A1_B1 по формуле Герона
S_A2_C1_B1=(((A2_C1+B1_C1+A2_B1)/2)*(((A2_C1+B1_C1+A2_B1)/2)-A2_C1)*(((A2_C1+B1_C1+A2_B1)/2)-B1_C1)*(((A2_C1+B1_C1+A2_B1)/2)-A2_B1))**0.5 ## площадь треугольника A2_C1_B1 по формуле Герона
## построение отрезков от вершины первого к вершинам второго
A2_A1=((x11-x12)**2+(y11-y12)**2)**0.5
A1_B2=((x11-x22)**2+(y11-y22)**2)**0.5
A1_C2=((x11-x32)**2+(y11-y32)**2)**0.5
## вычисление площадей треугольников
S_A1_A2_B2=(((A2_A1+A1_B2+A2_B2)/2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_A1)*(((A2_A1+A1_B2+A2_B2)/2)-A1_B2)*(((A2_A1+A1_B2+A2_B2)/2)-A2_B2))**0.5 ## площадь треугольника A2_A1_B2 по формуле Герона
S_A1_B2_C2=(((A1_B2+A1_C2+B2_C2)/2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_B2)*(((A1_B2+A1_C2+B2_C2)/2)-A1_C2)*(((A1_B2+A1_C2+B2_C2)/2)-B2_C2))**0.5 ## площадь треугольника A1_B2_C2 по формуле Герона
S_A1_A2_C2=(((A2_A1+A1_C2+A2_C2)/2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_A1)*(((A2_A1+A1_C2+A2_C2)/2)-A1_C2)*(((A2_A1+A1_C2+A2_C2)/2)-A2_C2))**0.5 ## площадь треугольника A1_A2_C2 по формуле Герона
## сравнение площадей треугольников
S_A2_B2_C2=3
S_A1_A2_B2=1
S_A1_B2_C2=1
S_A1_A2_C2=1
if S_A1_B1_C1==S_A2_A1_C1+S_A2_A1_B1+S_A2_C1_B1:
print "Second triangle in first"
elif S_A2_B2_C2==S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2:
print "First triangle in second"
else:
print "%f | %f" %(S_A2_B2_C2, S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2)
Результат: First triangle in second
Последний раз редактировалось login999; 08.12.2008 в 23:17..
|
|
|

08.12.2008, 23:43
|
|
Участник форума
Регистрация: 29.12.2004
Сообщений: 105
Провел на форуме: 89596
Репутация:
21
|
|
Так они перед циклом высчитываются по формулам. В формулах ошибок вроде нет - всё проверял. Дело в том, что в последнем цикле он должен сравнивать два числа, он их почему-то считает различными, а потом выводит их на печать : и это 36 и 36 
|
|
|

09.12.2008, 00:07
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от VIP
Так они перед циклом высчитываются по формулам. В формулах ошибок вроде нет - всё проверял. Дело в том, что в последнем цикле он должен сравнивать два числа, он их почему-то считает различными, а потом выводит их на печать : и это 36 и 36 
Короче, читаю твой цикл, как его вижу я :
Код:
if S_A1_B1_C1==S_A2_A1_C1+S_A2_A1_B1+S_A2_C1_B1:
print "Second triangle in first"
elif S_A2_B2_C2==S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2:
print "First triangle in second"
else:
print "%f | %f" %(S_A2_B2_C2, S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2)
ЕСЛИ
S_A1_B1_C1==S_A2_A1_C1+S_A2_A1_B1+S_A2_C1_B1, то : напечатать "Second triangle in first"
ЕЩЕ ЕСЛИ
S_A2_B2_C2==S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2, то : напечатать "First triangle in second"
ЕЩЕ (во всех остальных случаях)
НАПЕЧАТАТЬ "%f | %f" %(S_A2_B2_C2, S_A1_A2_B2+S_A1_B2_C2+S_A1_A2_C2) - где здесь сравнение ?
в первых двух ветках сравнение есть, в третьей же ветке сравнения нету, есть только задание вывода на печать, цикл отрабатывает все так как ему указано, скажи, что должна делать третья ветка ?
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Books Python
|
FRAGNATIC |
PHP, PERL, MySQL, JavaScript |
1 |
01.11.2009 18:20 |
|
Начинаем программировать на PHP, Python, AS3
|
nerezus |
PHP, PERL, MySQL, JavaScript |
0 |
19.08.2008 10:42 |
|
TCL/TK and PYTHON...
|
Rejjin |
С/С++, C#, Delphi, .NET, Asm |
9 |
25.07.2008 22:03 |
|
[Immunity Dbg Python Scripting]
|
0x0c0de |
Реверсинг |
5 |
28.06.2008 15:32 |
|
Python быть или не быть
|
procedure |
PHP, PERL, MySQL, JavaScript |
28 |
24.01.2008 21:19 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|