Wir hatten einmal eine Frage, die nur sonntags fehlschlug


39

Inspiriert von Wir hatten einmal einen Unit-Test, der nur sonntags fehlgeschlagen ist. Schreiben Sie ein Programm oder eine Funktion, die nichts anderes tut, als einen Fehler zu werfen, wenn es Sonntag ist, und beenden Sie das Programm ordnungsgemäß an einem anderen Tag.

Regeln:

  • Keine Verwendung von Eingaben oder Anzeigen von Ausgaben über die üblichen E / A-Methoden , außer zum Drucken in STDERR oder einer entsprechenden Sprache. Sie dürfen an STDOUT drucken, wenn dies ein Nebenprodukt Ihres Fehlers ist.
  • Eine Funktion kann an Nicht-Sonntagen einen Wert zurückgeben, solange nichts gedruckt wird
  • Ihr Programm kann einen Sonntag aus jeder Zeitzone oder der lokalen Zeitzone verwenden, sofern dies konsistent ist.
  • Ein Fehler führt zu einer abnormalen Beendigung des Programms , z. B. durch einen Fehler beim Teilen durch Null oder durch die Verwendung einer nicht initialisierten Variablen. Dies bedeutet, dass Code, der nach dem fehlerhaften Teil hinzugefügt wird, am Sonntag nicht ausgeführt wird.
    • Sie können auch Anweisungen verwenden, die manuell einen Fehler erzeugen, der dem von Python entspricht raise.
    • Dies beinhaltet Laufzeitfehler, Syntaxfehler und Fehler beim Kompilieren (viel Glück damit!)
  • Bei einem Fehler muss es ein Zeichen geben, das ihn von einem fehlerfreien unterscheidet
  • Das ist , also gewinnt der kürzeste Bytecount in jeder Sprache!

Ich muss bis Sonntag warten, um die Antworten zu überprüfen;)


2
Mit "Schreiben Sie ein Programm oder eine Funktion, die am Sonntag nur einen Fehler auslöst und an jedem anderen Tag ordnungsgemäß beendet" meinen Sie, dass sie immer dann fehlschlagen sollte, wenn sie am Sonntag ausgeführt wird, oder meinen Sie, dass es zumindest einen Fehler geben sollte eine möglichkeit es scheitert am sonntag. Um es klarer zu machen, wenn es nur am Sonntag um 14 Uhr, aber nicht am Sonntag um 15 Uhr versagt, ist es in Ordnung?
Bromind

5
Dies wäre noch besser gewesen, wenn der Samstag genutzt worden wäre. Man hätte es "Saturday Night Error" nennen und sogar in einigen angepassten Songtexten zur Frage arbeiten können.
Aaron


1
Aus Ihrer Frage geht nicht hervor, was ein Fehler ist. Ich stimme zu schließen, bis dies behoben ist.
Weizen-Assistent

3
Nicht wirklich ... Wie können wir die Ausgabe eines Fehlers von der regulären Ausgabe unterscheiden? Ist so etwas wie print "error"ein Fehler? Der hinzugefügte Absatz verdeutlicht eigentlich nichts.
Wheat Wizard

Antworten:



18

PHP 7, 12 Bytes

1%date("w");

Unter PHP 7 gibt es DivisionByZerosonntags eine Ausnahme vom Typ . Das gleiche passiert, wenn es mit HHVM interpretiert wird .

In PHP 5 wird stderrsonntags eine Warnung (on ) angezeigt :

PHP Warning:  Division by zero in Command line code on line 1

In jeder PHP-Version wird an den anderen Wochentagen nichts angezeigt.

Führen Sie mit der CLI aus:

php -r '1%date("w");'

oder online ausprobieren!

Zwei weitere Bytes können durch Strippen der Anführungszeichen gequetscht werden ( 1%date(w);) , aber dies löst eine Mitteilung (die durch richtig eingestellt unterdrückt werden kann error_reporting = E_ALL & ~E_NOTICEin php.ini).


Ich glaube, Sie müssen (im Titel) angeben, dass diese Antwort nur und nur für PHP7 + und für HHVM ist, da PHP5.6 und niedriger ohne Probleme beenden. Warnungen sind keine Fehler und stoppen die Ausführung des Codes nicht. Wenn Sie dies tun 1%date("w");echo "Alive!", stoppt es in PHP7 + und HHVM, aber nicht in allen anderen Versionen seit PHP 4.
Ismael Miguel

