Objective-C :: Aufgabe #42
1 Lösung

Bei Addition von Tage nur Werktage beachten
Anfänger - Objective-C
von Gustl
- 22.07.2013 um 11:04 Uhr
Schreibe ein Programm welches die Anzahl der addierenden Tage abfrägt und dann das Datum ausgibt.
Bei der Addition der Tage sollen aber nur die Werktage (Geschäftstage): Montag, Dienstag, Mittwoch, Donnerstag und Freitag beachtet werden.
Beispiel: Heute ist der 22.07. (Montag), wenn ich nun 7 Tage eingebe soll der 31.07. (Mittwoch) ausgegeben werden.
Bei der Addition der Tage sollen aber nur die Werktage (Geschäftstage): Montag, Dienstag, Mittwoch, Donnerstag und Freitag beachtet werden.
Beispiel: Heute ist der 22.07. (Montag), wenn ich nun 7 Tage eingebe soll der 31.07. (Mittwoch) ausgegeben werden.
Lösungen:

- (IBAction)performClick:(id)sender { if (sender == self.berechnen) { if (self.display) { self.value1 = [self.display.stringValue integerValue]; NSDate * actualDay = [NSDate date]; NSDate *newDate = [actualDay dateByAddingTimeInterval:60*60*24*self.value1]; NSString *newDateWithoutTime = [[newDate dateWithCalendarFormat:@"%d.%m.%Y" timeZone:nil] description]; NSString *weekdayName = [newDate descriptionWithCalendarFormat:@"%A" timeZone:[NSTimeZone localTimeZone] locale:nil]; if ([weekdayName isEqual: @"Saturday"]) { NSDate *newDate2 = [newDate dateByAddingTimeInterval:60*60*24* +2]; NSString *newDateWithoutTime2 = [[newDate2 dateWithCalendarFormat:@"%d.%m.%Y" timeZone:nil] description]; NSString *weekdayName2 = [newDate2 descriptionWithCalendarFormat:@"%A" timeZone:[NSTimeZone localTimeZone] locale:nil]; self.display.stringValue = [NSString stringWithFormat:@"%@ - %@", weekdayName2, newDateWithoutTime2]; } else if ([weekdayName isEqual: @"Sunday"]) { NSDate *newDate3 = [newDate dateByAddingTimeInterval:60*60*24* +1]; NSString *newDateWithoutTime3 = [[newDate3 dateWithCalendarFormat:@"%d.%m.%Y" timeZone:nil] description]; NSString *weekdayName3 = [NSString stringWithFormat:@"Monday"]; self.display.stringValue = [NSString stringWithFormat:@"%@ - %@", weekdayName3, newDateWithoutTime3]; self.display.stringValue = @""; } else { self.display.stringValue = [NSString stringWithFormat:@"%@ - %@", weekdayName, newDateWithoutTime]; } } }