יום ראשון, 18 בדצמבר 2011

אומנות לעם

שלום,

תוכנת ה – SAS אומנם נולדה כתוכנה לניתוח סטטיסטי אבל הוורסטיליות של התוכנה הדימיון של המשתמשים בה מצאו לה גם שימושים מגוונים ומפתיעים ביניהם ככלי ליצירת אומנות ASCII.

לכבוד חג המולד המתקרב, מספר משתמשי SAS בארה"ב התחרו ביניהם מי יכול ליצור עץ אשוח במינימום קוד.

מן הסתם ברגע שראיתי את הבלוג הזה מיד חשבתי איך להראות שניתן לחגוג גם את חנוכה בעזרת SAS.

הדבר הראשון שקופץ לראש כשאומרים חנוכה זה חנוכיה ולכן ישבתי וכתבתי את התוכנית הבאה המדפיסה ב - Log חנוכיה:


data _null_;
      x=repeat('* ',7)||'#';
      y=repeat('# ',7)||'#';
      put @17 '*'/x/y;
run;

השלב הבא היה, כמובן, לכתוב תוכנית שעושה בדיוק אותו דבר אבל יותר קצרה. קצת פישפוש במעמקי הזכרון ובתיעוד של SAS הוביל לתוכנית הבאה:

data _null_;
      put @17 '*'/8*'* ' '#'/8*'# ' '#';
run;

ולסיום, קצת גיוון עם סמל נוסף של חנוכה – סביבון:

data _null_;
      put @6 '#'/@6'#'/@6'#';
      do i=5 to 0 by -1;
            x=repeat('#',i*2);
            put @(6-i) x;
      end;
run;

יש לכם תוכנית קצרה יותר לחנוכיה? תוכנית לסביבון יותר יפה? תוכנית (או מתכון) לסופגניה? שתפו את כולם...

חג שמח,
חגי