@IsmaelMiguel Die Frage klassifiziert jedes Drucken in Standardfehler als Fehler. In diesem Fall ist eine Warnung ausreichend.
Bitte hör auf böse zu sein

1
Die Frage zitieren: "Ein Fehler ist etwas, das das Programm abnormal beendet , z. B. eine Division durch Null oder die Verwendung einer nicht initialisierten Variablen. Dies bedeutet, dass ein Code, der nach dem fehlerhaften Teil hinzugefügt wird, nicht beendet wird am Sonntag hingerichtet. " Dies geschieht nicht mit einer Warnung.
Ismael Miguel

@IsmaelMiguel Der Absatz, den Sie zitieren, wurde vor weniger als einer Stunde zur Frage hinzugefügt.
Axiac

1
Zitiert eine ältere Version, die zum Zeitpunkt des Kommentars, den ich schrieb, aktiviert war: "[...] Schreiben Sie ein Programm oder eine Funktion, die nichts anderes tut, als einen Fehler zu werfen, wenn es Sonntag ist, und beenden Sie sie ordnungsgemäß an jedem anderen Tag ". Eine Warnung ist gegen diese Zeile, da PHP ordnungsgemäß beendet wird. Ein Fehler wäre ein schwerwiegender Fehler oder ein Syntaxfehler. Keine Warnung zum Teilen durch 0. PHP 5.6 und älter sind für diese Herausforderung nicht gültig.
Ismael Miguel


8

Java 8, 69 43 34 Bytes

v->1/new java.util.Date().getDay()

-26 Bytes dank @ OlivierGrégoire .
-9 Bytes dank @Neil .

Erläuterung:

Probieren Sie es hier aus.

  • v->{...}( unbenutzter Void nullParameter ) ist ein Byte kürzer als ()->{...}(kein Parameter).
  • new java.util.Date().getDay()Gibt für Sonntag-Samstag 0-6 zurück 1/...und gibt einen java.lang.ArithmeticException: / by zeroFehler aus, wenn der Wert 0 ist, was nur sonntags der Fall ist.


@ OlivierGrégoire Ah, java.util.Date()es gibt eine Methode, um den Wochentag zu ermitteln. Und es ist sogar 0 für Sonntag. Ich bin mir nicht sicher, wie ich das verpasst habe. : S
Kevin Cruijssen

Ja, normalerweise haben die älteren Klassen alle Funktionen in kürzeren Namen. ;-)
Olivier Grégoire

1
Gilt das für 34 Bytes? Probieren Sie es online!
Neil

@Neil es war zum Zeitpunkt Ihrer Veröffentlichung nicht gültig, wurde aber weniger als eine Stunde später gültig. ;-) Es war jedoch meine erste Idee ...
Olivier Grégoire

7

Python 3 , 33 Bytes

import time
"Su"in time.ctime()>q

Probieren Sie es online!

Python 3 , 50 Bytes

from datetime import*
datetime.now().weekday()>5>q

Probieren Sie es online!

Dank Rod ~ 3 Bytes gespart .


1
@ Rod Warum nicht "Su"in time.ctime()>q(ich habe mit diesem gearbeitet)?
Mr. Xcoder

Ich kann es nicht ganz fassen. Wie funktioniert es?
Pacholik

@pacholik "Su"in time.ctime()prüft, ob der aktuelle Tag Sonntag ist. Wenn dies falsch ist, wird das >qTeil überhaupt nicht ausgewertet und alles wird reibungslos beendet. Wenn dies jedoch zutrifft, wird der zweite Teil der Ungleichung ausgewertet, und da dies qnicht definiert ist, würde dies a auslösen NameError.
Mr. Xcoder

1
@pacholik Edit: Ich glaube nicht, dass ich falsch liege. Wenn der erste Teil aus Effizienzgründen falsch ist, macht sich Python nicht einmal die Mühe, den letzten Teil zu bewerten. Ich muss allerdings bis Sonntag warten, um das zu testen. ( Ich denke ) Demonstration .
Mr. Xcoder

3
@pacholik Beachten Sie, dass Python boolesche Operatoren verkettet, was äquivalent zu ist ("Su" in time.ctime()) and (time.ctime() > q).
user202729

6

Pyth , 8 7 Bytes

 l-6.d9

Probieren Sie es online!

