BIITE HILFE FÜR KALENDER :(



  • Ich versuche ein kalender zu machen aber klappt nicht genau kann mir einer heute nacht helfen?

    #include <iostream> 
    #include <math.h> 
    #include <iomanip> 
    
    using namespace std; 
    char janein; 
    int wiederholung; 
    
    int main() 
    { 
    
    	int jahr,monat,januar,start,anzahl,tag,z,y,x; 
    
    	do 
    	{ 
    
    		cout << "Geben Sie bitte das Jahr ein : "; 
    		cin >> jahr; 
    
    			monat=0;
    
    		while(monat < 12)
    		{
    
    			if (monat==0)                // EVA Schleife 
    			{ 
    				start = (jahr+(jahr -1)/4+5)%7; 
    				switch(start)
    				{
    				case 0: start = 0; break;
    				case 1: start = 1; break;
    				case 2: start = 2; break;
    				case 3: start = 3; break;
    				case 4: start = 4; break;
    				case 5: start = 5; break;
    				case 6: start = 6; break;
    				}
    
    			} 
    			else 
    			{ 
    				if(monat>0)
    				{
    					x=monat;
    					while(x>0)
    					{
    						start = start + z;
    						start = start % 7;
    						x = x-1;
    					}
    				}
    			} 
    
    				monat++;
    
    			switch(monat) 
    			{    
    			case 1: cout << "Januar " << jahr << " " << endl; 
    				anzahl = 31; 
    				cout << " " << endl;
    				break; 
    			case 2: cout << "Februar " << jahr << " " << endl; 
    				if(jahr%4 == 0) 
    				{ 
    					anzahl = 29; 
    					cout << " " << endl;
    				} 
    				else 
    				{ 
    					anzahl = 28; 
    					cout << " " << endl;
    				} 
    				break; 
    			case 3: cout << "Maerz " << jahr << " " << endl; 
    				anzahl = 31;
    				cout << " " << endl;
    				break; 
    			case 4: cout << "April " << jahr << " " << endl;  
    				anzahl = 30; 
    				cout << " " << endl;
    				break; 
    			case 5: cout << "Mai " << jahr << " " << endl; 
    				anzahl = 31; 
    				cout << " " << endl;
    				break; 
    			case 6: cout << "Juni " << jahr << " " << endl;    
    				anzahl = 30; 
    				cout << " " << endl;
    				break; 
    			case 7: cout << "July " << jahr << " " << endl; 
    				anzahl = 31; 
    				cout << " " << endl;
    				break; 
    			case 8: cout << "August " << jahr << " " << endl; 
    				anzahl = 31; 
    				cout << " " << endl;
    				break; 
    			case 9: cout << "September " << jahr << " " << endl; ;  
    				anzahl = 30; 
    				cout << " " << endl;
    				break; 
    			case 10: cout << "Oktober " << jahr << " " << endl;   
    				anzahl = 31; 
    				cout << " " << endl;
    				break; 
    			case 11: cout << "November " << jahr << " " << endl;  
    				anzahl = 30; 
    				cout << " " << endl;
    				break; 
    			case 12: cout << "Dezember " << jahr << " " << endl;   
    				anzahl = 31 ; 
    				cout << " " << endl;
    				break; 
    			} 
    
    			tag = 0;
    			z=anzahl;
    
    			cout << "  Mo  Di  Mi  Do  Fr  Sa  So" << endl; 
    			cout << "  --------------------------" << endl; 
    
    			int zaehler = 0; //nochn zähler
    			while(anzahl != 0) 
    			{ 
    				tag++; 
    				anzahl = anzahl -1; 
    				zaehler++;
    
    				if(tag == 1) 
    				{ 
    					y = ( start * 5 )+1;
    
    						cout << setw(y) << tag;
    
    				} 
    				else 
    				{ 
    
    						cout << setw(4) << tag;
    
    				} 
    
    				if (start == ((start + anzahl) % 7))
    				{
    					cout << endl;
    				}
    
    			} 
    
    		}
    
    		do 
    		{                                    // Abfrageschleife die nur j, n akzeptiert 
    			cout << " Programm wiederholen? (j/n)   \n" ; 
    			cin >> janein; 
    		}    
    		while (( janein != 'j') && (janein != 'n')); 
    
    	} 
    	while (janein =='j'); 
    
    }
    


  • It depends.

    • Wenn du dringend heute nacht noch deine Hausaufgabe fertig kriegen willst und jetzt jemand suchst der dir Privatnachilfe gibt/dir das Programm schreibt: wieviel waerst du bereit zu zahlen?
    • Wenn du dich nur schlecht ausgedrueckt hast: woran happerts denn?




  • ich würd erstmal die ganzen switch-cases und so durch arrays ersetzen und den überflüssigen whitespace entfernen, dann wird das programm vielleicht auch lesbar.
    Sowas muss doch wirklich nicht sein, denk mal drüber nach:
    case 0: start = 0; break;
    case 1: start = 1; break;
    case 2: start = 2; break;
    case 3: start = 3; break;
    case 4: start = 4; break;
    case 5: start = 5; break;
    case 6: start = 6; break;
    😮 😮 😉



  • hammerharter Source


Anmelden zum Antworten