diff --git a/Kalender/Tage seit.cpp b/Kalender/Tage seit.cpp index 889f518..4d9b4e6 100644 --- a/Kalender/Tage seit.cpp +++ b/Kalender/Tage seit.cpp @@ -2,47 +2,48 @@ #include #include #include +#include int main() { //Aufgabe: Kombiniere dieses Programm mit dem jeweils anderen im Kalender Ordner. - + std::string input; unsigned short daysInMonth[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30}, day = 0, month = 0, year = 0; - - std::cout << "Gib den Tag des Monats ein: "; + + printf("Gib den Tag des Monats ein: "); do { getline(std::cin, input); std::stringstream(input) >> day; - if(day>31 || day<1) std::cerr << "ERROR: Der eingegebene Tag existiert nicht. Gib einen Tag zwischen 1 und 31 ein: "; + if(day>31 || day<1) printf("ERROR: Der eingegebene Tag existiert nicht. Gib einen Tag zwischen 1 und 31 ein: "); }while(day>31 || day<1); - - std::cout << "Gib den Monat ein: "; + + printf("Gib den Monat ein: "); do { getline(std::cin, input); std::stringstream(input) >> month; if(day==29 && month==2) daysInMonth[1]++; - else if(month>12 || month<1) std::cerr << "ERROR: Der eingegebene Monat existiert nicht. Gib einen Monat zwischen 1 und 12 ein: "; - else if(day>daysInMonth[month-1]) std::cerr << "ERROR: Der eingegebene Monat hat nicht genug Tage. Gib einen anderen Monat ein: "; + else if(month>12 || month<1) printf("ERROR: Der eingegebene Monat existiert nicht. Gib einen Monat zwischen 1 und 12 ein: "); + else if(day>daysInMonth[month-1]) printf("ERROR: Der eingegebene Monat hat nicht genug Tage. Gib einen anderen Monat ein: "); }while(month>12 || month<1 || day>daysInMonth[month-1]); - - std::cout << "Gib das Jahr ein: "; + + printf("Gib das Jahr ein: "); do { getline(std::cin, input); std::stringstream(input) >> year; - if(year<0) std::cerr << "ERROR: Das Datum liegt vor dem 1. Januar 0. Gib ein Jahr nach dem 1. Januar 00 ein: "; - else if(day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)) std::cerr << "ERROR: Die bereits erfolgten Eingaben benötigen ein Schaltjahr. Gib ein anderes Jahr ein: "; + if(year<0) printf("ERROR: Das Datum liegt vor dem 1. Januar 0. Gib ein Jahr nach dem 1. Januar 00 ein: "); + else if(day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)) printf("ERROR: Die bereits erfolgten Eingaben benötigen ein Schaltjahr. Gib ein anderes Jahr ein: "); }while(year<0 || day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)); - - std::cout << "\nVom 1. Januar 0 bis zum " << day << "." << month << "." << year; - + + printf("\nVom 1. Januar 0 bis zum %i.%i.%i", day, month, year); + for(short idx = 0; idx #include #include +#include int main() { @@ -10,33 +11,33 @@ int main() std::string input; unsigned short day = 0, month = 0, daysInMonth[] = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, year = 0; - std::cout << "Gib den Tag des Monats ein: "; + printf("Gib den Tag des Monats ein: "); do { getline(std::cin, input); std::stringstream(input) >> day; - if(day>31 || day<1) std::cout << "ERROR: Der eingegebene Tag existiert nicht. Gib einen Tag zwischen 1 und 31 ein: "; + if(day>31 || day<1) printf("ERROR: Der eingegebene Tag existiert nicht. Gib einen Tag zwischen 1 und 31 ein: "); }while(day>31 || day<1); - std::cout << "Gib den Monat ein: "; + printf("Gib den Monat ein: "); do { getline(std::cin, input); std::stringstream(input) >> month; - if(month>12 || month<1) std::cout << "ERROR: Der eingegebene Monat existiert nicht. Gib einen Monat zwischen 1 und 12 ein: "; - else if(day>daysInMonth[month-1]) std::cout << "ERROR: Der eingegebene Monat hat nicht genug Tage. Gib einen anderen Monat ein: "; + if(month>12 || month<1) printf("ERROR: Der eingegebene Monat existiert nicht. Gib einen Monat zwischen 1 und 12 ein: "); + else if(day>daysInMonth[month-1]) printf("ERROR: Der eingegebene Monat hat nicht genug Tage. Gib einen anderen Monat ein: "); }while(month>12 || month<1 || day>daysInMonth[month-1]); - std::cout << "Gib das Jahr ein: "; + printf("Gib das Jahr ein: "); do { getline(std::cin, input); std::stringstream(input) >> year; - if(year<0) std::cout << "ERROR: Das Datum liegt vor dem 1. Januar 0. Gib ein Jahr nach dem 1. Januar 00 ein: "; - else if(day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)) std::cout << "ERROR: Die bereits erfolgten Eingaben benötigen ein Schaltjahr. Gib ein anderes Jahr ein: "; + if(year<0) printf("ERROR: Das Datum liegt vor dem 1. Januar 0. Gib ein Jahr nach dem 1. Januar 00 ein: "); + else if(day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)) printf("ERROR: Die bereits erfolgten Eingaben benötigen ein Schaltjahr. Gib ein anderes Jahr ein: "); }while(year<0 || day==29 && month == 2 && (year%4!=0 || year%100==0 && year%400!=0)); - std::cout << "\nDer " << day << "." << month << "." << year << " ist ein "; + printf("\nDer %i.%i.%i ist ein ", day, month, year); if(month==1 || month==2) year -=1; if(month==1) month = 0; @@ -50,13 +51,13 @@ int main() day = (day+month+(year%100)+(year%100/4)+year/400-2*(year/100))%7; while(day<0) day += 7; - if(day==0) std::cout << "Sonntag"; - else if(day==1) std::cout << "Montag"; - else if(day==2) std::cout << "Dienstag"; - else if(day==3) std::cout << "Mittwoch"; - else if(day==4) std::cout << "Donnerstag"; - else if(day==5) std::cout << "Freitag"; - else std::cout << "Samstag"; + if(day==0) printf("Sonntag"); + else if(day==1) printf("Montag"); + else if(day==2) printf("Dienstag"); + else if(day==3) printf("Mittwoch"); + else if(day==4) printf("Donnerstag"); + else if(day==5) printf("Freitag"); + else printf("Samstag"); getch(); return(0); diff --git a/Mathe/Dreiecke.cpp b/Mathe/Dreiecke.cpp index 6c8c545..478d9c7 100644 --- a/Mathe/Dreiecke.cpp +++ b/Mathe/Dreiecke.cpp @@ -11,7 +11,7 @@ int main() std::string input; long double a, b, c, alpha, beta, gamma; - std::cout << "F\x81ge deiner Eingabe \"\xF8\" hinzu um einen Winkel im Gradma\xE1 einzugeben.\n\nGib Seite a oder Winkel alpha ein: "; + printf("F\x81ge deiner Eingabe \"\xF8\" hinzu um einen Winkel im Gradma\xE1 einzugeben.\n\nGib Seite a oder Winkel alpha ein: "); do { a = 0, alpha = 0; @@ -23,16 +23,16 @@ int main() a = 0; std::stringstream(input) >> alpha; alpha = alpha/180*PI; - if(alpha>=PI || alpha<=0) std::cerr << "ERROR: Mit dem eingegebenen Winkel l\x84sst sich kein Dreieck konstruieren. Gib alpha oder a erneut ein: "; + if(alpha>=PI || alpha<=0) printf("ERROR: Mit dem eingegebenen Winkel l\x84sst sich kein Dreieck konstruieren. Gib alpha oder a erneut ein: "); } else { std::stringstream(input) >> a; - if(a<=0) std::cerr << "ERROR: a muss gr\x94\xE1 \ber als 0 sein. Gib a oder alpha erneut ein: "; + if(a<=0) printf("ERROR: a muss gr\x94\xE1 \ber als 0 sein. Gib a oder alpha erneut ein: "); } }while(alpha>=PI || a+alpha<=0); - std::cout << "\nGib Seite b oder Winkel beta ein: "; + printf("\nGib Seite b oder Winkel beta ein: "); do { b = 0, beta = 0; @@ -44,16 +44,16 @@ int main() b = 0; std::stringstream(input) >> beta; beta = beta/180*PI; - if(alpha+beta>=PI || beta<=0) std::cerr << "ERROR: Mit den eingegebenen Winkeln l\x84sst sich kein Dreieck konstruieren. Gib beta oder b erneut ein: "; + if(alpha+beta>=PI || beta<=0) printf("ERROR: Mit den eingegebenen Winkeln l\x84sst sich kein Dreieck konstruieren. Gib beta oder b erneut ein: "); } else { std::stringstream(input) >> b; - if(b<=0) std::cerr << "ERROR: b muss gr\x94\xE1 \ber als 0 sein. Gib b oder beta erneut ein: "; + if(b<=0) printf("ERROR: b muss gr\x94\xE1 \ber als 0 sein. Gib b oder beta erneut ein: "); } }while(alpha+beta>=PI || b+beta<=0); - std::cout << "\nGib Seite c oder Winkel gamma ein: "; + printf("\nGib Seite c oder Winkel gamma ein: "); do { c = 0, gamma = 0; @@ -63,18 +63,18 @@ int main() if(c!=0) { c = 0; - if(alpha!=0 && beta!=0) std::cerr << "ERROR: Der Kongruenzsatz WWW existiert nicht. Gib gamma oder c erneut ein: "; + if(alpha!=0 && beta!=0) printf("ERROR: Der Kongruenzsatz WWW existiert nicht. Gib gamma oder c erneut ein: "); else { std::stringstream(input) >> gamma; gamma = gamma/180*PI; - if(alpha+beta+gamma>=PI || gamma<=0) std::cerr << "ERROR: Mit den eingegebenen Winkeln l\x84sst sich kein Dreieck konstruieren. Gib gamma oder c erneut ein: "; + if(alpha+beta+gamma>=PI || gamma<=0) printf("ERROR: Mit den eingegebenen Winkeln l\x84sst sich kein Dreieck konstruieren. Gib gamma oder c erneut ein: "); } } else { std::stringstream(input) >> c; - if(c<=0) std::cerr << "ERROR: c muss gr\x94\xE1 \ber als 0 sein. Gib c oder gamma erneut ein: "; + if(c<=0) printf("ERROR: c muss gr\x94\xE1 \ber als 0 sein. Gib c oder gamma erneut ein: "); } }while(alpha+beta+gamma>PI || c+gamma<=0); @@ -99,11 +99,11 @@ int main() system("cls"); - std::cout << "a = " << a << ", b = " << b << ", c = " << c; - std::cout << "\n\nWinkel Bogenma\xE1 Gradma\xE1"; - std::cout << "\nalpha: " << alpha/PI << " pi " << alpha*180/PI << "\xF8"; - std::cout << "\nbeta: " << beta/PI << " pi " << beta*180/PI << "\xF8"; - std::cout << "\ngamma: " << gamma/PI << " pi " << gamma*180/PI << "\xF8"; + printf("a = %f, b = %f, c = %f", a, b, c); + printf("\n\nWinkel Bogenma\xE1 Gradma\xE1"); + printf("\nalpha: %fpi %f\xF8", alpha/PI, alpha*180/PI); + printf("\nbeta: %fpi %f\xF8", beta/PI, beta*180/PI); + printf("\ngamma: %fpi %f\xF8", gamma/PI, gamma*180/PI); getch(); return(0); diff --git a/Mathe/befreundete Zahlen.cpp b/Mathe/befreundete Zahlen.cpp index 474584d..3b345ca 100644 --- a/Mathe/befreundete Zahlen.cpp +++ b/Mathe/befreundete Zahlen.cpp @@ -2,6 +2,7 @@ #include #include #include +#include //In Zusammenarbeit mit Nils Werner @@ -14,11 +15,11 @@ void program(); int main() { - std::cout<< "Gib ein Limit ein: "; + printf("Gib ein Limit ein: "); program(); - std::cout << "\n\nProgrammende!"; + printf("\n\nProgrammende!"); getch(); return(0); @@ -40,14 +41,14 @@ void program() { getline(std::cin, input); std::stringstream(input)>>limit; - if(limit>=ULLONG_MAX || limit<0) std::cerr << "Error: Dieses Limit ist nicht m\x94glich. Gib ein anderes Limit ein: "; + if(limit>=ULLONG_MAX || limit<0) printf("Error: Dieses Limit ist nicht m\x94glich. Gib ein anderes Limit ein: "); }while(limit>=ULLONG_MAX || limit<0); try { unsigned long long *number = new unsigned long long[limit+1]; - std::cout<< "befreundete Zahlen sind:\n"; + printf("befreundete Zahlen sind:\n"); for (int idx = 220; idx<= limit; idx++) { @@ -59,12 +60,12 @@ void program() } catch(std::bad_alloc& ba) { - std::cerr << "Error: Es konnte kein Array dieser Gr\x94\xE1 \be erstellt werden. Gib ein anderes Limit ein: "; + printf("Error: Es konnte kein Array dieser Gr\x94\xE1 \be erstellt werden. Gib ein anderes Limit ein: "); program(); } catch(std::exception& e) { - std::cerr << "Error: Beim Erstellen des Arrays ist ein unbekannter Fehler aufgetreten. Gib ein anderes Limit ein: "; + printf("Error: Beim Erstellen des Arrays ist ein unbekannter Fehler aufgetreten. Gib ein anderes Limit ein: "); program(); } } diff --git a/Sonstiges/BMI.cpp b/Sonstiges/BMI.cpp index 504d11f..bc947cd 100644 --- a/Sonstiges/BMI.cpp +++ b/Sonstiges/BMI.cpp @@ -10,23 +10,23 @@ int main() long double height = 0, weight = 0; std::string input; - std::cout<<"Gib deine Gr\x94\xE1 \be in metern ein: "; + printf("Gib deine Gr\x94\xE1 \be in metern ein: "); do { getline(std::cin,input); std::stringstream(input)>>height; - if(height<0.5 || height>2.5) std::cerr<<"ERROR: Die eingegebene Gr\x94\xE1 \be ist nicht im Wertebereich. Bitte gib eine Gr\x94\xE1 \be von 0,5 bis 2,5 ein: "; + if(height<0.5 || height>2.5) printf("ERROR: Die eingegebene Gr\x94\xE1 \be ist nicht im Wertebereich. Bitte gib eine Gr\x94\xE1 \be von 0,5 bis 2,5 ein: "); }while(height<0.5 || height>2.5); - std::cout<<"...und jetzt dein Gewicht in Kilogramm: "; + printf("...und jetzt dein Gewicht in Kilogramm: "); do { getline(std::cin,input); std::stringstream(input)>>weight; - if(weight<30 || weight>500) std::cerr<<"ERROR: Das eingegebene Gewicht ist nicht im Wertebereich. Bitte gib ein Gewicht von 30 bis 500 ein: "; + if(weight<30 || weight>500) printf("ERROR: Das eingegebene Gewicht ist nicht im Wertebereich. Bitte gib ein Gewicht von 30 bis 500 ein: "); }while(weight<30 || weight>500); - std::cout<<"\nDein BMI ist: "<> distance; - if(distance<=0)std::cout << "ERROR: Die Strecke muss gr\x94\xE1 \ber als 0 km sein. Gib die Strecke erneut ein: "; + if(distance<=0)printf("ERROR: Die Strecke muss gr\x94\xE1 \ber als 0 km sein. Gib die Strecke erneut ein: "); }while(distance<=0); - std::cout << "Gib die Startgeschwindigkeit in km/h ein: "; + printf("Gib die Startgeschwindigkeit in km/h ein: "); do { getline(std::cin, input); std::stringstream(input) >> speed; - if(speed<0 || speed>200) std::cout << "ERROR: Die Geschwindigkeit muss gr\x94\xE1 \ber als 0 km/h sein und darf 200 km/h nicht \x81 \bberschreiten. Gib die Geschwindigkeit erneut ein: "; + if(speed<0 || speed>200) printf("ERROR: Die Geschwindigkeit muss gr\x94\xE1 \ber als 0 km/h sein und darf 200 km/h nicht \x81 \bberschreiten. Gib die Geschwindigkeit erneut ein: "); }while(speed<0 || speed>200); - std::cout << "Gib nun die Geschwindigkeit der Autos der gegen\x81 \bberliegenden Fahrbahn ein: "; + printf("Gib nun die Geschwindigkeit der Autos der gegen\x81 \bberliegenden Fahrbahn ein: "); do { getline(std::cin, input); std::stringstream(input) >> speedOppositeTrack; - if(speedOppositeTrack<0 || speedOppositeTrack>200)std::cout << "ERROR: Die Geschwindigkeit muss gr\x94\xE1 \ber als 0 km/h sein und darf 200 km/h nicht \x81 \bberschreiten. Gib die Geschwindigkeit erneut ein: "; + if(speedOppositeTrack<0 || speedOppositeTrack>200)printf("ERROR: Die Geschwindigkeit muss gr\x94\xE1 \ber als 0 km/h sein und darf 200 km/h nicht \x81 \bberschreiten. Gib die Geschwindigkeit erneut ein: "); }while(speedOppositeTrack<0 || speedOppositeTrack>200); - std::cout << "\nGib nach jeder Ausgabe \"+\",\"-\" oder \"\" ein um deine Geschwindigkeit um 5 km/h zu verringern oder erh\x94 \bhen oder die Geschwindigkeit konstant zu halten.\nDie Autos treffen sich wie folgt:\n"; + printf("\nGib nach jeder Ausgabe \"+\",\"-\" oder \"\" ein um deine Geschwindigkeit um 5 km/h zu verringern oder erh\x94 \bhen oder die Geschwindigkeit konstant zu halten.\nDie Autos treffen sich wie folgt:\n"); for(long double time = distance/(speed+speedOppositeTrack), position = time*speed; position<=distance && position<=ULLONG_MAX && -speedULLONG_MAX) std::cout << "ERROR: Begegnung kann nicht berechnet werden."; + if(position>ULLONG_MAX) printf("ERROR: Begegnung kann nicht berechnet werden."); - std::cout << "PROGRAMMENDE!"; + printf("PROGRAMMENDE!"); getch(); return(0); diff --git a/Sonstiges/Schleifen.cpp b/Sonstiges/Schleifen.cpp index 41c901f..c42a21e 100644 --- a/Sonstiges/Schleifen.cpp +++ b/Sonstiges/Schleifen.cpp @@ -2,56 +2,57 @@ #include #include #include +#include int main() { short depth = 1; std::string input; - std::cout << "Gib die Tiefe ein: "; + printf("Gib die Tiefe ein: "); do { getline(std::cin, input); std::stringstream(input) >> depth; - if(depth<2 || depth==SHRT_MAX)std::cout << "ERROR: Die Zahl ist zu gro\xE1 oder klein. Gib die Tiefe erneut ein: "; + if(depth<2 || depth==SHRT_MAX)printf("ERROR: Die Zahl ist zu gro\xE1 oder klein. Gib die Tiefe erneut ein: "); }while(depth<2 || depth==SHRT_MAX); - for(short idx = 0; idx0) std::cout << "*"; + for(short idx2 = 0; idx20) printf("*"); } - for(short idx = 0; idx<2*depth-1; idx++) std::cout << "*"; + for(short idx = 0; idx<2*depth-1; idx++) printf("*"); for(short idx = 0; idx> number; - if(number<1 || number>100) std::cerr << "Error: Die eingegebene Zahl liegt nicht im Wertebereich. Gib eine Zahl zwischen 1 und 100 ein: "; - else if(numberrandNumber) std::cout << "\nDie eingegebene Zahl ist zu gro\xE1! Versuche es erneut: "; + if(number<1 || number>100) printf("Error: Die eingegebene Zahl liegt nicht im Wertebereich. Gib eine Zahl zwischen 1 und 100 ein: "); + else if(numberrandNumber) printf("\nDie eingegebene Zahl ist zu gro\xE1! Versuche es erneut: "); }while(number!=randNumber || number<1 || number>100); - std::cout << "\nTreffer! Du hast " << tries << " Versuche gebraucht.\nM\x94 \bchtest du ein 2. mal spielen? y/n "; + printf("\nTreffer! Du hast %i Versuche gebraucht.\nM\x94 \bchtest du ein 2. mal spielen? y/n ", tries); do { getline(std::cin, input); - if(input != "y" && input != "Y" && input != "n" && input !="N") std::cerr << "Error: Die Eingabe ist ung\x81ltig. M\x94 \bchtest du ein 2. mal spielen? y/n "; - else std::cout << "\n\n"; + if(input != "y" && input != "Y" && input != "n" && input !="N") printf("Error: Die Eingabe ist ung\x81ltig. M\x94 \bchtest du ein 2. mal spielen? y/n "); + else printf("\n\n"); }while(input != "y" && input != "Y" && input != "n" && input !="N"); }while(input == "y" || input == "Y"); diff --git a/Sonstiges/Zähler.cpp b/Sonstiges/Zähler.cpp index 201a8f0..6ad1a69 100644 --- a/Sonstiges/Zähler.cpp +++ b/Sonstiges/Zähler.cpp @@ -8,22 +8,22 @@ int main () long long start=0, end=0; std::string input; - std::cout << "Geben sie den Startwert ein: "; + printf("Geben sie den Startwert ein: "); getline(std::cin, input); std::stringstream(input) >> start; - std::cout << "\nGeben sie den Endwert ein: "; + printf("Geben sie den Endwert ein: "); getline(std::cin, input); std::stringstream(input) >> end; - std::cout << "\n"; + printf("\n"); - if(startend; idx--) std::cout << idx << ", "; + if(startend; idx--) printf("%i, ", idx); - std::cout << end << "\n\nDie Summe der natuerlichen Zahlen von " << start << " bis " << end << " betraegt: "; - if(start