Erläuterung

    .d9 # Get the current day of week (0 = Monday, 6 = Sunday)
  -6    # Subtract 6 from the day
 l      # Try to calculate the log base 2 of the result of the previous operation raising a "ValueError: math domain error" on sundays
        # there is an extra space at the start, to supress the output on the other days

Dies ist immer noch ungültig. Ihre Ausgabe ( 1.0wird nicht durch den Fehler generiert ). Das OP sagte ausdrücklich, dass sie das nicht zulassen. Sie können dies jedoch beheben, indem Sie Ihrem Code ein einzelnes Leerzeichen
voranstellen

Es ist Ihnen jedoch nicht gestattet, auf STDOUT auszugeben, es sei denn, es ist Sonntag, und Sie geben auf STDOUT aus.
Mr. Xcoder

@ Mr.Xcoder ist richtig. An Nicht-Sonntagen sollte nichts ausgegeben werden
Jo King

@JoKing Ich habe diese Regel komplett übersprungen, jetzt behoben
Rod

6

Haskell + Data.Dates , 55 Bytes

import Data.Dates
succ.dateWeekDay<$>getCurrentDateTime

Probieren Sie es online!

Dies nutzt die Tatsache, dass Sonntag der letzte Tag der Woche ist. dateWeekDayGibt den Wochentag als WeekDayTyp zurück, der einfach als definiert ist

data WeekDay = Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday

WeekDayIst eine Instanz von Enum, so können wir succund verwenden pred, um den Nachfolger oder Vorgänger eines Wochentags zu erhalten, zB succ MondayErträge Tuesday.

Dies Sundayist jedoch der letzte Aufzählungseintrag. Daher führt der Aufruf succ Sundayzu folgendem Fehler:

