qbol1234
#programowanie #programowaniewc #halp

Czy jest jakiś zgrabniejszy sposób by napisać:

if(R1 < 0 || R2 < 0 || R3 < 0 || R4 < 0 || R5 < 0 || R6 < 0)
tzn warunek jest taki że 'jeśli którakolwiek z tych zmiennych jest mniejsza od zera'
  • Najlepsze
  • Wszystkie komentarze
KrzaQ2
@qbol1234: W c++ masz

std::any_of
, w C implementujesz koło od nowa.
kamdz
@qbol1234: http://www.jquery4u.com/javascript/shorthand-javascript-techniques/ zobacz punkt 17. i zrób analogicznie w swoim języku
zakowskijan72
@qbol1234: Po pierwsze odsuń nawias od if. if to słowo kluczowe, a nie nazwa funkcji. Po drugie zmień te sześć zmiennych na jedną tablicę o sześciu elementach. Po trzecie napisz funkcję lessThan0 zwracającą true jeżeli jakiś z elementów tablicy jest mniejszy od 0 i to jej użyj w ifie. Zaimpelemntuj ją za pomocą fora.
kemek
kemek
@kemek: Się pomyliłem: zamiast 0x40000000 powinno być 0x80000000. Tak to jest, jak się pisze i nie sprawdzi. ;p
applicative_functor
@qbol1234: Zawsze możesz zrobić tablicę 6 elementową i sprawdzać w pętli
qbol1234
qbol1234 Autor
0
Rincewind
@qbol1234: Jakiego typu jest

Rx
?
qbol1234
qbol1234 Autor
0
@Rincewind: float
echelon_
@qbol1234: Tego chyba bardzo się nie poprawi.

Jest tutaj "else"? Może da radę załatwić to ładniej jakąś negacją czy coś.
kemek
kemek
@qbol1234: Jeśli wszystkie są intem to krócej (ale na pewno mniej czytelnie) będzie:

if ((R1 | R2 | R3 | R4 | R5 | R6) & 0x40000000)

;)
A.....k
A.....k
@zakowskijan72:

float r[6];

for(i=0; r[i]>0 && i-8; i++)