Ich hoff ihr könnt mir bissl helfen: und zwar hab ich folgende Angabe:
Die Zahl N der Eckpunkte eines unregelmäßigen Vielecks sei einzugeben. Weiters soll der ABstand vom Eckpunkt i zum Eckpunkt i+1 gleich d[i] sein (d[i] > 0). Zu ermitteln ist dasjenige Eckpunktepaar, das den Umfang des unregelmäßigen Vielecks bestmöglich halbiert.
Beispiel:
Anzahl der Eckpunkte: 5
Abstand Eckpunkt 1 - Eckpunkt 2: 12
E2-E3: 10
E3-E4: 8
E4-E5: 11
E5-E1: 13
Die Eckpunkte 2 und 5 halbieren den Umfang bestmöglich.
Sodale.. in der Theorie kann ich das Beispiel zwar durchrechnen und auf einem Blatt Papier genauso .. allerdins steh ich bei der Programmierung total an.. :/
Also halt die ganzen Abstände und Eckpunkte eingeben ist ja nicht das Problem sondern dann der Schluss!
In dem ganzen Kapitel geht es um Arrays .. also nix Großartiges
Hier mal der Anfang von dem Projekt (der Code wird noch optimiert ^^)
public class UVieleck { public static void main(String[]args) { int eckpunkte=Console.readInt("Bitte die Anzahl der Eckpunkte eingeben: "); if(eckpunkte<3) { do { eckpunkte=Console.readInt("Falsche Eingabe! Bitte wiederholen und min. 3 Eckpunkte: "); // müssen ja mehr als 3 Seiten sein, sonst wär es ja kein "Vieleck" }while (eckpunkte<3); }//if int[] d= new int[eckpunkte]; for(int i=0; i<d.length; i++) { d[i]=Console.readInt("Bitte den "+(i+1)+"ten Abstand eingeben: "); if(d[i]<=0) { do { d[i]=Console.readInt("Falsche Eingabe! Bitte wiederholen: "); }while (d[i]<=0); }//if }//for int umfang=0; for(int j=0; j<d.length; j++) umfang+= d[j]; System.out.println(umfang); // war nur zum Test ob eh alles funktioniert;) }//main }//class
Ich sag schon mal Danke, falls sich wer über dieses Beispiel drüber traut
greez