fail_on_sunday.hs: succ{WeekDay}: tried to take `succ' of last tag in enumeration
CallStack (from HasCallStack):
  error, called at .\Data\Dates.hs:56:34 in dates-0.2.2.1-6YwCvjmBci55IfacFLnAPe:Data.Dates

Edit 1: Danke an nimi für -3 Bytes!
Edit 2: -11 Bytes jetzt, da Funktionen erlaubt sind.


Volles Programm: 88 81 74 69 66 Bytes

import Data.Dates
main=pure$!succ.dateWeekDay<$>getCurrentDateTime

Probieren Sie es online!

purewird benötigt, um das resultierende WeekDayzurück in die IO-Monade zu heben . Haskell stellt jedoch fest, dass der Wert in keiner Weise vom Programm ausgegeben wird, so träge der Ausdruck auch ist und nicht ausgewertet wird, sodass das Programm auch sonntags nicht fehlschlagen würde. Dies ist der Grund $!, weshalb die Auswertung erzwungen wird, auch wenn Haskell den Ausdruck normalerweise nicht auswerten würde.


Vorheriger Ansatz mit Data.Time: 127 124 Bytes

import Data.Time.Clock
import Data.Time.Calendar.WeekDate
c(_,_,d)|d<7=d
main=getCurrentTime>>=(pure$!).c.toWeekDate.utctDay

Probieren Sie es online! Dies sind einige beeindruckende Importe. Wechseln Sie d<7beispielsweise d/=5zu Testfehler an einem Freitag. Schlägt mit folgenden Ausnahme: Non-exhaustive patterns in function c.


1
main=pure$!succ.dateWeekDay<$>getCurrentDateTime. Und wenn Funktionen erlaubt sind, können Sie die fallen lassen main=.
nimi

@ nimi Danke! Ich bin mir jedoch nicht sicher, was die Funktion angeht, da es sich um eine No using input or showing output through the usual IO methodsRegel handelt. Soweit ich sehe, würde die Verwendung einer Funktion zu einer Ausgabe für Nicht-Sonntage führen, obwohl sie in eine E / A-Aktion eingebunden ist.
Laikoni

Vielleicht hast du recht, aber auf der anderen Seite hat ein vollständiges Programm einen Exit-Code, was auch eine Standardmethode ist.
nimi

... die Herausforderungsregeln erlauben es nun Funktionen, nicht-sonntags Werte zurückzugeben, solange sie nicht gedruckt werden.
Nimi

@nimi Danke für den Hinweis.
Laikoni

5

05AB1E , 45 44 Bytes

Da in 05AB1E keine Funktion zum Abrufen des Wochentags integriert ist, habe ich die Zeller-Regel verwendet, um sie zu berechnen.

Gibt bei einem Sonntag eine neue Zeile an stderr aus (beobachtbar in der Debug-Ansicht von TIO)

žežf11+14%Ì13*5÷žgžf3‹-т%D4÷žgт÷©4÷®·(O7%i.ǝ

Probieren Sie es online!

Erläuterung

Die allgemeine Formel verwendet wird ,
DoW = d + [(13*(m+1))/5] + y + [y/4] + [c/4] - 2*c
Wo DoW=day of week, d=day, m=month, y=last 2 digits of year, c=centuryund und die Ausdrücke in Klammern ( []) abgerundet sind.

Jeder Monat, der in der Formel verwendet wird, entspricht einer Zahl. Jan=13,Feb=14,Mar=3,...,Dec=12
Da wir den aktuellen Monat im allgemeineren Format Jan=1,...,Dec=12 haben, konvertieren wir den Monat mithilfe der Formel
m = (m0 + 11) % 14 + 1

Als biproduct März der erste Monat sein, Januar und Februar , gehören zum Vorjahr, so dass die Berechnung für die Bestimmung ywird
y = (year - (m0 < 3)) % 100

Der endgültige Wert für DoWdas Ergebnis ist int where 0=Sat,1=Sun,...,6=Fri.
Jetzt können wir explizit einen Fehler auslösen, wenn das Ergebnis wahr ist.


11
05AB1E gegen Java verlieren? Alles, was ich weiß, ist eine Lüge
Kamil Drakari

5

JavaScript, 23 Bytes

Date().slice(1)>'um'&&k

Volles Programm.

Die Variable kdarf nicht definiert werden.

JavaScript, 20 Bytes von Rick Hitchcock

/Su/.test(Date())&&k

JavaScript, 19 Bytes von Apsillern

Date().match`Su`&&k

1) Sie haben vergessen, das _=>; ohne es ist dies ein Ausschnitt, der standardmäßig nicht erlaubt ist. 2) Dies wird falsean jedem zweiten Tag ausgegeben, an dem nichts ausgegeben werden soll.
Shaggy

6
1) Es ist ein vollständiges Programm, das vom OP zugelassen ist. 2) Wenn Sie es als Programm ausführen, gibt es keine Ausgabe
l4m2

3
/Su/.test(Date())&&kfür 20 Bytes.
Rick Hitchcock

1
new Dateversion 25 bytes(new Date/864e5%7|0)-3||p
l4m2

3
Die Lösung von @RickHitchcock kann durch Template-Tag-Ausführung auf matchDate().match`Su`&&k
Folgendes

5

VBA / VBScript, 22 bis 20 Byte

2 Bytes gespart dank Taylor Scott.

a=1/(Weekday(Now)-1)

Dies sollte im Direktfenster ausgeführt werden. Weekday()Gibt 1 (Sonntag) bis 7 (Samstag) zurück, sodass am Sonntag ein Fehler durch Null entsteht. Ansonsten keine Ausgabe.

Fehlermeldung


Sie haben mich um eine Stunde auf eine Antwort geschlagen - 19 Bytes:?1/(Weekday(Now)-1)
Taylor Scott

1
@TaylorScott Ich habe vergessen, dass dies Nowohne ()VBA gültig ist, aber ich kann print nicht verwenden, da ich denke, dass alle Ausgaben unzulässig sind, es sei denn, es treten Fehler auf. No using input or showing output through the usual IO methods, except to print to STDERR. Immer noch 2 Bytes gespeichert.
Ingenieur Toast

1
Ich hatte gerade genau diese 20 Bytes als VBScript-Lösung geschrieben, und dann dachte ich, ich würde nachsehen, ob bereits eine Sprache im VB-Stil eingereicht wurde und hier ist sie. Dies funktioniert also auch für VBScript und wahrscheinlich auch für andere VB-Sprachen.

@EngineerToast Ich denke, Sie sollten dies mit VBScript als polyglott markieren
Taylor Scott

@ TaylorScott Ich habe das noch nie gemacht. Habe ich es richtig gemacht?
Ingenieur Toast

4

Ruby, 15 Bytes

1/Time.now.wday

wdaywird am Sonntag 0 zurückgeben und einen ZeroDivisionError verursachen: dividiert durch 0 Fehler. Zum Beispiel: 1/Time.new(2018,1,7).wday.



3

jq, 42 Zeichen

(39 Zeichen Code + 3 Zeichen Befehlszeilenoption)

now|strftime("%w")|strptime("%d")|empty

Versuchen Sie hier einfach einen anderen Ansatz: Analysieren Sie die Wochentagsnummer (0..6) als Monatstagsnummer (1..31).

Probelauf:

bash-4.4$ TZ=UTC faketime 2018-01-06 jq -n 'now|strftime("%w")|strptime("%d")|empty'

bash-4.4$ TZ=UTC faketime 2018-01-07 jq -n 'now|strftime("%w")|strptime("%d")|empty'
jq: error (at <unknown>): date "0" does not match format "%d"

Beachten Sie, dass jq nur UTC-Daten verarbeitet.

Probieren Sie es online!



3

VBA 18 Bytes

Dies hängt davon ab, date()dass die eingebaute Funktion eine Tageszahl zurückgibt, die 1 ergibt , wenn sie durch 7 geteilt wird. Dies kann betriebssystem- und / oder CPU-spezifisch sein.

a=1/(date mod 7-1)

Es läuft im VBA-Projekt-Direktfenster.


2
Willkommen bei PPCG! Im Allgemeinen ist eine Erklärung und ein Link zu einem Online-Compiler / -Interpreter erwünscht.
FantaC

@tfbninja - ok Aktualisierung
JohnRC

und gegebenenfalls Anweisungen zur Verwendung, z. B. Funktionsaufruf oder Variable
FantaC

Nettes Golfen, wollte das gerade selbst posten, nachdem ich die andere Antwort gesehen hatte!
Greedo

3

R , 31 Bytes 30 Bytes

if(format(Sys.Date(),'%u')>6)a

Probieren Sie es online!

Keine Ausgabe außer sonntags, Error: object 'a' not foundsonntags.

format(Sys.Date(),'%u')war der kürzeste Weg, den ich finden konnte, um den Wochentag zu erhalten. Er gibt eine Zeichenklassennummer für den Wochentag aus, mit 7 für die Sonntage. Wir können es mit einer 7 vergleichen und versuchen, ein undefiniertes Objekt zu verwenden.

Dank Giuseppe ein Byte gespart!


>6ist ein Byte kürzer.
Giuseppe

2

Ocaml, 46 Bytes

open Unix
let()=1/(gmtime(time())).tm_wday;()

und in der ocaml REPL können wir besser erreichen, indem wir das letund das Finale entfernen :():

$ open Unix;;1/(gmtime(time())).tm_wday;;<CR>

Das sind 41 Byte (einschließlich 1 Byte für den Wagenrücklauf).


1
Willkommen bei PPCG!
Laikoni

1
Ist es möglich, diesen Code zum Laufen zu bringen ? Online testen ?
Laikoni

Mmh ... der Kompilierungsbefehl ist ocamlopt unix.cmxa <file>, ich weiß nicht, wie ich die Kompilierungsoption für tio geben soll. Ich werde heute Abend
nachforschen

Das tio verwendet einen (ähnlichen) REPL-Interpreter, daher sollten Sie die 2. Möglichkeit nutzen. Es scheint jedoch keine Unix-Bibliothek zu haben (oder aus irgendeinem Grund keinen Zugriff darauf zu
gewähren

2

SAS, 36 Bytes

%put %eval(1/(1-%index(&sysday,Su)))

2

TI-Basic 84+, 23 Bytes

getDate
0/(1-dayOfWk(Ans(1),Ans(2),Ans(3

Benötigt Datums- und Uhrzeitbefehle, die nur 84+ und höher sind.


2

MATL , 12 Bytes

vZ'8XOs309>)

Der am Sonntag erzeugte Fehler ist:

  • Laufen auf Oktave:

    MATL run-time error: The following Octave error refers to statement number 9:  )
    ---
    array(1): out of bound 0
    
  • Laufen auf Matlab:

    MATL run-time error: The following MATLAB error refers to statement number 9:  )
    ---
    Index exceeds matrix dimensions
    

Um das Verhalten umzukehren (Fehler an jedem Tag außer sonntags), fügen Sie ~nach >.

Probieren Sie es online!

Erläuterung

Dies nutzt die Tatsache aus, dass

  • Die Indizierung in ein leeres Array mit dem logischen Index falseist gültig (und das Ergebnis ist ein leeres Array, das keine Ausgabe erzeugt). wohingegen

  • Indizieren mit trueverursacht einen Fehler, da dem Array ein erster Eintrag fehlt.

Kommentierter Code:

v       % Concatenate stack. Gives empty array
Z'      % Push current date and time as a number
8XO     % Convert to date string with format 8: gives 'Mon', 'Tue' etc
s       % Sum of ASCII codes. Gives 310 for 'Sun', and less for others
309>    % Greater than 309? Gives true for 'Sun', false for others
)       % Index into the empty array
        % Implicit display. Empty arrays are not displayed (not even newline)

2

Q, 20 Bytes

if[1=.z.d mod 7;'e]

.zd gibt das aktuelle Datum zurück. mod macht das Modulo des aktuellen Datums, das einen int zurückgibt. Wenn das Datum ein Sonntag ist, gibt .zd mod 7 1 zurück. Wenn 1 = 1, (am Sonntag), und der Fehler wird mit dem Operator 'ausgelöst. Der Kürze halber ist der Fehler nur das Zeichen e.


3
Willkommen bei PPCG!
Martin Ender

2

C # (.NET Core) , 55 54 48 Bytes

Probieren Sie es online!

1 Byte dank Shaggy gespeichert

5 Byte gespart dank Emigna

Dank Kevin Cruijssen 1 Byte gespeichert

_=>{var k=1/(int)System.DateTime.Now.DayOfWeek;}

Zum Glück hat der Sonntag den Index 0 in enum, sonst hätte es sein müssen (System.DayOfWeek)7



3
Erhalten Sie using Systemkostenlos in C #? Wenn ja, ich denke, Sie könnten ()=>{var k=1/(int)DateTime.Now.DayOfWeek;}für 42 tun . Ansonsten 49 mit der explizitenSystem.
Emigna

3
@Emigna hat mich geschlagen; ()=>{var k=1/(int)System.DateTime.Now.DayOfWeek;}ist kürzer. Und Sie können ein weiteres Byte speichern, indem Sie einen leeren unbenutzten Parameter anstelle von keinem Parameter (dh v->{...}anstelle von ()->{...}) verwenden
Kevin Cruijssen

1
40 Bytes ()=>1/(int)System.DateTime.Now.DayOfWeek. Probieren Sie es hier aus .
Ayb4btu


2

C  68.55  Bytes

Vielen Dank an @Ken YN für das Speichern von 13 Bytes!

#import<time.h>
f(n){time(&n);n/=gmtime(&n)->tm_wday;;}

Probieren Sie es online!


Lassen Sie die Zwischenstufe fallen d, um n/=gmtime(&n)->tm_wday;54 Bytes zu erhalten (aber ich bin nicht sicher, ob ich all diese Compiler-Warnungen mag ...)
Ken YN

@ KenY-N Danke!
Steadybox

1

R , 40 Bytes

stopifnot(weekdays(Sys.Date(),T)!="Sun")

Probieren Sie es online!

weekdaysGibt den Wochentag des Datums mit einem optionalen Argument zurück abbreviate, das sich Sundayauf das SunSpeichern eines einzelnen Bytes verkürzt .

stopifnotwenn, wirft einen Fehler für jedes Argument, nicht allistTRUE , und wirft einen Fehler mit einer Meldung, die das erste Element davon ist nicht TRUE, so ist der FehlerError: "Sun" is not TRUE




1

Gema , 40 Zeichen

\A=@subst{Su=\@err\{S\}\;*=;@datime}@end

Musste eine Fehlermeldung angeben, so wählen Sie eine kurze: "S".

Probelauf:

bash-4.4$ faketime 2018-01-06 gema '\A=@subst{Su=\@err\{S\}\;*=;@datime}@end'

bash-4.4$ faketime 2018-01-07 gema '\A=@subst{Su=\@err\{S\}\;*=;@datime}@end'
S

1

Funky , 21 Bytes

if!os.date"%w"error()

os.date"%w"Gibt den aktuellen Wochentag im 0-6-Format zurück, wobei 0 für Sonntag steht. Das logische Nicht davon zu bekommen, ist nur wahr, wenn der Wochentag 0 ist, also Sonntag. Dann nur noch ein Basicif(a){error()} dafür sorgen, dass dieses Programm nur am Sonntag Fehler macht

Probieren Sie es online!



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.