Eingabeoberfläche für Daten, Gestaltung Input und Output
-
Hi Leute,
ich würde mich über eure Hilfe sehr freuen. Bin Neuling in C++ und habe folgendes Programm geschrieben:
#include<iostream> using namespace std; int main () { int i,max,k; double nutzen [10]={12.6,33.77,51.32,5.7,500.8,9.8,85.18,89.0,37.5,24.1}; //Nutzen double gewichte [10]={12.6,33.77,51.32,5.7,70.8,9.8,85.18,89.0,37.5,24.1}; //Gewichte double kap = 180; //Kapazität double ngew = 0; double temp=0; //Ausgenutzte Kapazität int n=sizeof(nutzen)/sizeof(double); double greedy_nutzen=0; while (ngew <= kap) // Solange die Kapazität noch nicht überschritten ist { max=0; k=0; while (k<n) // Finde nutzenmaximalen Gegenstand { if (nutzen[k]>nutzen[max]) {max=k; } k++; } double temp=temp + gewichte[max]; if (temp >= kap) { printf("Der Gegenstand mit dem naechsthohen Nutzen kann nicht mehr eingepackt werden.\n"); system( "pause" ); break; } else { double ngew=ngew + gewichte[max]; double greedy_nutzen=greedy_nutzen+nutzen[max]; //bereits eingepackte Gegenstände bekommen nun Nutzen 0, //sodass Sie nicht noch einmal eingepackt werden können. nutzen[max]=0; cout<< "Rucksackkapazitaet:" << kap <<endl; cout<< "Gewaehlter Gegenstand: " << max <<endl; cout<< "Erreichter Nutzen: " << greedy_nutzen <<endl; cout<< "Benutzte Kapazitaet: " <<ngew<<endl; } system( "pause" ); } }Ich würde das Programm gerne etwas anwenderfreundlicher machen, indem eine Eingabe der Vektoren durch den in einer Programmmaske erfolgen soll.
Gibt es da evtl. eine einfache Möglichkeit/vllt. auch eine mit GUI, wie man die unten stehenden Vektoren dem Programm durch Eintippen übergeben kann?double nutzen [10]={12.6,33.77,51.32,5.7,500.8,9.8,85.18,89.0,37.5,24.1}; //Nutzen double gewichte [10]={12.6,33.77,51.32,5.7,70.8,9.8,85.18,89.0,37.5,24.1}; //Gewichte double kap = 180;Gibt es zudem eine schönere Möglichkeit der Ausgabe, als dem Fließtext in der Console?
Ich bin für eure Antworten sehr dankbar!!
Schöne Grüße,
swizzx
-
swizzx schrieb:
Gibt es zudem eine schönere Möglichkeit der Ausgabe, als dem Fließtext in der Console?
Hi,
ne die gibt es als Anfänger nicht. C++ kennt keine GUI. Du musst also auf externe Toolkits zurückgreifen wie z.B. Qt. Einem Anfänger ist davon abzuraten. An GUIs kannst du dich machen wenn du min. 1 Buch durchgearbeitet hast. Ansonsten ist C++ wohl die falsche Sprache für dich.
-
Du kannst ja einfach auch eine Datei machen, die dein Programm dann verarbeitet.