Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: IF (kahden luvun väliltä)

Jix [31.01.2007 17:56:06]

#

Eli mitenkäs pystyy tekemään ehtolauseen joka tulostaisi ehdon jos muuttujan arvo on kahden luvun väliltä? Jos tarvii pyytäkää lisäselitystä.

Megant [31.01.2007 17:58:42]

#

int luku = 5;
if(luku < 4 && luku > 2) {
   printf("Luku on pienempi kuin 4 ja suurempi kuin 2\n");
}

tesmu [31.01.2007 18:03:23]

#

Ja tässä funktio tuotavarten

int onko(int luku1,int luku2, int haettu);

int main(void) {
 if(onko(5, 2)) {
  printf("Kyl maar\n");
 }
 else {
  printf("ei oolee\n");
 }
}
int onko(int luku1, int luku2, int haettu) {
 if (haettu < luku2 && haettu > luku1) {
  return 1;
 }
 else {
  return 0;
 }
}

tgunner [31.01.2007 18:30:26]

#

^Onpas kyllä kädetön ja turha funktio mielestäni. :)

tn [31.01.2007 18:52:52]

#

TGunner kirjoitti:

^Onpas kyllä kädetön ja turha funktio mielestäni. :)

No ei välttämättä, mutta toteutus voisi kyllä olla selvempi ja yksinkertaisempi (sekä paremmin nimetty). Esimerkiksi näin:

bool avoimellaValilla(int luku, int alaraja, int ylaraja) {
    return alaraja < luku && luku < ylaraja;
}

Tästä voisi tietenkin tehdä myös yleiskäyttöisen mallin:

template <class T>
bool avoimellaValilla(T verrattava, T alaraja, T ylaraja) {
    return alaraja < verrattava && verrattava < ylaraja;
}

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta