Gyakorlati alapok
Háromszög-e a háromszög? (többszörös feltételmegadás II.)
Borzoljuk tovább a kedélyeket, azaz folytassuk a többszörös feltételmegadás körüli felfedezéseinket!
Adott 3 db oldalhossz (a, b, c), amelyek csakis akkor alkotnak háromszöget, ha 2 db oldalhossz mindig nagyobb a 3. oldalhossznál. Kissé sematikusan, de lényegében így lehetne ezt lerajzolni:
A feltételvizsgálatba az összes oldalt be kell vonnunk és mivel az összes feltételnek egyszerre kell teljesülnie, logikai ÉS műveletet szükséges használnunk. Írjuk ezt le pszeudokódban:
HA a + b > c ÉS a + c > b ÉS b + c > a
A vizsgálatot elég 1 irányban megtennünk, mivel...
a + b > c = b + a > c
...így 6 db művelet helyett csak 3 db műveletünk lesz.
Nézzük meg a futtatható Java-kódot!
public class Main {
public static void main(String[] args) {
int a = 3;
int b = 4;
int c = 5;
if((a + b > c) && (b + c > a) && (a + c > b)){
System.out.println("Az oldalak
háromszöget alkotnak.");
}
else
System.out.println("Az oldalak NEM
alkotnak háromszöget.");
}
}
Végeredmény:
Az oldalak háromszöget alkotnak.
Nézzünk meg egy olyan esetet is, amelyben az oldalak nem alkotnak háromszöget:
public class Main {
public static void main(String[] args) {
int a = 2;
int b = 4;
int c = 6;
if((a + b > c) && (b + c > a) && (a + c > b)){
System.out.println("Az oldalak
háromszöget alkotnak.");
}
else
System.out.println("Az oldalak NEM
alkotnak háromszöget.");
}
}
Végeredmény:
Az oldalak NEM alkotnak háromszöget.