Sie sind auf Seite 1von 5

#include "stdafx.

h" using namespace System; const Int32 Maxzahl=3; struct kiste{ Int32 Int32 Int32 Int32 Int32 }; //Anzahl der maximal verfgbaren Kisten

identNummer; hoehe; breite; laenge; volumen;

void init(kiste tempKiste[Maxzahl]) { for(Int32 i=0;i<=Maxzahl-1;i++){ tempKiste[i].identNummer=0; tempKiste[i].hoehe=0; tempKiste[i].breite=0; tempKiste[i].laenge=0; tempKiste[i].volumen=0; } } void anlegen(kiste tempKiste[Maxzahl]){ Console::Clear(); Int32 userInput=0; Console::Write("Welche Kiste mchten sie neu Anlegen: "); userInput=Convert::ToInt32(Console::ReadLine()); Console::Clear(); if(tempKiste[userInput-1].identNummer == 0){ if(userInput<=Maxzahl){ tempKiste[userInput-1].identNummer=userInput; Console::WriteLine("Kiste Nummer: {0} wurde neu angelegt , geben sie nun die Grsse ein.",userInput); Console::Write("Hhe \t:"); tempKiste[userInput-1].hoehe=Convert::ToInt32(Console::R eadLine()); Console::Write("Breite\t:"); tempKiste[userInput-1].breite=Convert::ToInt32(Console:: ReadLine()); Console::Write("Lnge\t:"); tempKiste[userInput-1].laenge=Convert::ToInt32(Console:: ReadLine()); tempKiste[userInput-1].volumen=tempKiste[userInput-1].la enge*tempKiste[userInput-1].breite*tempKiste[userInput-1].hoehe; Console::WriteLine("Volumen\t={0}",tempKiste[userInput-1 ].volumen); Console::WriteLine("\nAlle Daten fr die Kiste {0} wurden erfasst.\nBeliebige Taste frs Menu.",userInput); Console::ReadKey(); Console::Clear(); } else{ Console::WriteLine("Es stehen Ihnen mmaximal {0} Kisten zur Verfgung.",Maxzahl); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } }

else{ Console::WriteLine("Diese Kiste gibt es bereits."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } void loeschen(kiste tempKiste[Maxzahl]){ Console::Clear(); Int32 userInput=0; Console::Write("Welche Kiste mchten Sie lschen: "); userInput=Convert::ToInt32(Console::ReadLine()); Console::Clear(); if(userInput<=Maxzahl){ if(tempKiste[userInput-1].identNummer != 0){ tempKiste[userInput-1].identNummer=0; Console::WriteLine("\nKiste wurde erfolgreich gelscht\n\n Beliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } else{ Console::WriteLine("Diese Kiste gibt es nicht."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } else{ Console::WriteLine("Diese Kiste gibt es nicht."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } void aendern(kiste tempKiste[Maxzahl]){ Console::Clear(); Int32 userInput=0; Console::Write("Welche Kiste mchten Sie ndern: "); userInput=Convert::ToInt32(Console::ReadLine()); Console::Clear(); if(userInput<=Maxzahl){ if(tempKiste[userInput-1].identNummer != 0){ Console::WriteLine("Hier die alten Daten der Kiste Numme r {0}\n\nNummer\t Hhe\tBreite\tLnge\tVolumen",userInput); Console::WriteLine("{0}\t {1}\t{2}\t{3}\t{4}",tempKiste[ userInput-1].identNummer, tempKiste[userInput-1].hoehe, tempKiste[userInput-1].b reite, tempKiste[userInput-1].laenge, tempKiste[userInput-1].volumen); Console::WriteLine("\nGeben sie nun die neuen Daten der Kiste Nummmer {0} ein.",userInput); Console::Write("Hhe \t:"); tempKiste[userInput-1].hoehe=Convert::ToInt32(Console::R eadLine()); Console::Write("Breite\t:"); tempKiste[userInput-1].breite=Convert::ToInt32(Console:: ReadLine()); Console::Write("Lnge\t:"); tempKiste[userInput-1].laenge=Convert::ToInt32(Console::

ReadLine()); tempKiste[userInput-1].volumen=tempKiste[userInput-1].la enge*tempKiste[userInput-1].breite*tempKiste[userInput-1].hoehe; Console::WriteLine("Volumen\t={0}",tempKiste[userInput-1 ].volumen); Console::WriteLine("\nDaten fr die Kiste {0} wurden erfas st.\n\nBeliebige Taste frs Menu.",userInput); Console::ReadKey(); Console::Clear(); } else{ Console::WriteLine("Diese Kiste gibt es nicht."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } else{ Console::WriteLine("Diese Kiste gibt es nicht."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } void anzeigen (kiste tempKiste[Maxzahl]){ Console::Clear(); Int32 userInput=0; Console::Write("Welche Kiste mchten Sie sich anzeigen lassen: "); userInput=Convert::ToInt32(Console::ReadLine()); Console::Clear(); if(userInput<=Maxzahl){ if(tempKiste[userInput-1].identNummer != 0){ Console::WriteLine("Nummer\t Hhe\tBreite\tLnge\tVolumen"); Console::WriteLine("{0}\t {1}\t{2}\t{3}\t{4}",tempKiste[ userInput-1].identNummer, tempKiste[userInput-1].hoehe, tempKiste[userInput-1].b reite, tempKiste[userInput-1].laenge, tempKiste[userInput-1].volumen); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } else{ Console::WriteLine("Diese Kiste ist Leer."); Console::WriteLine("##\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } else{ Console::WriteLine("Diese Kiste gibt es nicht."); Console::WriteLine("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } } void alleAnzeigen(kiste tempKiste[Maxzahl]){ Console::Clear(); Int32 checker=0; Int32 zeilen=0; Console::WriteLine("Nummer\t Hhe\tBreite\tLnge\tVolumen");

for(Int32 i=0; i<=Maxzahl-1; i++){ if(tempKiste[i].identNummer>=1){ Console::WriteLine("{0}\t {1}\t{2}\t{3}\t{4}",tempKiste[ i].identNummer, tempKiste[i].hoehe, tempKiste[i].breite, tempKiste[i].laenge, te mpKiste[i].volumen); checker=checker+tempKiste[i].identNummer; zeilen++; } if(zeilen==22){ //Anzahl der Zeilen die ohne Pause angezeigt we rden Console::Write("Weiter mit beliebiger Taste."); Console::ReadKey(); zeilen=0; } } if(checker==0){ //Hier wird geprft ob es Kisten mit einer IdentNummer gi bt oder nicht Console::WriteLine("\nEs sind keine Kisten vorhanden\n"); } Console::Write("\nBeliebige Taste frs Menu."); Console::ReadKey(); Console::Clear(); } int main(array<System::String ^> ^args) { Int32 usersChoice=0; kiste kleineKiste[Maxzahl]; //Lokales Feld vom typ Kiste init(kleineKiste); Boolean zumMenu = true; do{ Console::WriteLine("Bitte whlen Sie eine Funktion aus:"); Console::WriteLine("1 - Neue Kiste anlegen\n2 - Kiste lschen\n3 Kiste ndern\n4 - Kiste anzeigen\n5 - Liste aller Kisten ausgeben\n9 - Programm b eenden"); Console::Write("\nIhre Auswahl : "); usersChoice=Convert::ToInt32(Console::ReadLine()); switch(usersChoice){ case 1: anlegen(kleineKiste); break; case 2: loeschen(kleineKiste); break; case 3: aendern(kleineKiste); break; case 4: anzeigen(kleineKiste); break; case 5: alleAnzeigen(kleineKiste); break; case 9: zumMenu = false; break; default: Console::Beep(); Console::Clear();

} }while(zumMenu == true); return 0; }