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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2010, 20:36   #1
Crab2
Пользователь
 
Регистрация: 12.02.2010
Сообщений: 19
По умолчанию Замена в коде

Код:
if ((x*x)==(y*y)+(z*z))   
   a=1;
  else 
    if ((y*y)==(x*x)+(z*z))
      a=1;
    else
      if ((z*z)==(x*x)+(y*y))
        a=1;
Народ, можно ли такую запись записать по другому? а то как то громоздко выглядит а через || почему то не получается вот вариант что было(неработающее)
Код:
if (((x*x)==(y*y)+(z*z))||((y*y)==(x*x)+(z*z))||((z*z)==(x*x)+(y*y)))
плюсом где-то тут я читал про pow, все, нашел библиотеку, включил её, пишу пов и он выдает десять пятнадцать ошибок, может быть дело в том, что у меня выглядит так pow(x,2) и x у меня дабл, но без дабла нельзя
И есть функция для квадрата своя? или только через поу?
Все и сразу-мечта идиота

Последний раз редактировалось Crab2; 13.02.2010 в 00:27.
Crab2 вне форума Ответить с цитированием
Старый 12.02.2010, 20:57   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Как конкретно эта конструкция "не работала"? Выдавала неправильный результат или не компилировалась? Судя по внешнему виду, должна работать.
А pow - это, конечно, хорошо, однако для возведения в квадрат лично я всегда предпочитал писать явно x*x, чтобы не стрелять из пушки по воробьям и более явно выразить возведение в квадрат.
Кстати, лучше приведите пример кода, где у вас ошибки с || и с pow.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 12.02.2010, 23:25   #3
Cpluser
Форумчанин
 
Аватар для Cpluser
 
Регистрация: 16.02.2009
Сообщений: 555
По умолчанию

Код:
int x=2;
pow((double)x,2);
Cpluser вне форума Ответить с цитированием
Старый 12.02.2010, 23:32   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

есть смысл квадраты подсчитать перед условием, чтобы они высчитывались только один раз

Код:
int xx = x * x;
int yy = y * y;
int zz = z * z;

if ((xx == yy + zz) ||
    (yy == xx + zz) ||
    (zz == xx + yy))
{
	a = 1;
}
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 13.02.2010, 00:26   #5
Crab2
Пользователь
 
Регистрация: 12.02.2010
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Гром Посмотреть сообщение
Как конкретно эта конструкция "не работала"? Выдавала неправильный результат или не компилировалась? Судя по внешнему виду, должна работать.
А pow - это, конечно, хорошо, однако для возведения в квадрат лично я всегда предпочитал писать явно x*x, чтобы не стрелять из пушки по воробьям и более явно выразить возведение в квадрат.
Кстати, лучше приведите пример кода, где у вас ошибки с || и с pow.
с логическим или не компилировалось
Все и сразу-мечта идиота
Crab2 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в коде. СИ Ver0nica Помощь студентам 2 02.10.2009 19:36
Ошибка в коде Revival001 PHP 11 12.07.2009 19:25
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL DorianLeroy Фриланс 8 18.02.2009 18:52
Ошибка в коде hacknet Компоненты Delphi 12 07.12.2008 14:23
Косяк в коде Dimon88 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 18.09.2008 18:09