[מוזיק פּלייינג] דוד י מאַלאַן: אַלע רעכט, דאָס איז קס50. און דעם איז וואָך איין. אַזוי צוריקרופן אַז לעצטע צייַט אין וואָך נול, מיר פאָקוסעד אויף קאַמפּיוטיישאַנאַל טראכטן. און מיר טראַנסיטיאָנעד פון וואָס צו קראַצן, אַ גראַפיקאַל פּראָגראַממינג שפּראַך פֿון אונדזער Friends בייַ MIT ס מידיאַ לאַב. און מיט קראַצן, האט מיר ויספאָרשן געדאנקען ווי פֿעיִקייטן, און באדינגונגען, און לופּס, און וועריאַבאַלז, און אַפֿילו געשעענישן, און שנורן, און מער. און הייַנט, מיר רע געגאנגען צו פאָרזעצן ניצן יענע געדאנקען, און טאַקע גענומען זיי פֿאַר געגעבן, אָבער איבערזעצן זיי צו אן אנדער שפּראַך באקאנט ווי סי איצט, C איז אַ מער טראדיציאנעלן שפּראַך. עס ס אַ נידעריקער מדרגה שפּראַך, אויב איר וועט. עס ס ריין טעקסטשאַוואַל. און אַזוי בייַ ערשטער בליק, עס ס אַלע געגאנגען צו קוקן גאַנץ קריפּטיק אויב איר ווע קיינמאָל פּראָוגראַמד איידער. מיר רע געגאנגען צו האָבן האַלב-קאָלאָנס, און קלאַמערן, און געגרייַזלט ברייסאַז, און מער. אבער פאַרשטיין אַז אַפֿילו כאָטש די סינטאַקס איז וועגן צו קוקן אַ ביסל ונפאַמיליאַר צו רובֿ פון איר, זען פאַרגאַנגענהייַט אַז. און פּרובירן צו זען די געדאנקען וואָס זענען, טאַקע, באַקאַנט, ווייַל דאָ אין וואָך איין וואָס מיר וועט אָנהייבן צו טאָן איז צו פאַרגלייַכן, טכילעס, קראַצן קעגן סי אזוי, א שטייגער, צוריקרופן אַז ווען מיר ימפּלאַמענאַד דער ערשטער פון אונדזער מגילה לעצטע מאָל, מיר האבן אַ בלאָק אַז געקוקט אַ ביסל עפּעס ווי טהיס-- ווען גרין פאָן קליקט, און דעמאָלט מיר האט איינער אָדער מער רעטעניש ברעקלעך ונטער עס, אין דעם פאַל, זאָגן, העלא וועלט. אַזוי, טאַקע, אין סקראַטטש, ווען איך גיט אַז גרין פאָן צו לויפן מיין פּראָגראַם, אַזוי צו רעדן, די ביסט די בלאַקס אַז באַקומען עקסאַקיוטאַד, אָדער לויפן. און, ספּעסיפיקאַללי, קראַצן האט געזאגט, העלא, וועלט. איצט, איך קען האָבן ספּעסיפיעד פאַרשידענע ווערטער דאָ. אבער מיר וועט זען אַז, טאַקע, פילע פון די בלאָקקס-- און טאַקע, אין C פילע פונקטיאָנס-- קענען זיין פּאַראַמעטריזעד אָדער קאַסטאַמייזד צו טאָן פאַרשידענע זאכן. אין פאַקט, אין C אויב מיר ווילן צו בייַטן, איצט, דעם קראַצן פּראָגראַם צו דעם אנדערע שפּראַך, מיר רע געגאנגען צו שרייַבן אַ ביסל עפּעס ווי דעם. געגעבן, עס איז עטלעכע ונפאַמיליאַר סינטאַקס דאָרט רובֿ מסתּמא, ינט, און קלאַמערן, און פּאָסל. אבער פּרינטפ-- אַפֿילו כאָטש איר וואָלט טראַכטן עס וואָלט נאָר זייַן דרוקן. אבער דרוקן מיטל דרוקן פֿאָרמאַטירט, ווי מיר וועט באַלד זען. דאס ממש וועט דרוקן צו די פאַרשטעלן וועלכער איז אינעווייניק פון די קלאַמערן, וואָס פון קורס אין דעם פאַל איז, העלא וועלט. אבער איר וועט באַמערקן עטלעכע אנדערע סינטאַקס, עטלעכע טאָפּל קוואָטעס, אַז די קלאַמערן אין די סוף, די האַלב-צווייפּינטל און די ווי. אַזוי דאָרט ס אַ ביסל פון אָוווערכעד, אַזוי צו רעדן, ביידע קאָגניטיוועלי און סינטאַקטיקאַללי, וואָס מיר רע געגאנגען צו האָבן צו געדענקען איידער לאַנג. אבער פאַרשטיין אַז מיט פיר, דעם וועט אָנהייבן צו שפּרינגען אויס בייַ איר. אין פאַקט, לאָזן ס פאָקוס אויף אַז איין פֿונקציע ספּעסיפיקאַללי-- אין דעם פאַל, זאָגן העלא וועלט. אַזוי זאָגן איז די פֿונקציע. העלא וועלט איז זייַן פּאַראַמעטער, אָדער אַרגומענט, זייַן קוסטאָמיזאַטיאָן. און די עקוויוואַלענסע אין C איז נאָר געגאנגען צו זיין דעם איין שורה דאָ, ווו פּרינטף איז עקוויוואַלענט צו, זאָגן, די טאָפּל ציטירטן שטריקל, העלא וועלט איז עקוויוואַלענט, פון קורס, צו וואָס ס אין די ווייַס קעסטל דאָרט. און די באַקקסלאַש ן, כאָטש אַ ביסל מאָדנע און ניטאָ פון קראַצן, נאָר איז געגאנגען צו האָבן די ווירקונג מיר וועט זען אין אַ קאָמפּיוטער, ווי מיין מעק אָדער אַ פּיסי, פון נאָר מאָווינג די לויפֿער צו דער ווייַטער שורה. עס ס ווי היטטינג אַרייַן אויף דיין קלאַוויאַטור. אַזוי מיר וועט זען אַז ווידער איידער לאַנג. אבער ערשטער, לאָזן ס נעמען אַ קוק אין דעם אנדערע בייַשפּיל אין די פאַל פון לופּס. מיר האבן דעם אייביק שלייף לעצטע מאָל, וואָס איז געווען אַ סעריע פון ​​רעטעניש ברעקלעך וואָס האט עפּעס ממש פאָרעווער-- אין דעם פאַל, זאָגן, העלא וועלט, העלא וועלט, העלא וועלט, העלא וועלט. אזוי עס ס 'אַ Infinite שלייף דורך פּלאַן. אין C, אויב מיר ווילן צו ינסטרומענט דעם זעלביקער געדאַנק, מיר זאל נאָר טאָן דעם. בשעת אמת, פּרינטף העלא וואָרלד-- איצט בשעת, נאָר סעמאַנטיקאַללי, מין פון קאַנדזשערז אַרויף דער געדאַנק פון טאן עפּעס ווידער, און ווידער, און ווידער, און פֿאַר ווי לאַנג? נו, טרוע-- צוריקרופן אַז אמת איז נאָר אויף אָדער איינער. און אמת איז, פון קורס, שטענדיק אמת. אַזוי עס ס מין פון אַ מינינגלאַס ויסזאָגונג נאָר צו זאָגן אמת. אבער טאַקע, דעם איז דיליבראַט, ווייַל אויב אמת איז נאָר שטענדיק אמת, ווי בשעת אמת נאָר ימפּלייז, אויב אַ ביסל מינאַצאַד, אַז די ווייַטערדיק שורות פון קאָד אין צווישן יענע געגרייַזלט ברייסאַז זאָל נאָר ויספירן ווידער, און ווידער, און ווידער, און קיינמאָל אַקטשאַוואַלי האַלטן. אבער אויב איר טאָן ווילן דיין שלייף צו האַלטן, ווי מיר האט לעצטע מאָל מיט עפּעס ווי דעם, איבערחזרן די ווייַטערדיק 50 מאל, אין C מיר קענען טאָן די זעלבע מיט וואָס ס גערופֿן אַ פֿאַר לאָאָפּ-- די קיווערד נישט ווייל בשעת, אָבער פֿאַר. און דעמאָלט מיר האָבן עטלעכע נייַ סינטאַקס דאָ, מיט ינט איך יקוואַלז 0, איך ווייניקער ווי 50, איך ++. און מיר וועט קומען צוריק צו וואָס. אבער דאָס איז נאָר ווי מיר וואָלט איבערזעצן די שטעלן פון קראַצן בלאַקס צו אַ סכום פון C שורות פון קאָד. מינווייל, באַטראַכטן וועריאַבאַלז. און, אין פאַקט, מיר נאָר געזען איינער אַ מאָמענט צוריק. און אין די פאַל פון קראַצן, אויב מיר געוואלט צו דערקלערן אַ בייַטעוודיק געהייסן איך פֿאַר איך ווייל ינטאַדזשער, נאָר אַ נומער, און מיר ווילן צו שטעלן עס צו עטלעכע ווערט, מיר וואָלט נוצן דעם מאַראַנץ פאַרשפּאַרן הערע-- שטעלן איך צו 0. און מיר וועט זען הייַנט און ווייַטער פון, פּונקט ווי לעצטע וואָך, פּראָוגראַמערז טאָן כּמעט שטענדיק אָנהייבן קאַונטינג פון נול, טאַקע דורך קאַנווענשאַן. אבער אויך ווייַל צוריקרופן פון אונדזער דיסקוסיע פון ​​ביינערי, דער קלענסטער נומער איר קענען פאָרשטעלן מיט קיין נומער פון ביץ איז נאָר געגאנגען צו זייַן 0 זיך. און אַזוי מיר וועט בכלל אָנהייבן יניטיאַליזינג אַפֿילו אונדזער וועריאַבאַלז צו 0. און אין C צו טאָן די זעלבע, מיר רע געגאנגען צו זאָגן ינט פֿאַר ינטעגער, איך נאָר דורך קאַנווענשאַן. איך קען האָבן גערופֿן דעם בייַטעוודיק עפּעס איך ווילן, פּונקט ווי אין קראַצן. און דעמאָלט יקוואַלז 0 נאָר אַסיינז די ווערט 0 פון די רעכט און לייגט עס אין די בייַטעוודיק, אָדער די סטאָרידזש קאַנטיינער דאָרט, אויף די לינקס. און די האַלב-צווייפּינטל ווי מיר וועט סעע-- און מיר ווע געזען אַ ביסל פון די אַלרעאַדי-- נאָר מיטל סוף פון געדאַנק. גיינ ווייַטער צו טאָן עפּעס אַנדערש אויף די שורות אַז נאָכפאָלגן. איצט, וואָס וועגן באָאָלעאַן אויסדרוקן? ריקאָל אַז אין קראַצן, די זענען אויסדרוקן וואָס זענען אָדער אמת אָדער פאַלסע-- שאלות, טאַקע, וואָס זענען אָדער אמת אָדער פאַלש. אַזוי אין דעם פאַל פון קראַצן, מיר זאלן פרעגן אַ פּשוט קשיא ווי דעם, איז איך ווייניקער ווי 50? אַזוי איך, ווידער, איז אַ ינטעגער. אפֿשר מיר רע ניצן עס אין אַ קראַצן פּראָגראַם צו האַלטן שפּור פון אַ כעזשבן אָדער עפּעס ווי אַז. אזוי דעם סינטאַקס דאָ אין קראַצן נאָר מיטל איז איך ווייניקער ווי 50? נו, טהאַנקפוללי, עפּעס איז פּשוט אין סי און צו איבערזעצן, דעם מיר וואָלט נאָר זאָגן איך ווייניקער ווי 50, ניצן די באַקאַנט שליסל אויף דיין קלאַוויאַטור. מינווייל, אויב איר געוואלט צו זאָגן עפּעס מער אַלגעמיין, ווי, געזונט, איז רענטגענ ווייניקער ווי י ווו יעדער פון רענטגענ און י זענען זיך וועריאַבאַלז? מיר קענען טאָן די זעלבע זאַך אין C, אַזוי לאַנג ווי מיר ווע Created די וועריאַבאַלז שוין. און מיר וועט זען ווי צו טאָן אַז איידער לאַנג. מיר וואָלט נאָר זאָגן X ווייניקער ווי י. אזוי איר ניטאָ סטאַרטינג צו זען עטלעכע סימאַלעראַטיז. און יענע folks, וואס האט געמאכט קראַצן זענען אַוואַדע ינספּייערד דורך עטלעכע פון ​​די גרונט געדאנקען. און איר וועט זען דעם מין פון סינטאַקס אין פילע לאַנגואַגעס-- נישט נאָר קראַצן, ניט נאָר C, אָבער פּיטהאָן, און דזשאַוואַסקריפּט, און אנדערע שפּראַכן נאָך. זאל ס באַטראַכטן אנדערן בויען פון C, די געדאנק פון אַ צושטאַנד, טאן עפּעס קאַנדישנאַלי. אויב עפּעס איז אמת, טאָן דעם. אויב עפּעס אַנדערש איז אמת, טאָן אַז. עס ס סאָרט פון די פּראָגראַממינג עקוויוואַלענט פון אַ גאָפּל אין די וועג. אפֿשר עס ס אַ צוויי-וועג גאָפּל, אַ דרייַ-וועג גאָפּל, אָדער מער. און אין קראַצן, מיר זאלן האָבן געזען עפּעס ווי דעם. אַזוי דעם איינער ס אַ גרויס איינער. אבער באַטראַכטן די קאָרעוו פּאַשטעס פון די לאָגיק. אויב רענטגענ איז ווייניקער ווי י, דעמאָלט זאָגן רענטגענ איז ווייניקער ווי י, אַנדערש אויב X איז גרעסער ווי י, דעריבער זאָגן רענטגענ איז גרעסער ווי י. און דעריבער, לאַדזשיקלי, אויב איר טראַכטן צוריק צו קראַצן אָדער נאָר דיין אייגן מענטש ינטוישאַן, געזונט, אויב רענטגענ איז נישט גרעסער ווי י, און רענטגענ איז ניט ווייניקער ווי י, דעמאָלט פון קורס רענטגענ איז געגאנגען צו זיין גלייַך צו י. אַזוי אין דעם פאַל, דורך נעסטינג יענע קראַצן בלאַקס, קענען מיר דערגרייכן אַ דרייַ וועג גאָפּל אין די וועג? מינווייל, אויב מיר ווילן צו טאָן אַז אין C, עס אַרגיואַבלי קוקט אַ ביסל סימפּלער-- לפּחות אַמאָל איר באַקומען באַקאַנט מיט די סינטאַקס. אויב רענטגענ איז ווייניקער ווי י, פּרינטף X איז ווייניקער ווי י. אַנדערש אויב X איז גרעסער ווי י, פּרינטף X איז גרעסער ווי י. אַנדערש פּרינטף רענטגענ איז גלייַך צו י-- און, ווידער, מיט די באַקקסלאַש ענדס נאָר פֿאַר יענע נייַ שורות אַזוי אַז אויב איר אַקשלי געלאָפֿן דעם מין פון פּראָגראַם עס וואָלט נאָר מאַך דיין לויפֿער לעסאָף צו די ווייַטער שורה פון דעם עקראַן. איצט, דערווייַל קראַצן האט אנדערע מער sophisticated פֿעיִקייטן, בלויז עטלעכע פון ​​וואָס מיר רע געגאנגען צו טכילעס באַוועגן איבער צו דער וועלט פון סי און איינער פון זיי איז געווען גערופֿן אַ רשימה אין קראַצן. און דאָס איז געווען אַ ספּעציעל טיפּ פון בייַטעוודיק אַז ערלויבט איר צו קראָם קייפל זאכן אין עס צוריק, צו צוריק, צו צוריק, צו צוריק. אין C, עס טוט נישט האָבן רשימות, פּער סיי, אָבער עפּעס וואָס זענען מער בכלל גערופֿן ערייז, כאָטש מיר וועט קומען צוריק שפּעטער דעם זמאַן צו קוקן אין עפּעס גערופֿן אַ רשימה, אָדער טאַקע אַ לינגקט רשימה. אבער פֿאַר איצט, די קלאָוסאַסט עקוויוואַלענט אין C פֿאַר אונדז איז געגאנגען צו זיין עפּעס גערופֿן אַ מענגע. און אַ מענגע איז נאָר אַ ספּעציעל טיפּ פון בייַטעוודיק אַז אַלאַוז איר צו קראָם דאַטן צוריק צו צוריק, צו צוריק, צו צוריק. און, טאַקע, אין סקראַטטש, אויב מיר געוואלט צו צוטריט דער ערשטער עלעמענט פון אַ מענגע אָדער אַ ליסט-- און איך בין געגאנגען צו רופן עס, דורך קאַנווענשאַן, אַרגוו, אַרגומענט וועקטאָר, אָבער מער אויף אַז איידער לאַנג. אויב איך ווילן צו באַקומען אין דער ערשטער עלעמענט פון אַרגוו, אין דער וועלט פון קראַצן איר אַקטשאַוואַלי טאָן טיפּיקלי אָנהייבן קאַונטינג פון 1. און אַזוי איך זאל באַקומען נומער 1 פון אַרגוו. אַז ס 'נאָר ווי MIT ימפּלאַמענאַד דער געדאנק פון רשימות. אבער אין C, איך בין געגאנגען צו מער נאָר נאָר זאָגן, אַרגוו, וואָס ווידער איז דער נאָמען פון מיין ליסט-- אָדער צו זיין קלאָר, אַ מענגע. און אויב איך ווילן די ערשטער יסודות, איך בין געגאנגען צו נוצן קוואַדראַט בראַקאַץ, וואָס איר זאל נישט אָפֿט געניצט אונטער אַ קלאַוויאַטור. אבער 0 נאָר מיטל, באַקומען מיר דער ערשטער. אזוי אויף געלעגנהייַט און ווי צייַט פּאַסיז, ​​מיר רע געגאנגען צו אָנהייבן צו זען די דיטשאָטאָמיעס צווישן קראַצן און C, ווערביי קראַצן ניצט איינער. מיר אין C נוצן 0 דאָ. אבער איר וועט געשווינד זען אַמאָל איר פֿאַרשטיין די יסודות פון יעדער שפּראַך, אַז די זאכן אָנהייבן צו באַקומען אַלע די מער באַקאַנט דורך פיר און פיר. אזוי לאָזן 'ס אַקטשאַוואַלי קוקן איצט בייַ אַ פּראָגראַם. דאָ וועט זיין דער ערשטער פון אונדזער C מקור קאָד פֿאַר גאַנץ מגילה. און דער פּראָגראַם מיר רע געגאנגען צו פאָרשלאָגן פֿאַר באַטראַכטונג איז דער איין אַז ס עקוויוואַלענט צו אַז פריער קראַצן שטיק. אזוי אין דאָ, מיר האָבן וואָס ס אַרגיואַבלי די סימפּלאַסט C פּראָגראַם איר קענען שרייַבן אַז אַקשלי טוט עפּעס. איצט, מיר וועט קוקן פאַרגאַנגענהייַט, פֿאַר איצט, האט אַרייַננעמען, נאָרמאַל יאָ.ה, און די ווינקל בראַקאַץ, און ינט, און פּאָסל, און די געגרייַזלט ברייסאַז, און די ווי. און לאָזן ס נאָר פאָקוס אויף וואָס, בייַ מינדסטער ינטויטיוולי, זאל שפּרינגען אויס בייַ איר שוין. אין פאַקט, הויפּט, איך טאָן ניט דאַווקע וויסן וואָס דאָס איז, אָבער פיל ווי קראַצן האט, אז ווען גרין פאָן קליקט רעטעניש שטיק, אַזוי טוט C ווי אַ פּראָגראַממינג שפּראַך האָבן אַ הויפּט שטיק פון קאָד וואָס געץ עקסאַקיוטאַד דורך ניט ויסצאָלן. און, טאַקע, עס ס ממש געגאנגען צו זיין גערופֿן הויפּט. אזוי הויפּט איז אַ פֿונקציע. און עס ס אַ ספּעציעל פונקציאָנירן אַז יגזיסס אין C אַז ווען איר לויפן אַ פּראָגראַם, עס איז הויפּט אַז געץ לויפן דורך ניט ויסצאָלן. אין דער וועלט פון קראַצן, עס איז געווען יוזשאַלי ווען גרין פאָן קליקט אַז גאַט לויפן דורך ניט ויסצאָלן. מינווייל, מיר 'ווע געזען דעם פריער, פּרינטף אָדער קאָפּירן פֿאָרמאַטירט, אַז ס געגאנגען צו זיין אַ פֿונקציע וואָס קומט מיט C, צוזאמען מיט אַ גאַנץ בינטל פון אנדערע, וואָס וועט פֿון צייַט און צייַט ווידער, אין סדר צו טאָן פּונקט ווי זייַן נאָמען סאַגדזשעס, דרוקן עפּעס. וואָס טאָן מיר ווילן צו דרוקן? נו, מיר וועט זען אַז דורך ענקלאָוזינג אותיות ווי טהעסע-- העלא וועלט, באַקקסלאַש N אין טאָפּל ציטירט, מיר קענען זאָגן פּרינטף פּונקט וואָס צו דרוקן אויף דעם עקראַן. אבער אין סדר צו טאָן וואָס, מיר ליידער דאַרפֿן צו נעמען עפּעס וואָס איז שוין קריפּטיק צו אונדז יומאַנז, אָבער בייַ מינדסטער עס ס עפּעס רעאַדאַבלע-- שאַרף אַרייַננעמען, נאָרמאַל יאָ.ה, ינט, הויפּט, פּאָסל, פּרינטף, אַלע פון ​​די מאַדזשיקאַל ינקאַנטאַטיאָנס מיר נאָר געזען אויף דעם עקראַן. אבער מיר אַקטשאַוואַלי האָבן צו גיין מער אַרקיין נאָך. מיר ערשטער דאַרפֿן צו איבערזעצן די קאָד וואָס מיר שרייַבן אין מאַשין קאָד. און צוריקרופן פון לעצטע וואָך אַז מאשינען, לפּחות די אָנעס מיר וויסן דאָ, אין די סוף פון די טאָג בלויז פֿאַרשטיין זעראָס און אָנעס. און מיין גאָט, אויב מיר האבן צו שרייַבן די זעראָס און אָנעס צו אַקטשאַוואַלי פּראָגראַם, עס וואָלט זייער, זייער געשווינד נעמען די שפּאַס אויס פון עפּעס. אבער עס טורנס אויס, פּער לעצטע וואָך, אַז די פּאַטערנז פון זעראָס און אָנעס נאָר האָבן ספּעציעל טייַטש. אין זיכער קאַנטעקסץ, זיי זאל מיינען נומערן. אין עטלעכע קאַנטעקסץ, זיי זאלן מיינען אותיות, אָדער פֿאַרבן, אָדער קיין נומער פון אנדערע אַבסטראַקטיאָנס דאָרט אויף. אבער פּונקט ווי דיין קאָמפּיוטער האט אַ קפּו, סענטראַל פּראַסעסינג וניט, אָדער די סייכל ין פון אייער קאָמפּיוטער. עס ס יוזשאַוואַלי ינטעל ין, ווייַל אַז ס איינער פון די ביגאַסט קאָמפּאַניעס וואָס מאכט קפּוס פֿאַר קאָמפּיוטערס. נו, ינטעל קפּוס און אנדערע נאָר האָבן באַשלאָסן אין שטייַגן אַז זיכער פּאַטערנז פון זעראָס און אָנעס וועט מיינען ספּעציפיש זאכן. זיכער פּאַטערנז פון זעראָס און אָנעס וועט מיינען, דרוק דעם צו דעם עקראַן, אָדער לייגן די צוויי נומערן, אָדער אַראָפּרעכענען די צוויי נומערן, אָדער מאַך דעם שטיק פון דאַטן פון מיין קאָמפּיוטער ס זכּרון איבער דאָ, אָדער קיין נומער פון אנדערע זייער נידעריק מדרגה, אָבער לעסאָף נוצלעך, אַפּעריישאַנז. אבער, טהאַנקפוללי, מיר יומאַנז זענען נישט געגאנגען צו דאַרפֿן צו וויסן דעם מדרגה פון דעטאַל. טאקע, נאָר ווי לעצטע מאָל, ווו מיר פאַרטראָגן ווידער, און ווידער, און ווידער, בנין פון זייער נידעריק מדרגה פּרימיטיוועס ווי זעראָס און אָנעס צו העכער מדרגה קאַנסעפּס ווי נומערן, און אותיות, און פֿאַרבן, און מער, אַזוי קענען מיר ווי פּראָוגראַמערז שטיין אויף די פּלייצעס פון אנדערע וואס האָבן קומען איידער אונדז און נוצן ווייכווארג אַז אנדערע מענטשן האָבן געשריבן איידער וס-- ניימלי מגילה גערופֿן זאַמלערס. C איז אַ שפּראַך וואס איז יוזשאַוואַלי קאָמפּילעד, וואָס מיטל קאָנווערטעד פון מקור קאָד צו מאַשין קאָד. אין באַזונדער, וואָס דעם מיטל איז אַז אויב איר ווע גאַט דיין מקור קאָד אַז איר זיך שרייַבן, ווי מיר באַלד וועט אין נאָר אַ מאָמענט אויף דער עקראַן, און איר ווילן צו בייַטן עס לעסאָף צו מאַשין קאָדע-- יענע זעראָס און אָנעס אַז נאָר דיין מעק אָדער דיין פּיסי ונדערסטאַנדס-- איר ווע גאַט אַ ערשטער קאָרמען אַז מקור קאָד אין ווי ינפּוט צו אַ ספּעציעל פּראָגראַם געהייסן אַ קאַמפּיילער, דער רעזולטאַט פון וואָס מיר וועט זען איז מאַשין קאָד. און, טאַקע, לעצטע מאָל מיר גערעדט וועגן, טאַקע, בייַ די סוף פון די טאָג, פּראָבלעם סאַלווינג. איר ווע גאַט ינפּוץ. און איר ווע גאַט אַוטפּוץ. און איר ווע גאַט עטלעכע מין פון אַלגערידאַם אין דער מיטן. אַלגערידאַמז קענען שורלי זיין ימפּלאַמענאַד אין ווייכווארג, ווי מיר געזען מיט פּסעודאָקאָדע לעצט וואָך און ווי מיר וועט זען מיט פאַקטיש קאָד די וואך. און אַזוי אַ קאַמפּיילער טאַקע נאָר האט אַ סכום פון אַלגערידאַמז אינעווייניק פון עס אַז וויסן ווי צו גער די ספּעציעל טערמינען, ווי הויפּט, און פּרינטף, און אנדערע אַז מיר נאָר געזען אין די פּאַטערנז פון זעראָס און אָנעס אַז ינטעל ין און אנדערע קפּוס אַקשלי ונדערסטאַנדס. אזוי ווי טאָן מיר טאָן דעם? ווו טאָן מיר באַקומען אַ קאַמפּיילער? רובֿ פון אונדז דאָ האָבן אַ מעק אָדער אַ פּיסי. און איר ניטאָ פליסנדיק מעק אַס, אָדער ווינדאָוז, אָדער לינוקס, אָדער סאָלאַריס, אָדער קיין נומער פון אנדערע אַפּערייטינג סיסטעמס. און, טאַקע, מיר געקענט גיין אויס אַנטו די וועב און אָפּלאָדירן אַ קאַמפּיילער פֿאַר דיין מעק אָדער דיין פּיסי פֿאַר דיין באַזונדער אָפּערייטינג סיסטעם. אבער מיר וואָלט אַלע זייַן אויף פאַרשידענע בלעטער, אַזוי צו רעדן. מיר'ד האָבן אַ ביסל פאַרשידענע קאָנפיגוראַטיאָנס. און דאס וואָלט נישט אַרבעטן אַלע די זעלבע. און, טאַקע, די טעג פילע פון ​​אונדז טאָן ניט נוצן ווייכווארג אַז ראַנז נאָר אויף אונדזער לאַפּטאַפּס. אַנשטאָט, מיר נוצן עפּעס ווי אַ בלעטערער אַז אַלאַוז אונדז צו צוטריט וועב-באזירט פּראָגראַמען אין די וואָלקן. און שפּעטער דעם זמאַן, מיר וועלן טאָן פּונקט וואָס. מיר וועלן שרייַבן אַפּלאַקיישאַנז אָדער ווייכווארג ניצן קאָדע-- נישט C, אָבער אנדערע שפּראַכן ווי פּיטהאָן און דזשאַוואַסקריפּט-- אַז לויפן אין דעם וואָלקן. און צו טאָן וואָס, מיר זיך בעשאַס די זמאַן וועט אַקטשאַוואַלי נוצן אַ וואָלקן-באזירט סוויווע באקאנט ווי קס50 ייד. דאס איז אַ וועב-באזירט פּראָגראַממינג סוויווע, אָדער ינאַגרייטיד אַנטוויקלונג סוויווע, ייד, אַז ס געבויט אַטאַפּ עטלעכע עפענען מקור ווייכווארג גערופֿן וואָלקן 9. און מיר ווע געמאכט עטלעכע פּעדאַגאַדזשיקאַל סימפּליפיקאַטיאָנס צו עס אַזוי ווי צו באַהאַלטן זיכער פֿעיִקייטן אין דער ערשטער וואָכן אַז מיר טאָן ניט דאַרפֿן, נאָך וואָס איר קענען אַנטדעקן זיי און טאָן רובֿ עפּעס איר ווילן מיט די סוויווע. און עס אַלאַוז אונדז, אויך, צו פֿאַר-ינסטאַלירן זיכער ווייכווארג. זאכן ווי אַ אַזוי-גערופֿן קס50 ביבליאָטעק, וואָס מיר וועט באַלד זען גיט אונדז אין C מיט עטלעכע נאָך פונקטיאָנאַליטי. אַזוי אויב איר גיין צו, לעסאָף, CS50.io, איר וועט זיין פּראַמפּטיד צו קלאָץ אין, און אַמאָל איר טאָן און מאַכן אַ חשבון פֿאַר פּאָטער, איר וועט קענען צו צוטריט אַ סוויווע אַז קוקט גאַנץ ווי דעם. איצט, דעם איז אין דעם ניט ויסצאָלן מאָדע. אלץ איז פייַן און העל אויף דעם עקראַן. פילע פון ​​אונדז האָבן אַ מידע פון ארבעטן אויף קס50 שטיק אַז ס גאַנץ שפּעט אין דער נאַכט. און אַזוי עטלעכע פון ​​איר זאל בעסער צו ווענדן עס אין נאַכט מאָדע, אַזוי צו רעדן. אבער, לעסאָף, וואָס איר ניטאָ געגאנגען צו זען ין קס50 ייד איז דרייַ בוילעט אַרעאַס-- אַ געגנט אויף די לינקס ווו דיין טעקעס זענען געגאנגען צו זייַן אין די וואָלקן, אַ געגנט אויף די שפּיץ רעכט ווו דיין קאָד איז געגאנגען צו זיין עדיטאַבלע. איר וועט קענען צו עפענען יחיד טאַבס פֿאַר קיין פּראָגראַם אַז איר שרייַבן דעם זמאַן ין פון אַז שפּיץ רעכט האַנט ווינקל. און דעריבער רובֿ אַרקאַנעלי, און נאָך פּאָווערפוללי, איז געגאנגען צו זיין דעם זאַך בייַ די דנאָ באקאנט ווי אַ וואָקזאַל פֿענצטער. דעם איז אַן אַלט שולע קאַמאַנד ליין צובינד, אָדער קלי, אַז אַלאַוז איר צו ויספירן קאַמאַנדז אויף די קאָמפּוטער-- אין דעם פאַל, די קאָמפּיוטער אין די קלאָוד-- צו טאָן זאכן ווי צונויפנעמען דיין קאָד פון מקור קאָד צו מאַשין קאָד, צו לויפן דיין מגילה, אָדער צו אָנהייבן דיין וועב סערווער, אָדער צו צוטריט אייער דייטאַבייס, און קיין נומער פון אנדערע טעקניקס וואָס מיר וועט אָנהייבן צו נוצן איידער לאַנג. אבער צו באַקומען דאָרט, מיר רע געגאנגען צו אַקטשאַוואַלי האָבן צו גיין אָנליין און אָנהייב פּלייינג. און צו טאָן וואָס, לאָזן ס ערשטער אָנהייבן טינגקערינג מיט הויפּט, און שרייַבן דער הויפּט טייל פון אַ פּראָגראַם. און לאָזן ס נוצן אַז פֿונקציע פּרינטף, וואָס מיר געוויינט פריער, נאָר צו זאָגן עפּעס. אַזוי דאָ איך בין שוין ין פון קס50 ייד. איך ווע לאָגד אין שטייַגן. און איך פול סקרינד די פֿענצטער. און אַזוי, לעסאָף, איר אויך אין קומענדיק פּראָבלעמס וועט נאָכפאָלגן ענלעך טריט אַז וועט צושטעלן אָנליין דאַקיומענטיישאַן. אזוי איר טאָן ניט דאַרפֿן צו זאָרג וועגן אַבזאָרבינג יעדער ביסל טעכניש שריט אַז איך טאָן דאָ הייַנט. אבער איר וועט באַקומען אַ פאַרשטעלן ווי דעם. איך פּאַסירן צו זיין אין נאַכט מאָדע. און איר קענען ברייטאַן אַלץ אַרויף דורך דיסייבלינג נאַכט מאָדע. און אין די סוף פון די טאָג, איר ניטאָ געגאנגען צו זען די דרייַ הויפּט אַרעאַס-- דער טעקע בלעטערער אין לינקס, די קאָד טאַבס אַרויף שפּיץ, און דער וואָקזאַל פֿענצטער אין דער דנאָ. זאל מיר גיין פאָרויס און שרייַבן מיין ערשטער פּראָגראַם. איך בין געגאנגען צו פּרעעמפּטיוועלי גיין צו טעקע, היט, און ראַטעווען מיין טעקע ווי העללאָ.ק. טאקע, דורך קאַנווענשאַן, קיין פּראָגראַם מיר שרייַבן אַז ס געשריבן אין די C שפּראַך זאָל זייַן געהייסן עפּעס פּינטעלע C, דורך קאַנווענשאַן. אַזוי איך בין געגאנגען צו נאָמען עס העללאָ.ק, ווייַל איך פּונקט ווילן צו זאָגן העלא צו די וועלט. איצט איך בין געגאנגען צו Zoom אויס און גיט היט. און אַלע איך האָבן דאָ איצט איז אַ קוויטל אין וואָס איך קענען אָנהייבן שרייבן קאָד. דעם איז ניט געגאנגען צו צונויפנעמען. דעם מיטל גאָרנישט. און אַזוי אַפֿילו אויב איך קאָנווערטעד דעם צו זעראָס און אָנעס, די קפּו איז געגאנגען צו האָבן קיין געדאַנק וואָס ס 'געגאנגען אַרום. אבער אויב איך שרייַבן שורות אַז טאָן גלייַכן אַרויף מיט C ס קאָנווענטיאָנס-- C ווייל, ווידער, דעם לאַנגואַגע-- מיט סינטאַקס ווי דעם, פּרינטף העלא וואָרלד-- און איך ווע גאַטאַן באַקוועם מיט טאן דעם איבער צייַט. אַזוי איך טאָן ניט טראַכטן איך געמאכט קיין טיפּאָגראַפיקאַל ערראָרס. אבער, טאָמיד, די זייער ערשטער צייַט איר טאָן דעם, איר וועט. און וואָס איך בין וועגן צו טאָן זאל זייער געזונט ניט אַרבעט פֿאַר איר די ערשטער מאָל. און אַז ס בישליימעס גוט, ווייַל רעכט איצט איר זאל נאָר זען אַ גאַנץ פּלאַץ פון נונאַס, אָבער איבער צייַט אַמאָל איר באַקומען באַקאַנט מיט דעם סוויווע, און דעם שפּראַך, און אנדערע, איר וועט אָנהייבן צו זען זאכן וואָס זענען אָדער ריכטיק אָדער פאַלש. און דאָס איז וואָס די לערנען פעללאָווס און לויף אַסיסטאַנץ באַקומען אַזוי גוט בייַ איבער צייַט, איז ספּאַטינג מיסטייקס אָדער באַגז אין אייער קאָד. אבער איך פאָדערן אַז עס זענען קיין באַגז אין דעם קאָד. אזוי איך איצט ווילן צו לויפן דעם פּראָגראַם. איצט אויף מיין אייגן מעק אָדער פּיסי, איך בין אין די מידע פון ​​טאָפּל געבן אַ קליק ייקאַנז ווען איך ווילן צו לויפן עטלעכע פּראָגראַם. אבער אַז ס ניט די מאָדעל דאָ. אין דעם סוויווע, וואָס איז קס50 ייד. מיר זענען ניצן אַ אַפּערייטינג סיסטעם גערופֿן לינוקס. לינוקס איז רעמאַניסאַנט פון אנדערן אָפּערייטינג סיסטעם, בכלל באקאנט ווי יוניקס. און לינוקס איז דער הויפּט באקאנט פֿאַר ווייל אַ באַפֿעל שורה סוויווע, קלי. איצט, מיר 'רע ניצן אַ ספּעציפיש טאַם פון לינוקס גערופֿן ובונטו. און ובונטו איז נאָר אַ זיכער ווערסיע פון ​​לינוקס. אבער די לינוקס ס די טעג טאָן אַקטשאַוואַלי קומען מיט גראַפיקאַל באַניצער Interfaces. און דער איינער מיר פּאַסירן צו זיין ניצן דאָ איז וועב-באזירט. אַזוי דעם זאל קוקן אַפֿילו אַ ביסל אַנדערש פון עפּעס איר זיך זאל האָבן געזען אָדער לויפן אין דער פאַרגאַנגענהייַט. אַזוי איך בין געגאנגען צו גיין פאָרויס איצט און טאָן די ווייַטערדיק. איך ווע ווערן דעם טעקע ווי העללאָ.ק. איך בין געגאנגען צו גיין פאָרויס און טיפּ קלאַנגהעללאָ.ק אַזוי קלאַנג פֿאַר די C שפּראַך איז אַ קאַמפּיילער. עס ס פֿאַר-אינסטאַלירן אין קס50 ייד. און איר קענען לעגאַמרע אָפּלאָדירן און ינסטאַלירן דעם אויף דיין אייגן מעק אָדער פּיסי. אבער, ווידער, איר וואָלט ניט האָבן אַלע פון די PRE-קאָנפיגוראַטיאָן געטאן פֿאַר איר. אַזוי פֿאַר איצט, איך בין נאָר געגאנגען צו לויפן קלאַנגהעללאָ.ק. און איצט באַמערקן דעם סינטאַקס דאָ וועט יווענטשאַוואַלי פאַרשטיין פּונקט מיטל אַז איך בין אין אַ טעקע אָדער Directory גערופֿן וואָרקספּאַסע. דאס דאָלאַר צייכן איז נאָר צוזאַמענפאָר פֿאַר טייַטש, טיפּ דיין קאַמאַנדז דאָ. עס ס וואָס ס גערופֿן אַ פּינטלעך, נאָר דורך קאַנווענשאַן איז דאָלאַר צייכן. און אויב איך גיין פאָרויס איצט און גיט קומען, גאָרנישט מיינט צו האָבן געשען. אבער אַז ס אַקשלי אַ גוט זאַך. די ווייניקער אַז כאַפּאַנז אויף דיין פאַרשטעלן, די מער מסתּמא דיין קאָד איז צו זיין ריכטיק, לפּחות סינטאַקטיקאַללי. אַזוי אויב איך ווילן צו לויפן דעם פּראָגראַם, וואָס טאָן איך טאָן? נו, עס טורנס אויס אַז די ניט ויסצאָלן נאָמען דורך צוזאַמענפאָר פֿאַר מגילה ווען איר טאָן ניט ספּעציפיצירן אַ נאָמען פֿאַר דיין פּראָגראַם איז נאָר אַ.אָוט. און דעם סינטאַקס אויך, איר וועט באַקומען באַקאַנט מיט איידער לאַנג. פּונקט צעהאַקן נאָר מיטל, היי, קס50 ייד, לויפן אַ פּראָגראַם געהייסן אַ.אָוט אַז ס 'ין מיין איצטיקן Directory. אַז פּונקט מיטל דעם קראַנט Directory. און מיר וועט זען וואָס אנדערע אַזאַ סיקוואַנסיז פון אותיות מיטל איידער לאַנג. אזוי דאָ מיר גיין, קומען, העלא וועלט. און איר וועט באַמערקן, אַז וואָס געשען? ניט נאָר האט עס דרוקן העלא וועלט. עס אויך באווויגן די לויפֿער צו דער ווייַטער שורה. און וואָס איז געווען אַז? וואס איז געווען די קאָד אַז מיר געשריבן פריער וואָס ינשורד אַז די לויפֿער וואָלט גיין אויף די ווייַטער שורה? מאָדנע זאַך וועגן אַ קאָמפּיוטער איז עס ס נאָר געגאנגען צו טאָן ממש וואָס איר זאָגן עס צו טאָן. אַזוי אויב איר זאָגן עס צו פּרינטף העלא, קאָמע, פּלאַץ, וועלט, נאָענט ציטירן, עס ס ממש נאָר געגאנגען צו דרוקן יענע אותיות. אָבער איך האט דעם ספּעציעל כאַראַקטער אין די סוף, צוריקרופן, באַקקסלאַש ן. און אַז ס וואָס ינשורד אַז די כאַראַקטער זענען צו די ווייַטער שורה פון דעם עקראַן. אין פאַקט, לאָזן מיר גיין און טאָן דעם. זאל מיר גיין פאָרויס און אויסמעקן דעם. איצט, באַמערקן אַז די שפּיץ פון מיין פאַרשטעלן עס ס אַ ביסל רויט ליכט אין די קוויטל ינדאַקייטינג, היי, איר ווע ניט געזונט אייער טעקע. אַזוי איך בין געגאנגען צו גיין פאָרויס מיט קאָנטראָל ד אָדער באַפֿעל ד, ראַטעווען די טעקע. איצט עס גאָעס-- געגאנגען פֿאַר אַ מאָמענט-- גרין. און איצט עס ס צוריק צו נאָר ווייל אַ נאָענט בילדל. אויב איך איצט לויפן קלאַנגהעללאָ.ק ווידער, קומען, פּונקט צעהאַקן, אַ.אָוט, אַרייַן, איר וועט זען אַז עס איז נאָך געארבעט. אבער עס ס אַרגיואַבלי אַ ביסל וואָגן. רעכט איצט, מיין פּראָמפּט-- וואָרקספּאַסע, און דעמאָלט אַז דאָלאַר צייכן, און דעריבער מיין פאַקטיש פּראָמפּט-- איז אַלע אויף דער זעלביקער שורה. אזוי דעם אַוואַדע אַן עסטעטיש זשוק, אַפֿילו אויב עס ס ניט טאַקע אַ לאַדזשיקאַל זשוק. אַזוי איך בין געגאנגען צו ופמאַכן וואָס איך נאָר האט. איך בין געגאנגען צו ריראַן אַ.אָוט. באַמערקן איך ווע צוגעגעבן די נעוולינע כאַראַקטער צוריק. איך ווע ווערן דער טעקע. אַזוי איך בין געגאנגען צו ריראַן אַ.אָוט, אַנד-- Dammit, אַ זשוק, אַ זשוק טייַטש גרייַז. אזוי די זשוק איז אַז אַפֿילו כאָטש איך צוגעלייגט די באַקקסלאַש N דאָרט, שייַעך-געזונט, שייַעך-געלאָפֿן דעם פּראָגראַם, די נאַטור איז געווען די זעלבע. וואָס וואָלט אַז זיין? איך בין פעלנדיק אַ שריט, רעכט? אַז שליסל שריט פריער איז געווען אַז איר האָבן טאָ-- ווען איר טוישן אייער מקור קאָד, עס טורנס אויס אויך לויפן עס דורך די קאַמפּיילער ווידער אַזוי איר באַקומען נייַ מאַשין קאָד. און די מאַשין קאָד, די זעראָס און אָנעס, זענען געגאנגען צו זיין כּמעט יידעניקאַל, אָבער נישט בישליימעס אַזוי, ווייַל מיר דאַרפֿן, פון לויף, אַז נייַ שורה. אזוי צו פאַרריכטן דעם, איך בין געגאנגען צו דאַרפֿן צו ריראַן קלאַנגהעללאָ.ק, אַרייַן, פּונקט צעהאַקן, אַ.אָוט. און איצט, העלא וועלט איז צוריק צו ווו איך דערוואַרטן עס צו זיין. אזוי דעם איז אַלע פייַן און גוט. אבער אַ.אָוט איז אַ שיין נאַריש נאָמען פֿאַר אַ פּראָגראַם, אַפֿילו כאָטש עס כאַפּאַנז צו זיין, פֿאַר היסטארישע סיבות, די דעפאַולט-- טייַטש פֿאַרזאַמלונג אַוטפּוץ. אבער לאָזן מיר גיין פאָרויס דאָ און טאָן דאָס אנדערש. איך ווילן מיין העלא וועלט פּראָגראַם צו אַקטשאַוואַלי זיין גערופֿן העלא. אזוי אויב עס זענען געווען אַ בילדל אויף מיין דעסקטאַפּ, עס וואָלט ניט זיין אַ.אָוט. עס וואָלט זיין גערופֿן העלא. אַזוי צו טאָן דאָס, עס טורנס אויס אַז קלאַנג, ווי פילע מגילה, שטיצט באַפֿעלן שורה טענות, אָדער flags, אָדער סוויטשיז, וואָס נאָר השפּעה זייַן נאַטור. ספּעסיפיקאַללי, קלאַנג שטיצט אַ לאָך אָ פאָן, וואָס דעמאָלט נעמט אַ רגע וואָרט. אין דעם פאַל, איך וועט אַרביטרעראַלי, אָבער ריזאַנאַבלי, רופן עס העלא. אָבער איך קען רופן עס עפּעס איך ווילן, חוץ אַ.אָוט, וואָס וואָלט זיין גאַנץ אויסערדעם די פונט. און דעמאָלט נאָר ספּעציפיצירן די נאָמען פון דער טעקע איך טאָן ווילן צו צונויפנעמען. אזוי איצט אַפֿילו כאָטש אין די אָנהייב פון די באַפֿעל איך נאָך האָבן קלאַנג, אין די סוף פון די באַפֿעל איך נאָך האָבן די פילענאַמע, איך איצט האָבן די באַפֿעלן שורה טענות, די flags וואָס זענען אַזוי צו זאָגן: טאַקע, דורך די וועג, פּראָדוקציע-אָ, אַ טעקע גערופֿן העלא, ניט דער ניט ויסצאָלן אַ.אָוט. אַזוי אויב איך שלאָגן קום איצט, גאָרנישט מיינט צו האָבן געשען. און, נאָך, איצט איך קענען טאָן פּונקט צעהאַקן העלא. אַזוי עס ס די זעלבע פּראָגראַם. די זעראָס און אָנעס זענען יידעניקאַל אין די סוף פון די טאָג. אבער זיי ניטאָ אין צוויי פאַרשידענע פילעס-- אַ.אָוט, וואָס איז דער ערשטער ווערסיע און נאָר פאָאָלישלי געהייסן, און איצט העלא, וואָס איז אַ פיל מער קאַמפּעלינג נאָמען פֿאַר אַ פּראָגראַם. אבער, האָנעסטלי, איך בין קיינמאָל געגאנגען צו געדענקען דעם ווידער, און ווידער, און ווידער. און, טאקע, ווי מיר שרייַבן מער קאָמפּליצירט מגילה, די קאַמאַנדז איר ניטאָ געגאנגען צו האָבן צו שרייַבן זענען געגאנגען צו באַקומען אַפֿילו מער קאָמפּליצירט נאָך. און אַזוי נישט צו זאָרג. עס טורנס אויס אַז יומאַנז איידער אונדז האָבן איינגעזען זיי אויך האט דעם פּינטלעך זעלביקער פּראָבלעם. זיי אויך האט ניט הנאה געהאט צו טיפּ פאַירלי לאַנג, אַרקיין קאַמאַנדז, לאָזן אַליין געדענקען זיי. און אַזוי יומאַנז איידער אונדז האָבן געמאכט אנדערע מגילה אַז מאַכן עס גרינגער צו צונויפנעמען דיין ווייכווארג. און, טאַקע, איין אַזאַ פּראָגראַם איז גערופֿן מאַכן. אַזוי איך בין געגאנגען צו גיין פאָרויס און טאָן דעם. איך בין געגאנגען צו ופמאַכן אַלץ איך נאָר האט אין די ווייַטערדיק וועג. זאל מיר טיפּ לס. און איר וועט באַמערקן דרייַ טהינגס-- אַ.אָוט, און אַ שטערן, העלא און אַ שטערן, און העללאָ.ק. אַלעווייַ, דעם זאָל זיין אַ ביסל ינטואַטיוו, ינסאָפאַר ווי פריער עס איז געווען גאָרנישט אין דעם וואָרקספּאַסע. עס איז גאָרנישט אַז איך האט Created ביז מיר סטאַרטעד קלאַס. און איך Created העללאָ.ק. איך דעמאָלט קאָמפּילעד עס, און האט עס אַ.אָוט. און דעמאָלט איך קאָמפּילעד עס ווידער אַ ביסל אנדערש און האט עס העלא. אזוי איך האָבן דרייַ טעקעס אין דעם דירעקטארי אין דעם טעקע גערופֿן וואָרקספּאַסע. איצט, איך קענען זען אַז ווי געזונט אויב איך Zoom אויס אַקטשאַוואַלי. אויב איך Zoom אויס דאָ און קוק אין אַז שפּיץ רעכט האַנט ווינקל, ווי צוגעזאגט די לינקס האַנט זייַט פון דיין פאַרשטעלן איז שטענדיק געגאנגען צו ווייַזן איר וואָס ס אין דיין חשבון, וואָס ס ין פון קס50 ייד. און עס איז דרייַ טעקעס דאָרט. אַזוי איך ווילן צו באַקומען באַפרייַען פון אַ.אָוט און העלא. און ווי איר זאל ימאַדזשאַן ינטויטיוולי, איר קען סאָרט פון קאָנטראָל גיט אָדער רעכט גיט אויף דעם. און דעם ביסל מעניו פּאַפּס אַרויף. איר קענען אָפּלאָדירן די טעקע, לויפן עס, פאָרויסיקע ווייַזונג עס, דערפרישן, רענאַמע, אָדער וואָס נישט. און איך קען נאָר ויסמעקן, און עס וואָלט גיין אַוועק. אבער לאָזן ס טאָן זאכן מיט אַ באַפֿעל שורה פֿאַר איצט, אַזוי ווי צו באַקומען באַקוועם מיט דעם, און טאָן די ווייַטערדיק. איך בין געגאנגען צו גיין פאָרויס און באַזייַטיקן אַ.אָוט דורך טייפּינג ממש רמאַ.אָוט. עס טורנס אויס, די באַפֿעל פֿאַר רימוווינג אָדער דיליטינג עפּעס, איז נישט צונעמען אָדער ויסמעקן. עס ס מער סאַקסינגקטלי רם, נאָר צו ראַטעווען איר עטלעכע קיסטראָוקס, און שלאָגן קומען. איצט מיר רע געגאנגען צו זייַן עפּעס קריפּטיקאַללי באַזייַטיקן רעגולער טעקע אַ.אָוט. איך טאָן ניט טאַקע וויסן וואָס אַ ירעגיאַלער טעקע וואָלט זיין נאָך. אבער איך טאָן ווילן צו באַזייַטיקן עס. אַזוי איך בין געגאנגען צו טיפּ י פֿאַר יאָ. אָדער איך קען טיפּ עס אויס, און שלאָגן קומען. און, ווידער, גאָרנישט מיינט צו פּאַסירן. אבער אַז איז, בכלל, אַ גוט זאַך. אויב איך טיפּ לס דעם מאָל, וואָס זאָל איך זען? אַלעווייַ, נאָר העלא און העללאָ.ק. איצט, ווי אַ באַזונדער, איר וועט באַמערקן דעם שטערן, אַסטעריסק, אַז ס אין די סוף פון מיין מגילה. און זיי ניטאָ אויך ווייַזונג אַרויף אין גרין. אַז איז נאָר קס50 ייד ס וועג פון קלוינג איר אין דער פאַקט וואָס אַז ס 'נישט מקור קאָד. אַז ס אַ עקסעקוטאַבלע, אַ רוננאַבלע פּראָגראַם אַז איר קענען אַקטשאַוואַלי לויפן דורך טאן פּונקט צעהאַקן, און דעמאָלט עס ס נאָמען. איצט, לאָזן מיר גיין פאָרויס און באַזייַטיקן דעם, רם העלא, קום, אַראָפּנעמען רעגולער טעקע העלא, יאָ. און איצט אויב איך טיפּ לס, מיר ניטאָ צוריק צו העללאָ.ק. פּרובירן נישט צו ויסמעקן אייער פאַקטיש מקור קאָד. כאָטש עס זענען פֿעיִקייטן געבויט אין קס50 ייד ווו איר קענען גיין דורך אייער רעוויזיע געשיכטע און ריוויינד אין צייַט אויב איר אַקסאַדענאַלי ויסמעקן עפּעס, טאָן זייַן מינדפול ווי פּער די פּראַמפּס יאָ אָדער ניט, פון וואָס איר אַקטשאַוואַלי ווילן צו טאָן. און אויב איך גיין אַרויף צו די שפּיץ לינקס האַנט ווינקל דאָ, אַלע וואָס בלייבט איז העללאָ.ק. אַזוי עס ס באַנטשיז פון אנדערע קאַמאַנדז אַז איר קענען ויספירן אין די וועלט פון לינוקס, איינער פון וואָס איז, ווידער, מאַכן. און מיר רע געגאנגען צו מאַכן מיין פּראָגראַם איצט ווי גייט. אָנשטאָט טאן קלאַנג, אַנשטאָט טאן קלאַנג-אָ, איך בין געגאנגען צו נאָר ממש טיפּ, מאַכן העלא. און איצט באַמערקן, איך בין נישט טייפּינג מאַכן העללאָ.ק. איך בין טייפּינג מאַכן העלא. און דעם פּראָגראַם מאַכן אַז קומט מיט קס50 ייד, און מער בכלל מיט לינוקס, איז אַ פּראָגראַם אַז ס געגאנגען צו מאַכן אַ פּראָגראַם געהייסן העלא. און עס ס 'געגאנגען צו יבערנעמען, דורך קאַנווענשאַן, אַז אויב דעם פּראָגראַם קענען זיין געמאכט, עס ס געגאנגען צו זייַן געמאכט פון אַ מקור קאָד טעקע סאָף אין פּינטעלע C, העללאָ.ק. אַזוי אויב איך שלאָגן קום איצט, באַמערקן אַז דעם באַפֿעל אַז געץ עקסאַקיוטאַד איז אַקטשאַוואַלי אַפֿילו מער איידער ווי איידער. און אַז ס ווייַל מיר ווע פּרעקאָנפיגורעד קס50 ייד צו האָבן עטלעכע נאָך פֿעיִקייטן געבויט אין אַז מיר טאָן ניט דאַרפֿן נאָר נאָך, אָבער באַלד וועט. אבער די שליסל זאַך צו פאַרשטיין איז איצט איך האָבן אַ העלא פּראָגראַם. אויב איך טיפּ לס ווידער, איך האָבן אַ העלא פּראָגראַם. און איך קענען לויפן עס מיט פּינטעלע צעהאַקן אַ.אָוט, ניט, ווייַל דער גאנצער פונט פון דעם געניטונג איז געווען פּונקט צעהאַקן העלא. און איצט איך האָבן מיין העלא וועלט פּראָגראַם. אַזוי מאָווינג פאָרויס, מיר ניטאָ כּמעט שטענדיק נאָר געגאנגען צו צונויפנעמען אונדזער מגילה ניצן די באַפֿעלן מאַכן. און דעמאָלט מיר רע געגאנגען צו לויפן זיי דורך פּינטעלע צעהאַקן, און דער פּראָגראַם 'ס נאָמען. אבער פאַרשטיין וואָס מאַכן איז טאן פֿאַר איר, איז עס איז זיך נישט אַ קאַמפּיילער. עס ס נאָר אַ קאַנוויניאַנס פּראָגראַם וואָס ווייסט ווי צו צינגל אַ קאַמפּיילער צו לויפן אַזוי אַז איר זיך קענען נוצן עס. וואָס אנדערע קאַמאַנדז עקסיסטירן אין לינוקס, און אין דרייַ די קס50 ייד? מיר וועט באַלד זען אַז עס ס אַ קאָמפּאַקטדיסק באַפֿעל, טוישן דירעקטארי. דעם אַלאַוז איר ין דיין באַפֿעל שורה צובינד צו באַוועגן פאָרויס, און צוריק, און עפענען אַרויף פאַרשידענע Folders אָן ניצן אייער מויז. לס מיר געזען, וואָס שטייט פֿאַר רשימה דער טעקעס אין דעם קראַנט Directory. מאַכן דיר, איר קענען מיסטאָמע אָנהייבן צו אָפּלערנען וואָס די מיינען נאָוו-- מאַכן דירעקטארי אויב איר ווילן צו שאַפֿן אַ טעקע. רם פֿאַר אַראָפּנעמען, רם דיר פֿאַר אַראָפּנעמען דירעקטאָרי-- און די, ווידער, זענען די באַפֿעל שורה יקוויוואַלאַנץ פון וואָס איר קען טאָן אין קס50 ייד מיט דיין מויז. אבער איר וועט באַלד געפינען אַז מאל עס ס נאָר אַ פּלאַץ Faster צו טאָן זאכן מיט אַ קלאַוויאַטור, און לעסאָף אַ פּלאַץ מער מעכטיק. אבער עס ס 'שווער צו טייַנען אַז עפּעס מיר ווע שוין טאן אַזוי ווייַט איז אַלע אַז שטאַרק, ווען אַלע מיר ווע שוין געזאגט איז, העלא וועלט. און, אין פאַקט, איך האַרדקאָדעד די ווערטער העלא וועלט אין מיין פּראָגראַם. עס איז קיין דיינאַמיזאַם נאָך. קראַצן איז געווען אַ סדר פון מאַגנאַטוד מער טשיקאַווע לעצטע וואָך. און אַזוי לאָזן ס באַקומען דאָרט. זאל ס נעמען אַ שריט צו אַז דורך וועג פון עטלעכע פון ​​די פֿעיִקייטן. אַזוי ניט נאָר טוט C קומען מיט פּרינטף, און באַנטשיז פון אנדערע פֿעיִקייטן עטלעכע פון ​​וואָס מיר וועט זען איבער צייַט, עס טוט ניט מאַכן עס אַלע אַז גרינג רעכט אויס פון דער טויער אין געטינג באַניצער ינפּוט. אין פאַקט, איינער פון די וויקנאַסאַז פון שפּראַכן ווי C, און אַפֿילו ז'אבא און נאָך אנדערע, איז אַז עס טוט נישט מאַכן עס גרינג צו נאָר באַקומען דאס ווי ינטאַדזשערז פון ניצערס, אָדער סטרינגס, ווערטער, און פֿראַזעס, לאָזן אַליין זאכן ווי Floating פונט וואַלועס, אָדער פאַקטיש נומערן מיט דעצימאַל ווייזט, און טאַקע לאַנג נומערן, ווי מיר וועט באַלד זען. אזוי דעם רשימה פון פֿעיִקייטן דאָ, די זענען ווי אנדערע קראַצן רעטעניש ברעקלעך אַז מיר האָבן פֿאַר-אינסטאַלירן אין קס50 ייד אַז מיר וועט נוצן פֿאַר אַ ביסל וואָכן ווי טריינינג ווילז פון סאָרץ, און יווענטשאַוואַלי נעמען זיי אַוועק, און קוק ונטער דער קאַפּטער, טאָמער, בייַ ווי די זאכן זענען ימפּלאַמענטאַד. אבער צו טאָן דאָס, לאָזן ס אַקטשאַוואַלי שרייַבן אַ פּראָגראַם. זאל מיר גיין פאָרויס איצט. און איך בין געגאנגען צו שאַפֿן אַ נייַ טעקע דורך געבן אַ קליק דעם קליין פּלוס, און געבן אַ קליק ניו טעקע. איך בין געגאנגען צו ראַטעווען דעם ווייַטער איין ווי, לאָזן ס זאָגן, סטרינג.ק, ווייַל איך ווילן צו שפּילן מיט סטרינגס. און שטריקל אין C איז נאָר אַ סיקוואַנס פון אותיות. אַזוי איצט לאָזן ס גיין פאָרויס און טאָן די ווייַטערדיק. אַרייַננעמען נאָרמאַל יאָ.ה-- און עס טורנס אויס נאָרמאַל יאָ, יאָ פּונקט מיטל ינפּוט און רעזולטאַט. אַזוי עס טורנס אויס אַז דעם שורה דאָ איז וואָס איז די ארומיקע אונדז צו נוצן פּרינטף. פּרינטף, פון קורס, טראגט רעזולטאַט. אזוי אין סדר צו נוצן פּרינטף, עס טורנס אויס איר האָבן צו האָבן דעם שורה פון קאָד אין די שפּיץ פון דיין טעקע. און מיר וועט קומען צוריק צו וואָס אַז טאַקע מיטל איידער לאַנג. עס טורנס אויס אַז אין קיין C פּראָגראַם איך שרייַבן, איך ווע גאַט צו אָנהייבן עס מיט קאָד וואָס קוקט ווי דעם. און איר וועט באַמערקן קס50 ייד, און אנדערע ינאַגרייטיד אַנטוויקלונג ינווייראַנמאַנץ ווי עס, זענען געגאנגען צו פּרובירן ווי בעסטער זיי קענען צו ענדיקן דיין געדאַנק. אין פאַקט, אַ מאָמענט צוריק אויב איך ופמאַכן וואָס איך נאָר האט, איך שלאָגן קומען. איך דעמאָלט שלאָגן עפענען געגרייַזלט בראַסע, שלאָגן קום ווידער. און עס איז פאַרטיק מיין געדאַנק. עס האט מיר אַ נייַ שורה, ינדענטעד ניט ווייניקער פֿאַר פייַן סטיליסטיק סיבות מיר וועט זען. און דעמאָלט עס אויטאָמאַטיש געגעבן מיר אַז געגרייַזלט בראַסע צו ענדיקן מיין געדאַנק. איצט, עס טוט ניט שטענדיק טרעפן וואָס איר ווילן צו טאָן. אבער אין גרויס טייל, עס טוט ראַטעווען איר עטלעכע קיסטראָוקס. אזוי אַ מאָמענט צוריק, מיר געלאָפֿן דעם פּראָגראַמ-- העלא, וועלט, און דעמאָלט קאָמפּילעד עס, און דעמאָלט געלאָפֿן עס. אבער עס ס ניט דיינאַמיזאַם דאָ. וואָס אויב מיר געוואלט צו טאָן עפּעס אַנדערש? נו, וואָס אויב איך געוואלט צו טאקע באַקומען אַ שטריקל פון דעם באַניצער? איך בין געגאנגען צו נוצן אַ רעטעניש שטיק גערופֿן פּונקט טהאַט-- באַקומען שטריקל. טורנס אויס אין C אַז ווען איר טאָן ניט ווילן צו צושטעלן ינפּוט צו אַ רעטעניש שטיק, אָדער מער רעכט צו אַ פֿונקציע, איר ממש נאָר טאָן עפענען פּאַרענטהעסיס, נאָענט פּאַרענטהעסיס. אזוי עס ס 'ווי כאָטש עס ס קיין ווייַס קעסטל צו דרוקן אין. די זאָגן בלאָק איידער האט אַ ביסל ווייַס קעסטל. מיר טאָן ניט האָבן אַז ווייַס קעסטל איצט. אבער ווען איך רוף באַקומען שטריקל, איך ווילן צו שטעלן די רעזולטאַט ערגעץ. אזוי אַ זייער פּראָסט פּעראַדיים אין C איז צו רופן אַ פֿונקציע, ווי באַקומען שטריקל דאָ, און דעמאָלט קראָם זייַן צוריקקומען ווערט. עס ס דער רעזולטאַט פון זייַן מי אין עפּעס. און וואָס איז די בויען אין פּראָגראַממינג, צי אין קראַצן אָדער איצט C, וואָס מיר קענען נוצן צו אַקטשאַוואַלי קראָם עפּעס? קאָלד עס אַ בייַטעוודיק, רעכט? און אין קראַצן, מיר טאָן ניט טאַקע זאָרג וואָס איז געגאנגען אין וועריאַבאַלז. אבער אין דעם פאַל, מיר אַקשלי טאָן. איך בין געגאנגען צו זאָגן שטריקל. און דעמאָלט איך קען רופן דעם עפּעס איך ווילן. איך בין געגאנגען צו רופן עס נאָמען, געץ באַקומען שטריקל. און איצט אַפֿילו אויב איר 'רע אַ ביסל נייַ צו דעם, באַמערקן אַז איך בין פעלנדיק עטלעכע דעטאַל. איך בין פאָרגעטטינג אַ האַלב-צווייפּינטל. איך דאַרפֿן צו ענדיקן דעם געדאַנק. אַזוי איך בין געגאנגען צו מאַך מיין לויפֿער, און שלאָגן האַלב-צווייפּינטל עס. און וואָס האָב איך נאָר געטאן? אין דעם שורה פון קאָד, נומער 5 אין דעם מאָמענט, איך בין פאַך באַקומען שטריקל מיט קיין ינפּוץ. אַזוי דאָרט ס קיין קליין ווייַס קעסטל ווי די היט בלאָק האט. איך בין נאָר געזאגט, היי, קאָמפּיוטער, באַקומען מיר אַ שטריקל. די גלייַך צייכן איז ניט טאַקע אַ גלייַך צייכן, פּער סיי. עס ס די אַסיינמאַנט אָפּעראַטאָר, וואָס מיטל, היי, קאָמפּיוטער, מאַך די ווערט פון די רעכט איבער צו די לינקס. און אין די לינקס, איך האָבן די ווייַטערדיק. היי, קאָמפּיוטער, געבן מיר אַ סטרינג-- אַ סיקוואַנס פון אותיות. און רופן אַז שטריקל נאָמען. און איך טאָן ניט אַפֿילו האָבן צו רופן עס נאָמען. איך קען רופן עס, קאַנווענשאַנאַלי, עפּעס ווי ד, פיל ווי מיר געוויינט איך צו רופן די בייַטעוודיק איך. אבער איצט איך דאַרפֿן צו טאָן עפּעס מיט אים. עס וואָלט זיין שיין נאַריש צו פּרובירן קאַמפּיילינג דעם קאָד, פליסנדיק דעם פּראָגראַם, אַפֿילו כאָטש איך בין געטינג אַ שטריקל, ווייַל עס ס 'נאָך נאָר געגאנגען צו זאָגן העלא וועלט. אבער וואָס אויב איך טאָן ווילן צו טוישן דעם. וואָס טאָן ניט איך טאָן דעם? פּראָצענט ס, קאָמע ס. און דעם איז אַ קליין קריפּטיק נאָך. אַזוי לאָזן מיר מאַכן מיין וועריאַבאַלז מער קלאָר. זאל מיר נאָמען דעם בייַטעוודיק נאָמען. און לאָזן ס זען אויב מיר קענען נישט רייצנ זיך באַזונדער וואָס ס געשעעניש דאָ. אזוי אויף שורה פינף, איך בין געטינג אַ שטריקל. און איך בין סטאָרינג אַז שטריקל, וועלכער דער באַניצער האט טייפּט אין אין זיין אָדער איר קלאַוויאַטור, אין אַ בייַטעוודיק געהייסן נאָמען. און עס טורנס אויס אַז פּרינטף טוט נישט נאָר נעמען איין אַרגומענט אין טאָפּל ציטירט, איין ינפּוט אין טאָפּל ציטירט. עס קענען נעמען צוויי, אָדער דרייַ, אָדער מער, אַזאַ אַז דער רגע, אָדער דריט, אָדער פערט, זענען אַלע די נעמען פון וועריאַבאַלז, אָדער ספּעסיפיקאַללי וואַלועס, וואָס איר ווילן צו צאַפּן אין, דינאַמיקאַללי, אַז שטריקל אין קוואָטעס. אין אנדערע ווערטער, וואָס וואָלט זיין פאַלש מיט דעם? אויב איך נאָר געזאגט העלא נאָמען, באַקקסלאַש ן, געזונט מיין טעקע, קאָמפּילעד מיין קאָד, און געלאָפֿן דעם, וואָס וואָלט פּאַסירן? עס ס נאָר געגאנגען צו זאָגן, העלא נאָמען, ממש ען-א-ב E, וואָס איז מין פון נאַריש ווייַל עס ס ניט אַנדערש פון וועלט. אַזוי עפּעס אין ציטירט איז וואָס ממש געץ געדרוקט. אַזוי אויב איך ווילן צו האָבן אַ פּלאַסעהאָלדער דאָרט, איך אַקטשאַוואַלי דאַרפֿן צו נוצן עטלעכע ספּעציעל סינטאַקס. און עס טורנס אויס אויב איר לייענען די דאַקיומענטיישאַן פֿאַר די פּרינטף פונקציאָנירן, עס וועט דערציילן איר אַז אויב איר נוצן פּראָצענט ס, איר קענען פאַרטרעטער אַ ווערט ווי גייט. נאָך אַ קאָמע נאָך אַז טאָפּל ציטירן, איר נאָר שרייַבן די נאָמען פון די בייַטעוודיק אַז איר ווילן צו צאַפּן אין זיך אַז פֿאָרמאַט קאָד, אָדער פֿאָרמאַט ספּעסיפיער, פּראָצענט ס פֿאַר סטרינגס. און איצט אויב איך ווע ווערן מיין טעקע, איך גיין צוריק אַראָפּ צו מיין וואָקזאַל. און איך טיפּ מאַכן סטרינג, ווייַל, ווידער, די נאָמען פון דעם טעקע אַז איך אויסדערוויילט איידער איז סטרינג.ק. אַזוי איך בין געגאנגען צו זאָגן מאַכן סטרינג, אַרייַן. אָה מיין גוטסקייט, קוק אין אַלע פון די מיסטייקס מיר ווע געמאכט שוין. און דעם יס-- וואָס, דאָס איז טאַקע ווי אַ זעקס, זיבן שורה פּראָגראַם? אזוי דעם איז ווו עס קענען זייער געשווינד באַקומען אָוווערוועלמינג. דעם וואָקזאַל פֿענצטער האט איצט נאָר רעגורגיטאַטעד אַ ריזיק נומער פון טעות אַרטיקלען. שורלי, איך טאָן ניט האָבן מער טעות אַרטיקלען ווי איך האָבן שורות פון קאָד. אַזוי וואָס איז געגאנגען אויף? נו, דער בעסטער סטראַטעגיע צו טאָן עניטיים איר טאָן טרעפן אַ אָוווערוועלמינג רשימה פון ערראָרס ווי אַז, איז מעגילע צוריק, קוק פֿאַר די באַפֿעל איר נאָר געלאָפֿן, וואָס אין מיין פאַל איז מאַכן שטריקל. אָנקוקן וואָס מאַכן האט, און אַז ס וואָס לאַנג קלאַנג באַפֿעל, קיין גרויס האַנדלען עס. אבער די רויט איז שלעכט. גרין איז טריינג צו זיין מילד און נוציק. אבער עס ס נאָך שלעכט, אין דעם פאַל. אבער ווו איז עס שלעכט? סטרינג.ק, שורה פינף, כאַראַקטער פינף. אַזוי דאָס איז נאָר פּראָסט צוזאַמענפאָר. עפּעס צווייפּינטל עפּעס מיטל שורה נומער און כאַראַקטער נומער. טעות, נוצן פון ונדעקלאַרעד identifier שטריקל. האט איר מיינען נאָרמאַל אין? אַזוי, ליידער, קלאַנג איז טריינג צו זייַן נוציק. אבער עס ס אומרעכט, אין דעם פאַל. ניין, קלאַנג, איך האט ניט מיינען נאָרמאַל יאָ. איך מענט אַז אויף שורה איינער, יאָ. אבער שורה פינף איז דאָס איינער דאָ. און קלאַנג טוט ניט פֿאַרשטיין ז-ג-ר-איך-ען-ג. עס ס אַ ונדעקלאַרעד identifier, אַ וואָרט עס נאָר האט קיינמאָל געזען פריער. און אַז ס ווייַל C, די שפּראַך מיר ניטאָ שרייבן קאָד אין רעכט איצט, טוט ניט האָבן וועריאַבאַלז גערופֿן סטרינגס. עס טוט נישט, דורך ניט ויסצאָלן, שטיצן עפּעס גערופֿן אַ שטריקל. אַז ס אַ קס50 שטיק פון זשאַרגאָן, אָבער זייער קאַנווענשאַנאַל. אבער איך קענען פאַרריכטן דעם ווי גייט. אויב איך לייגן איין שורה פון קאָד צו די שפּיץ פון דעם פּראָגראַם, אַרייַננעמען קס50.ה, וואָס איז אן אנדער טעקע ערגעץ ין פון קס50 ייד, ערגעץ אויף די שווער פאָר, אַזוי צו רעדן, פון די ובונטו אָפּערייטינג סיסטעם אַז איך בין פליסנדיק, אַז איז די טעקע אַז ס געגאנגען צו לערנען די אַפּערייטינג סיסטעם וואָס אַ שטריקל איז, נאָר ווי נאָרמאַל יאָ.ה איז די טעקע אין די אָפּערייטינג סיסטעם אַז ס געגאנגען צו לערנען עס וואָס פּרינטף איז. טאקע, מיר וואָלט האָבן גאַטאַן אַ זייער ענלעך אָנזאָג אויב יאָ האט אַדמיטאַד נאָרמאַל יאָ.ה און פּרובירן צו נוצן פּרינטף. אַזוי איך בין געגאנגען צו גיין פאָרויס און נאָר נעמען קאָנטראָל ל צו קלאָר מיין עקראַן. אָדער איר קענען דרוקן קלאָר און עס וועט נאָר קלאָר די וואָקזאַל פֿענצטער. אָבער איר קענען נאָך מעגילע צוריק אין מאָל. און איך בין געגאנגען צו ריראַן מאַכן סטרינג. קראָס מיין Fingers דאָס מאָל, קומען. אָה מיין גאָט, עס געארבעט. עס ווייזט מיר אַ לאַנג קריפּטיק באַפֿעל אַז איז וואָס מאַכן דזשענערייטאַד דורך קלאַנג, אָבער קיין טעות אַרטיקלען. אַזוי פאַרשטיין, אַפֿילו כאָטש איר זאל באַקומען גאָר אָוווערכוועלמד מיט די נומער פון טעות אַרטיקלען, עס נאָר זאל זייַן דעם אַנויינג קאַסקיידינג ווירקונג, ווו קלאַנג טוט נישט פֿאַרשטיין איין זאַך, וואָס מיטל עס דעמאָלט טוט נישט פֿאַרשטיין די ווייַטער וואָרט, אָדער די ווייַטער שורה. און אַזוי עס איז נאָר טשאָקעס אויף אייער קאָד. אבער די פאַרריכטן זאל זיין פּשוט. און אַזוי שטענדיק פאָקוס אויף דער זייער ערשטער שורה פון רעזולטאַט. און אויב איר טאָן ניט פֿאַרשטיין עס, נאָר קוק פֿאַר טערמינען אַז זאל זיין קלוז, און די שורה נומער, און די כאַראַקטער, ווו אַז גרייַז זאל זיין. איצט לאָזן מיר גיין פאָרויס און טיפּ פּינטעלע צעהאַקן, שטריקל, אַרייַן. הם, עס ס ניט אַזוי צו זאָגן: העלא עפּעס. וואָס? נו, צוריקרופן, ווו איז עס פליסנדיק? עס ס מיסטאָמע סטאַק אין די מאָמענט אין אַ שלייף, אויב איר וועט, אויף שורה זעקס, ווייַל באַקומען שטריקל דורך פּלאַן, געשריבן דורך קס50 שטעקן, איז ממש מענט צו נאָר זיצן דאָרט ווארטן, און ווארטן, און ווארטן פֿאַר אַ שטריקל. כל מיר מיינען דורך שטריקל איז מענטשלעך ינפּוט. אַזוי איר וויסן וואָס? זאל מיר גיין פאָרויס. און נאָר אויף אַ קאַפּריז, לאָזן מיר טיפּ מיין נאָמען, דוד, אַרייַן. איצט איך האָבן אַ מער דינאַמיש פּראָגראַם. עס האט, העלא דוד. אויב איך גיין פאָרויס און לויפן דעם ווידער, לאָזן מיר פּרובירן זאָגן זאַמילאַ נאָמען, אַרייַן. און איצט מיר האָבן אַ דינאַמיש פּראָגראַם. איך האב נישט שווער קאָדעד וועלט. איך האב נישט שווער קאָדעד נאָמען, אָדער דוד, אָדער זאַמילאַ. איצט עס ס פיל מער ווי די מגילה מיר וויסן, ווו אויב עס נעמען ינפּוט, עס טראגט אַ ביסל אַנדערש רעזולטאַט. איצט, דעם איז ניט דער בעסטער באַניצער דערפאַרונג, אָדער וקס. איך לויפן דעם פּראָגראַם. איך טאָן ניט וויסן וואָס איך בין געמיינט צו טאָן, סייַדן איך אַקטשאַוואַלי קוקן בייַ אָדער געדענקען די מקור קאָד. אזוי לאָזן ס מאַכן די באַניצער דערפאַרונג אַ ביסל בעסער מיט די סימפּלאַסט פון זאכן. זאל מיר גיין צוריק אין דעם פּראָגראַם, און נאָר זאָגן פּרינטף. און לאָזן מיר גיין פאָרויס און זאָגן נאָמען, צווייפּינטל, און אַ פּלאַץ, און דעמאָלט אַ האַלב-צווייפּינטל. און נאָר פֿאַר קיקס, קיין באַקלאַש ן. און אַז ס דיליבראַט, ווייַל איך טאָן נישט וועלן די פּינטלעך צו באַוועגן צו דער ווייַטער שורה. איך ווילן צו, אַנשטאָט, טאָן דאָס, מאַכן שטריקל צו רעקאָמפּילע מיין קאָד אין נייַ מאַשין קאָד פּינטעלע צעהאַקן שטריקל. אַה, דאָס איז פיל פּריטיער. איצט איך אַקטשאַוואַלי וויסן וואָס די קאָמפּיוטער וויל מיר צו טאָן, געבן עס אַ נאָמען. אַזוי איך בין געגאנגען צו גיין פאָרויס און טיפּ אין ראָב, אַרייַן, און העלא, ראָב. אַזוי, פאַרשטיין, דאָס איז נאָך, אין די סוף פון דעם טאָג, נאָר אַ נייַן שורה פּראָגראַם. אבער מיר ווע גענומען די בעיבי טריט. מיר געשריבן איין שורה מיט וואָס מיר זענען באַקאַנט, פּרינטף, העלא וועלט. דעמאָלט מיר ונדיד אַ קליין ביסל פון אַז. און מיר אַקטשאַוואַלי געניצט באַקומען שטריקל. און מיר טאָסט אַז ווערט אין אַ בייַטעוודיק. און דעמאָלט מיר געגאנגען פאָרויס און ימפּרוווד עס ווייַטער מיט אַ דריט ליניע. און דעם יטעראַטיווע פּראָצעס פון שרייבן ווייכווארג איז באמת שליסל. אין קס50, און אין לעבן אין אַלגעמיין, איר זאָל בכלל ניט זיצן אַראָפּ, האָבן אַ פּראָגראַם אין גייַסט, און פּרובירן שרייבן די גאנצע פאַרשילטן זאַך אַלע אין אַמאָל. עס וועט, ינעוואַטאַבלי, רעזולטאַט אין וועג מער ערראָרס ווי מיר זיך געזען דאָ. אַפֿילו איך, צו דעם טאָג, קעסיידער מאַכן אנדערע נאַריש מיסטייקס, זענען אַקטשאַוואַלי האַרדער מיסטייקס וואָס זענען האַרדער צו רעכענען אויס. אבער איר וועט מאַכן מער מיסטייקס די מער שורות פון קאָד איר שרייַבן אַלע אין אַמאָל. און אַזוי דעם פירונג פון, שרייַבן אַ קליין ביסל פון קאָד אַז איר ניטאָ באַקוועם מיט, צונויפנעמען עס, לויפן עס, פּרובירן עס מער בכלל, דעריבער מאַך אָנ-- אַזוי נאָר ווי מיר געהאלטן לייערינג און לייערינג לעצטע וואָך, בנין פון עפּעס זייער פּשוט צו עפּעס מער קאָמפּליצירט, טאָן די זעלבע דאָ. דו זאלסט נישט זיצן אַראָפּ, און פּרובירן צו שרייַבן אַ גאנצע פּראָבלעם. אַקטואַללי נעמען די בעיבי טריט. איצט, סטרינגס זענען נישט אַלע וואָס נוצלעך צו זיך. מיר'ד אַקטשאַוואַלי, יידילי, ווי צו האָבן עפּעס אַנדערש אין אונדזער טאָאָלקיט. אזוי לאָזן 'ס אַקטשאַוואַלי טאָן פּונקט וואָס. זאל מיר גיין פאָרויס איצט און בייַטש אַרויף אַ ביסל אַנדערש פּראָגראַם. און מיר וועט רופן דעם ינט.ק, פֿאַר ינטאַדזשער. איך בין געגאנגען צו, סימילאַרלי, אַרייַננעמען קס550.ה. איך בין געגאנגען צו אַרייַננעמען נאָרמאַל יאָ. און אַז ס 'געגאנגען צו זייַן שיין פּראָסט אין די ערשטער ביסל טעג פון דער קלאַס. און איך בין געגאנגען צו גרייט זיך מיט אַ הויפּט פֿונקציע. און איצט אָנשטאָט פון געטינג אַ שטריקל, לאָזן ס גיין פאָרויס און באַקומען אַ ינט. זאל ס רופן עס איך, און רופן עס באַקומען ינט, נאָענט פּאַרענס, האַלב-צווייפּינטל. און איצט לאָזן ס טאָן עפּעס מיט אים, פּרינטף. זאל ס זאָגן עפּעס ווי העלא, באַקקסלאַש ן, קאָמע איך. אזוי איך בין שיין פיל מימיקינג וואָס איך האבן נאָר אַ מאָמענט צוריק. איך האָבן אַ פּלאַסעהאָלדער דאָ. איך האָבן קאָמע איך דאָ, ווייַל איך ווילן צו צאַפּן איך זיך אַז פּלאַסעהאָלדער. אַזוי לאָזן ס גיין פאָרויס און פּרובירן קאַמפּיילינג דעם פּראָגראַם. דער טעקע איז געהייסן ינט.ק. אַזוי איך בין געגאנגען צו זאָגן, מאַכן ינט, אַרייַן. אָה מיין גאָט, אָבער קיין גרויס האַנדלען, רעכט? עס ס אַ גרייַז. עס ס אַ סינטאַקטיק גרייַז דאָ אַזאַ אַז די פּראָגראַם קענען ניט זייַן קאָמפּילעד ין ינט.ק, שורה זיבן, כאַראַקטער 27, טעות פֿאָרמאַט ספּעסיפיעס טיפּ טשאַר שטערן, וועלכער אַז איז. אבער דער אַרגומענט טיפּ איז ינט. אַזוי דאָ, אויך, מיר ניטאָ ניט געגאנגען טאָ-- אַפֿילו כאָטש הייַנט איז אַ פּלאַץ פון מאַטעריאַל, מיר רע געגאנגען צו אָוווערוועלם איר מיט לעגאַמרע יעדער שטריך פון C, און פּראָגראַממינג מער בכלל, אין נאָר די ערשטער ביסל וואָכן. אַזוי עס ס אָפֿט געגאנגען צו זיין זשאַרגאָן מיט וואָס איר ניטאָ ניט באַקאַנט. און, אין פאַקט, טשאַר שטערן איז עפּעס מיר רע געגאנגען צו קומען צוריק צו אין אַ וואָך אָדער צוויי ס מאָל. אבער פֿאַר איצט, לאָזן ס זען אויב מיר קענען פּאַרס ווערטער וואָס זענען באַקאַנט. פאָרמאַצ-- אַזוי מיר געהערט פֿאָרמאַט ספּעסיפיער, פֿאָרמאַט קאָד איידער. אַז ס 'באַקאַנט. טיפּע-- אָבער דעם אַרגומענט האט טיפּ ינט. וואַרטן אַ מינוט, איך איז אַ ינט. אפֿשר פּראָצענט ס אַקטשאַוואַלי האט עטלעכע Defined טייַטש. און, טאַקע, עס טוט. אַ ינטאַדזשער, אויב איר ווילן פּרינטף צו פאַרבייַטן עס, איר אַקטשאַוואַלי האָבן צו נוצן אַ אַנדערש פֿאָרמאַט ספּעסיפיער. און איר וואָלט ניט וויסן דעם סייַדן עמעצער דערציילט איר, אָדער איר האט געטאן עס איידער. אבער פּראָצענט איך איז וואָס קענען זייַן קאַמאַנלי געניצט אין פּרינטף פֿאַר פּלאַגינג אין אַ ינטאַדזשער. איר קענען אויך נוצן פּראָצענט ד פֿאַר אַ דעצימאַל ינטעגער. אבער איך איז פייַן און פּשוט דאָ. אַזוי מיר וועט גיין מיט וואָס. איצט לאָזן מיר גיין פאָרויס און ריראַן מאַכן ינט, קומען. אַז ס גוט, קיין ערראָרס. פּונקט צעהאַקן ינט-- גוט, שלעכט באַניצער דערפאַרונג, ווייַל איך האב נישט דערציילט זיך וואָס צו טאָן. אבער אַז ס 'פייַן. איך בין קאַטשינג אויף געשווינד. און איצט לאָזן מיר גיין פאָרויס און טיפּ אין דוד, גוט, זאַמילאַ, באַגאַזלענען. גוט, אַזוי דאָס איז אַ גוט זאַך. דאס מאָל, איך בין ניצן אַ פֿונקציע, אַ רעטעניש שטיק, גערופֿן באַקומען ינט. און עס טורנס אָוט-- און מיר וועט זען דעם שפּעטער אין די טערמ-- די קס50 שטעקן האט ימפּלאַמענטאַד באַקומען שטריקל אין אַזאַ אַ וועג אַז עס וועט נאָר פֿיזיש באַקומען אַ שטריקל פֿאַר איר. עס האט ימפּלאַמענטאַד באַקומען ינט אין אַזאַ אַ וועג אַז עס וועט נאָר באַקומען אַ ינטאַדזשער פֿאַר איר. און אויב איר, די מענטשלעך, דו זאלסט נישט קאָואַפּערייט, עס ס ממש נאָר געגאנגען צו זאָגן ריטריי, ריטריי, ריטריי, ממש זיצן דאָרט לופּינג, ביז איר פאַרפליכטן מיט עטלעכע מאַדזשיקאַל נומער, ווי 50, און העלא 50. אָדער אויב מיר לויפן דעם ווידער און דרוקן אין 42, העלא 42. און אַזוי די באַקומען ינט פֿונקציע ין פון וואָס רעטעניש שטיק איז גענוג לאָגיק, גענוג געדאַנק, צו רעכענען אויס, וואָס איז אַ וואָרט? און וואָס איז אַ נומער? בלויז אַקסעפּטינג, לעסאָף, נומערן. אַזוי עס טורנס אויס אַז דעם איז ניט אַלע אַז יקספּרעסיוו. ביזדערווייל. אַזוי, ייי, לעצט מאָל מיר געגאנגען שיין געשווינד אין ימפּלאַמענטינג גאַמעס, און אַנאַמיישאַן, און קינסט אַרבעט אין קראַצן. און דאָ, מיר זענען ווייל צופרידן מיט העלא וועלט, און העלא 50. עס ס ניט אַלע אַז ינספּייערינג. און, טאַקע, די ערשטער ווייניק יגזאַמפּאַלז וועט נעמען עטלעכע מאָל צו ראַמפּע אַרויף אין יקסייטמאַנט. אבער מיר האָבן אַזוי פיל מער קאָנטראָל איצט, אין פאַקט. און מיר רע געגאנגען צו זייער געשווינד אָנהייבן לייערינג אויף שפּיץ פון די גרונט פּרימיטיוועס. אבער ערשטער, לאָזן ס פֿאַרשטיין וואָס די לימיטיישאַנז זענען. אין פאַקט, איינער פון די זאכן קראַצן טוט נישט לייכט לאָזן אונדז טאָן איז טאַקע קוקן ונטער דער קאַפּטער, און פֿאַרשטיין וואָס אַ קאָמפּיוטער איז, וואָס עס קענען טאָן, און וואָס זייַן לימיטיישאַנז זענען. און, טאַקע, אַז מאַנגל פון שכל, פּאַטענטשאַלי, לאַנג-טערמין קענען פירן צו אונדזער אייגן מיסטאַקעס-- שרייבן באַגז, שרייבן ינסאַקיער ווייכווארג אַז געץ כאַקט אין עטלעכע וועג. אַזוי לאָזן ס נעמען עטלעכע טריט צו שכל דעם אַ ביסל בעסער דורך וועג פון, זאָגן, די ווייַטערדיק משל. איך בין געגאנגען צו גיין פאָרויס און מאַכשער פאַקטיש שנעל אַ פּראָגראַם געהייסן אַדער. ווי, לאָזן ס שטעלן עטלעכע נומערן צוזאַמען. און איך בין געגאנגען צו קאָד עטלעכע עקן דאָ, און נאָר נאָכמאַכן און פּאַפּ ווו איך איז געווען איידער, נאָר אַזוי מיר קענען באַקומען געגאנגען גיכער. אַזוי איצט איך ווע גאַט די גרונט ביגינינגז פון אַ פּראָגראַם געהייסן אַדער. און לאָזן ס גיין פאָרויס און טאָן דעם. איך בין געגאנגען צו גיין פאָרויס און זאָגן, ינטקס געץ באַקומען ינט. און איר וויסן וואָס? זאל ס מאַכן אַ בעסער באַניצער דערפאַרונג. אזוי לאָזן 'ס נאָר זאָגן X איז, און Effectively פּינטלעך דער באַניצער צו געבן אונדז רענטגענ. און דעריבער לאָזן מיר גיין פאָרויס און זאָגן, פּרינטף ווי וועגן י איז, דאָס מאָל יקספּעקטינג צוויי וואַלועס פון די באַניצער. און דעריבער לאָזן ס נאָר גיין פאָרויס און זאָגן, פּרינטף, די סאַכאַקל פון רענטגענ און י איז. און איצט איך טאָן ניט ווילן צו טאָן פּראָצענט ס. איך ווילן צו טאָן פּראָצענט איך, באַקקסלאַש ן, און דעמאָלט צאַפּן אין סאַכאַקל ווערט. אַזוי ווי קענען איך גיין וועגן טאן דעם? ווייסט וואס? איך וויסן ווי צו נוצן וועריאַבאַלז. זאל מיר נאָר דערקלערן אַ נייַ איינער, ינט ז. און איך בין געגאנגען צו נעמען אַ טרעפן דאָ. אויב עס זענען גלייַך וואונדער אין דעם שפּראַך, אפֿשר איך קענען נאָר טאָן רענטגענ פּלוס י, אַזוי לאַנג ווי איך סוף מיין געדאַנק מיט אַ האַלב-צווייפּינטל? איצט איך קענען גיין צוריק אַראָפּ דאָ, צאַפּן אין ז, ענדיקן דעם געדאַנק מיט אַ האַלב-צווייפּינטל. און לאָזן ס זען איצט, אויב די סיקוואַנסיז פון לינעס-- רענטגענ איז באַקומען ינט. י איז באַקומען ינט. לייג צו רענטגענ און י, קראָם די ווערט אין ז-- אַזוי, ווידער, געדענקען די גלייַך צייכן איז ניט גלייַך. עס ס אַסיינמאַנט פון רעכט צו לינקס. און לאָזן ס דרוקן אויס אַז די סאַכאַקל פון רענטגענ און י איז נישט ממש ז, אָבער וואָס ס 'ין פון ז. אזוי לאָזן ס מאַכן אַדער - פייַן, קיין מיסטייקס דעם מאָל. פּונקט צעהאַקן אַדער, אַרייַן, רענטגענ איז געגאנגען צו זיין 1. י איז געגאנגען צו זיין 2. און די סאַכאַקל פון רענטגענ און י איז 3. אַזוי אַז ס אַלע פייַן און גוט. אַזוי איר וואָלט ימאַדזשאַן אַז מאַט זאָל אַרבעטן אין אַ פּראָגראַם ווי דעם. אבער איר וויסן וואָס? איז דאָס בייַטעוודיק, שורה 12, אַפֿילו נייטיק? איר טאָן ניט דאַרפֿן צו באַקומען אין די מידע פון נאָר סטאָרינג זאכן אין וועריאַבאַלז נאָר ווייַל איר קענען. און, אין פאַקט, עס ס בכלל געהאלטן שלעכט פּלאַן אויב איר זענען קריייטינג אַ בייַטעוודיק, גערופֿן ז אין דעם פאַל, סטאָרינג עפּעס אין עס, און דעמאָלט מיד ניצן עס, אָבער קיינמאָל ווידער. וואָס געבן עפּעס אַ נאָמען ווי ז אויב איר 'רע ממש געגאנגען צו נוצן אַז זאַך נאָר אַמאָל, און אַזוי פּראַקסאַמאַל צו ווו איר Created עס אין דער ערשטער אָרט, אַזוי נאָענט אין טערמינען פון שורות פון קאָד? אַזוי איר וויסן וואָס? עס טורנס אויס אַז C איז שיין Flexible. אויב איך אַקטשאַוואַלי ווילן צו צאַפּן-אין וואַלועס דאָ, איך טאָן ניט דאַרפֿן צו דערקלערן אַ נייַ בייַטעוודיק. איך קען נאָר צאַפּן-אין רענטגענ פּלוס וויי, ווייַל C ונדערסטאַנדס אַריטמעטיק, און מאַטאַמאַטיקאַל אָפּערייטערז. אַזוי איך קענען נאָר זאָגן, טאָן דעם מאַט, רענטגענ פּלוס י, וועלכער יענע וואַלועס זענען, צאַפּן די ריזאַלטינג ינטעגער אין אַז שטריקל. אַזוי דעם זאל זיין, כאָטש בלויז איין שורה קירצער, אַ בעסער פּלאַן, אַ בעסער פּראָגראַם, ווייַל עס ס ווייניקער קאָד, דעריבער ווייניקער פֿאַר מיר צו פֿאַרשטיין. און עס ס אויך נאָר קלינער, ינסאָפאַר ווי מיר ניטאָ ניט ינטראָודוסינג נייַ ווערטער, נייַ סימבאָלס, ווי ז, אַפֿילו כאָטש זיי טאָן ניט טאַקע דינען פיל פון אַ צוועק. צום באַדויערן, מאַט איז נישט אַלע אַז פאַרלאָזלעך מאל. זאל ס גיין פאָרויס און טאָן דעם. איך בין געגאנגען צו גיין פאָרויס איצט און טאָן די ווייַטערדיק. זאל ס טאָן פּרינטף, פּראָצענט איך, פּלוס פּראָצענט איך, וועט זיין פּראָצענט איך, באַקקסלאַש ן. און איך בין געגאנגען צו טאָן טהיס-- קסיקס פּלוס י. אזוי איך בין נאָר געגאנגען צו רירייט דעם אַ ביסל אנדערש דאָ. זאל מיר נאָר טאָן אַ שנעל מייושעוודיקייַט טשעק. ווידער, לאָזן ס ניט באַקומען פאָרויס פון זיך. מאַכן אַדער, פּונקט צעהאַקן אַדער. רענטגענ איז 1, י איז 2, 1 פּלוס 2 איז 3. אַזוי אַז ס גוט. אבער לאָזן ס קאָמפּליצירן דעם איצט אַ ביסל, און שאַפֿן אַ נייַ טעקע. איך בין געגאנגען צו רופן דעם איין, זאָגן, ינץ, מערצאָל פֿאַר ינטאַדזשערז. זאל מיר אָנהייבן ווו איך איז געווען אַ מאָמענט צוריק. אבער איצט לאָזן ס טאָן אַ ביסל אנדערע שורות. זאל מיר גיין פאָרויס און טאָן די ווייַטערדיק, פּרינטף, פּראָצענט איך, מינוס פּראָצענט איך, איז פּראָצענט איך, קאָמע רענטגענ, קאָמע יקס מינוס י. אַזוי איך בין טאן אַ ביסל פאַרשידענע מאַט דאָרט. זאל ס טאָן אן אנדער איינער. אזוי פּראָצענט איך מאל פּראָצענט איך איז פּראָצענט איך, באַקקסלאַש ן. זאל ס צאַפּן-אין רענטגענ, און וויי, און רענטגענ מאל י. מיר וועט נוצן די אַסטעריסק אויף דיין קאָמפּיוטער פֿאַר מאל. איר טאָן ניט נוצן רענטגענ. רענטגענ איז אַ בייַטעוודיק נאָמען דאָ. איר נוצן די שטערן פֿאַר קייפל. זאל ס טאָן איינער מער. פּרינטף פּראָצענט איך, צעטיילט דורך פּראָצענט איך, איז פּראָצענט איך, באַקקסלאַש ן. קסי צעטיילט דורך י-- אַזוי איר נוצן די פאָרויס צעהאַקן אין C צו טאָן אָפּטייל. און לאָזן ס טאָן איינער אנדערע. רעשט פון פּראָצענט איך, צעטיילט דורך פּראָצענט איך, איז פּראָצענט איך. קסי-- און איצט רעשט איז וואָס ס לינקס איבער. ווען איר פּרובירן דיוויידינג אַ דענאָמינאַטאָר זיך אַ נומעראַטאָר, ווי פיל איז לינקס איבער אַז איר קען נישט צעטיילן אויס? אַזוי עס איז ניט טאַקע, דאַווקע, אַ סימבאָל מיר ווע געניצט אין מיינונג שולע פֿאַר דעם. אבער עס אין סי איר קענען זאָגן רענטגענ מאָדולאָ י, ווו דעם פּראָצענט צייכן אין דעם קאָנטעקסט-- קאָנפוסינגלי ווען איר ניטאָ ין פון די טאָפּל קוואָטעס, ין פון פּרינטף, פּראָצענט איז געניצט ווי די פֿאָרמאַט ספּעסיפיער. ווען איר נוצן פּראָצענט אַרויס פון אַז אין אַ מאַטאַמאַטיקאַל אויסדרוק, עס ס די מאָדולאָ אָפּעראַטאָר פֿאַר מאַדזשאַלער אַריטהמעטיק-- פֿאַר אונדזער צוועקן דאָ, נאָר מיטל, וואָס איז די רעשט פון X צעטיילט דורך י? אַזוי רענטגענ צעטיילט דורך י איז רענטגענ צעהאַקן י. וואָס ס די רעשט פון X צעטיילט דורך י? עס ס רענטגענ מאָד וויי, ווי אַ פּראָגראַמיסט וואָלט זאָגן. אַזוי אויב איך האט ניט געמאכט קיין מיסטייקס דאָ, לאָזן מיר גיין פאָרויס און מאַכן ינץ, מערצאָל, פייַן, און פּונקט צעהאַקן ינץ. און לאָזן ס גיין פאָרויס און טאָן, לאָזן ס זאָגן, 1, 10. אַלע רעכט, 1 פּלוס 10 איז 11, טשעק. 1 מינוס 10 איז נעגאַטיוו 9, טשעק. 1 מאל 10 איז 10, טשעק. 1 צעטיילט דורך 10 יס-- גוט, מיר וועט האָפּקען אַז איינער. רעשט פון 1 צעטיילט דורך 10 איז 1. אַז ס ריכטיק. אבער עס ס אַ זשוק אין דאָ. אזוי די איין איך שטעלן מיין האַנט איבער, ניט ריכטיק. איך מיינען, עס ס נאָענט צו 0. 1 צעטיילט דורך 10, איר וויסן, אויב מיר 'רע קאַטינג עטלעכע עקן, זיכער, עס ס נול. אבער עס זאָל טאַקע זייַן 1/10, 0.1, אָדער 0.10, 0.1000, אָדער אַזוי אַרויס. עס זאָל ניט טאַקע זיין נול. נו, עס טורנס אויס אַז די קאָמפּיוטער איז טאן ממש וואָס מיר דערציילט עס צו טאָן. מיר זענען טאן מאַט ווי רענטגענ צעטיילט דורך י. און ביידע רענטגענ און י, פּער די שורות פון קאָד פריער, זענען ינטאַדזשערז. דערצו, אויף שורה 15, מיר זענען טעלינג פּרינטף, היי, פּרינטף צאַפּן-אין אַ ינטאַדזשער, צאַפּן-אין אַ ינטאַדזשער, צאַפּן-אין אַ ינטעגער-- ספּעסיפיקאַללי רענטגענ, און דעמאָלט י, און דעמאָלט רענטגענ צעטיילט דורך י. רענטגענ און י ביסט ינץ. מיר 'רע גוט דאָרט. אבער וואָס איז רענטגענ צעטיילט דורך רענטגענ? רענטגענ צעטיילט דורך י זאָל זיין, מאַטאַמאַטיקלי, 1/10, אָדער 0.1, וואָס איז אַ פאַקטיש נומער, אַ פאַקטיש נומער ווייל, פּאַטענטשאַלי, אַ דעצימאַל פונט. עס ס נישט אַ ינטאַדזשער. אבער וואָס איז די קלאָוסאַסט ינטעגער צו 1/10, אָדער 0.1? יאָ, עס מין פון איז נול. 0.1 איז ווי דעם פיל. און 1 איז דעם פיל. אזוי 1/10 איז נעענטער צו 0 ווי עס איז צו איינער. און אַזוי וואָס C איז טאן פֿאַר וס-- מין פון ווייַל מיר דערציילט עס טאָ-- איז טרונקאַטינג אַז ינטעגער. עס ס גענומען די ווערט, וואָס ווידער איז געמיינט צו זיין עפּעס ווי 0.1000, 0 און אַזוי אַרויס. און עס ס 'טרונקאַטינג אַלץ נאָך די דעצימאַל פונט אַזוי אַז אַלע פון ​​דעם שטאָפּן, ווייַל עס טוט נישט פּאַסיק אין די ייַנפאַל פון אַ ינטאַדזשער, וואָס איז נאָר אַ נומער ווי נעגאַטיוו 1, 0, 1, אַרויף און אַראָפּ, עס טראָוז אַוועק אַלץ נאָך די דעצימאַל פונט ווייַל איר קענען ניט פּאַסיק אַ דעצימאַל פונט אין אַ ינטאַדזשער דורך דעפֿיניציע. אזוי די ענטפֿערן דאָ איז נול. אזוי ווי טאָן מיר פאַרריכטן דעם? מיר דאַרפֿן אן אנדער לייזונג אַלע צוזאַמען. און מיר קענען טאָן דעם, ווי גייט. זאל מיר גיין פאָרויס און שאַפֿן אַ נייַ טעקע, דעם איינער גערופֿן פלאָאַצ.ק. און ראַטעווען עס דאָ אין די זעלביקער דירעקטארי פלאָאַט.ק. און לאָזן מיר גיין פאָרויס און צייכענען עטלעכע פון ​​אַז קאָד פון פריער. אבער אַנשטאָט פון געטינג אַ ינט, לאָזן ס טאָן דעם. געבן מיר אַ Floating פונט ווערט גערופֿן רענטגענ. ווו אַ Floating פונט ווערט איז נאָר ממש עפּעס מיט אַ Floating פונט. עס קענען מאַך צו די לינקס, צו די רעכט. עס ס אַ פאַקטיש נומער. און לאָזן מיר רופן ניט באַקומען ינט, אָבער באַקומען לאָזנ שווימען, וואָס אויך איז געווען צווישן די מעניו פון אָפּציעס אין די ק250 ביבליאָטעק. זאל ס טוישן וויי צו אַ לאָזנ שווימען. אַזוי דעם ווערט באַקומען לאָזנ שווימען. און איצט, מיר טאָן ניט ווילן צו צאַפּן אין ינץ. עס טורנס אויס מיר האָבן צו נוצן פּראָצענט ו פֿאַר לאָזנ שווימען, פּראָצענט ו פֿאַר לאָזנ שווימען, און איצט ראַטעווען עס. און איצט, Fingers קראָסט, מאַכן פלאָאַץ, פייַן, פּונקט צעהאַקן פלאָאַץ. רענטגענ איז געגאנגען צו זיין איינער 1. י איז געגאנגען צו זיין 10 ווידער. און, פייַן, גוט מיין דערצו איז ריכטיק. איך איז געווען כאָופּינג פֿאַר מער, אָבער איך Forgot צו שרייַבן עס. אַזוי לאָזן ס גיין און פאַרריכטן דעם לאַדזשיקאַל טעות. זאל ס גיין פאָרויס און כאַפּן די ווייַטערדיק. מיר וועט נאָר טאָן אַ ביסל קאָפּיע און פּאַפּ. און איך בין געגאנגען צו זאָגן מינוס. און איך בין געגאנגען צו זאָגן מאל. און איך בין געגאנגען צו זאָגן צעטיילט. און איך בין נישט געגאנגען צו טאָן מאָדולאָ, וואָס איז ניט ווי גערמאַנע דאָ, צעטיילט דורך F, און מאל פּלוס-- גוט, לאָזן 'ס טאָן דעם ווידער. מאַכן פלאָאַץ, פּונקט צעהאַקן פלאָאַץ, און 1, 10, אַנד-- פייַן, ניט, קעשורע. אזוי איך בין אַ ידיאָט. אזוי דעם איז זייער פּראָסט אין קאָמפּיוטער וויסנשאַפֿט צו מאַכן נאַריש מיסטייקס ווי דעם. פֿאַר פּעדאַגאַדזשיקאַל צוועקן, וואָס איך טאַקע געוואלט צו טאָן איז טוישן די וויסנשאַפֿט דאָ צו פּלוס, צו מינוס, צו מאָל, און צו צעטיילן, ווי איר אַלעווייַ באמערקט בעשאַס דעם געניטונג. אַזוי איצט לאָזן ס שייַעך-צונויפנעמען דעם פּראָגראַם, טאָן פּונקט צעהאַקן פלאָאַץ. און פֿאַר די דריט מאָל, לאָזן 'ס זען אויב עס מיץ מיין עקספּעקטיישאַנז. 1, 10, אַרייַן, יאָ, גוט, 1.000, צעטיילט דורך 10.000, איז 0.100000. און עס טורנס אויס מיר קענען קאָנטראָלירן ווי פילע נומערן זענען נאָך יענע דעצימאַל ווייזט. מיר אַקשלי וועט. מיר וועט קומען צוריק צו וואָס. אבער איצט, אין פאַקט, די מאַט איז ריכטיק. אַזוי, ווידער, וואָס ס די טאַקעאַווייַ דאָ? עס טורנס אויס אַז אין C, עס זענען ניט נאָר פּונקט סטרינגס-- און, אין פאַקט, עס זענען ניט טאַקע, ווייַל מיר לייגן די מיט די קס50 ביבליאָטעק. אבער עס זענען נישט נאָר ינץ. עס זענען אויך פלאָאַץ. און עס טורנס אויס אַ בינטל פון אנדערע דאַטע טייפּס אויך, אַז מיר וועט נוצן איידער לאַנג. טורנס אויס אויב איר ווילן אַ איין כאַראַקטער, נישט אַ שטריקל פון אותיות, איר קענען נוצן נאָר אַ טשאַר. טורנס אויס אַז אויב איר ווילן אַ באָאָל, אַ באָאָלעאַן ווערט, אמת אָדער פאַלש נאָר, דאַנק צו די קס50 ביבליאָטעק, מיר ווע צוגעגעבן צו C די באָאָל דאַטן טיפּ ווי געזונט. אבער עס ס אויך פאָרשטעלן אין פילע אנדערע שפּראַכן ווי גוט. און עס טורנס אויס אַז מאל איר דאַרפֿן ביגער נומערן דעמאָלט קומען דורך ניט ויסצאָלן מיט ינץ און פלאָאַץ. און, אין פאַקט, אַ טאָפּל איז אַ נומער אַז ניצט נישט 32 ​​ביטן, אָבער 64 ביטן. און אַ לאַנג לאַנג איז אַ נומער וואָס ניצט ניט 32, ביטן אָבער 64 ביטן, ריספּעקטיוולי, פֿאַר Floating פונט וואַלועס און ינטאַדזשערז, ריספּעקטיוולי. אזוי לאָזן 'ס אַקטשאַוואַלי איצט זען דעם אין קאַמף. איך בין געגאנגען צו גיין פאָרויס דאָ און בייַטש אַרויף איינער אנדערע פּראָגראַם. דאָ, איך בין געגאנגען צו גיין פאָרויס און טאָן אַרייַננעמען קס50.ה. און לאָזן מיר גיין, אַרייַננעמען נאָרמאַל יאָ.ה. און איר וועט באַמערקן עפּעס Funky איז געשעעניש דאָ. עס ס ניט קאָליר קאָודינג זאכן אין די זעלבע וועג ווי עס האט איידער. און עס טורנס אויס, אַז ס ווייַל איך האָבן ניט געגעבן די זאַך אַ טעקע נאָמען. איך בין געגאנגען צו רופן דעם איין סיזעאָפ.ק, און שלאָגן היט. און באַמערקן וואָס כאַפּאַנז צו מיין זייער ווייַס קאָד קעגן אַז שוואַרץ באַקדראַפּ. איצט, בייַ מינדסטער דאָרט ס עטלעכע לילאַ אין עס. און עס איז סינטאַקס כיילייטיד. אַז ס ווייַל, גאַנץ נאָר, איך ווע דערציילט דער ייד וואָס טיפּ פון טעקע עס איז דורך געבן עס אַ נאָמען, און ספּעסיפיקאַללי אַ טעקע פאַרלענגערונג. איצט, לאָזן ס גיין פאָרויס און טאָן דעם. איך בין געגאנגען צו גיין פאָרויס און זייער נאָר דרוקן אויס די פאָללאָווינג-- באָאָל איז פּראָצענט לו. מיר וועט קומען צוריק צו אַז אין נאָר אַ מאָמענט. און דעמאָלט איך בין געגאנגען צו דרוק גרייס פון באָאָל. און איצט, נאָר צו ראַטעווען זיך עטלעכע מאָל, איך בין געגאנגען צו טאָן אַ גאַנץ בינטל פון די בייַ אַמאָל. און, ספּעסיפיקאַללי, איך בין געגאנגען צו טוישן דעם צו אַ טשאַר און טשאַר. דעם איין, איך בין געגאנגען צו טוישן צו אַ טאָפּל און אַ טאָפּל. דעם איין, איך בין געגאנגען צו טוישן צו אַ לאָזנ שווימען און אַ לאָזנ שווימען. דעם איין, איך בין געגאנגען צו טוישן צו אַ ינט און אַ ינט. און דעם איין, איך בין געגאנגען צו טוישן צו אַ לאַנג לאַנג. און עס ס נאָך גענומען אַ לאַנג צייַט, לאַנג לאַנג. און דעמאָלט, לאַסטלי, איך געגעבן זיך איין צו פילע, שטריקל. עס טורנס אויס אַז אין C, עס ס די ספּעציעל אָפּעראַטאָר גערופֿן גרייס פון אַז ס ממש געגאנגען צו, ווען לויפן, זאָגן אונדז די גרייס פון יעדער פון די וועריאַבאַלז. און דעם איז אַ וועג, איצט, מיר קענען פאַרבינדן צוריק צו לעצט וואָך ס דיסקוסיע פון דאַטן און פאַרטרעטונג. זאל מיר גיין פאָרויס און צונויפנעמען גרייס פון פּונקט צעהאַקן גרייס פון. און לאָזן ס זען. עס טורנס אויס אַז אין C, ספּעסיפיקאַללי אויף קס50 ייד, ספּעסיפיקאַללי אויף די אַפּערייטינג סיסטעם ובונטו, וואָס איז אַ 64-ביסל אָפּערייטינג סיסטעם אין דעם פאַל, אַ באָאָל איז געגאנגען צו נוצן איין בייט פון אָרט. אַז ס ווי גרייס איז געמאסטן, ניט אין ביטן, אָבער אין ביטעס. און צוריקרופן אַז איינער ביטע איז אַכט ביטן. אזוי אַ באָאָל, אַפֿילו כאָטש איר טעקניקלי נאָר דאַרפֿן אַ 0 אָדער 1, עס ס אַ ביסל וואַסטעפול ווי מיר ווע ימפּלאַמענטאַד עס. עס ס אַקטשאַוואַלי געגאנגען צו נוצן אַ גאַנץ ביטע-- אַזוי אַלע זעראָס, זענען אפֿשר אַלע אָנעס, אָדער עפּעס ווי אַז, אָדער נאָר איינער 1 צווישן אַכט ביטן. א טשאַר, דערווייַל, געניצט פֿאַר אַ כאַראַקטער ווי אַ אַססיי כאַראַקטער פּער לעצטע וואָך, איז געגאנגען צו זיין איינער כאַראַקטער. און אַז סינטשס אַרויף מיט אונדזער געדאנק פון עס ווייל קיין מער ווי 256 ביצ-- אלא, סינטשס אַרויף מיט עס ווייל קיין מער ווי 8 ביטן, וואָס גיט אונדז ווי פילע ווי 256 וואַלועס. א טאָפּל איז געגאנגען צו זייַן 8 ביטעס אָדער 64 ביץ. א לאָזנ שווימען איז 4. אַ ינט איז 4. אַ לאַנג, לאַנג איז 8. און אַ שטריקל איז 8. אבער טאָן ניט זאָרג וועגן אַז. מיר רע געגאנגען צו שאָלעכץ צוריק אַז שיכטע. עס טורנס אויס, סטרינגס קענען זיין מער ווי 8 ביטעס. און, טאַקע, מיר ווע געשריבן סטרינגס שוין, העלא וועלט, מער ווי 8 ביטעס. אבער מיר וועט קומען צוריק צו אַז אין נאָר אַ מאָמענט. אבער די נעמען אַוועק דאָ איז די ווייַטערדיק. קיין קאָמפּיוטער נאָר האט אַ ענדלעך סומע פון ​​זכּרון און פּלאַץ. איר קענען בלויז קראָם אַזוי פילע טעקעס אויף דיין מעק אָדער פּיסי. איר קענען בלויז קראָם אַזוי פילע מגילה אין באַראַן פליסנדיק בייַ אַמאָל, דאַווקע, אַפֿילו מיט ווירטואַל זיקאָרן, ווייַל איר האָבן אַ ענדלעך סומע פון ​​באַראַן. און פּונקט צו פּיקטורע-- אויב איר ווע קיינמאָל Opened אַרויף אַ לאַפּטאַפּ אָדער אָרדערד עקסטרע זכּרון פֿאַר אַ קאָמפּיוטער, איר זאל ניט וויסן אַז ין פון אייער קאָמפּיוטער איז עפּעס וואָס קוקט אַ ביסל ווי דעם. אַזוי דאָס איז נאָר אַ פּראָסט פירמע געהייסן קריטיש אַז מאכט באַראַן פֿאַר קאָמפּיוטערס. און באַראַן איז ווו מגילה לעבן בשעת זיי ניטאָ פליסנדיק. אַזוי אויף יעדער מעק אָדער פּיסי, ווען איר טאָפּל גיט אַ פּראָגראַם, און עס אָפּענס אַרויף, און עס אָפּענס עטלעכע וואָרט דאָקומענט אָדער עפּעס ווי אַז, עס סטאָרז עס טעמפּערעראַלי אין באַראַן, ווייַל באַראַן איז Faster ווי דיין שווער דיסק, אָדער דיין האַרט שטאַט דיסק. אַזוי עס ס נאָר ווו מגילה גיין צו לעבן ווען זיי ניטאָ פליסנדיק, אָדער ווען טעקעס זענען ווייל געניצט. אזוי איר האָבן דאס אַז קוק ווי דעם ין פון דיין לאַפּטאַפּ, אָדער אַ ביסל ביגער דאס ין פון אייער דעסקטאַפּ. אבער דער שליסל איז איר נאָר האָבן אַ ענדלעך נומער פון די זאכן. און עס ס נאָר אַ ענדלעך סומע פון ייַזנוואַרג זיצן אויף דעם שרייַבטיש רעכט דאָ. אַזוי, שורלי, מיר קענען נישט קראָם ינפיניטעלי לאַנג נומערן. און, נאָך, אויב איר טראַכטן צוריק צו מיינונג שולע, ווי פילע דידזשאַץ קענען איר האָבן צו די רעכט פון אַ דעצימאַל פונט? פֿאַר אַז ענין, ווי פילע דידזשאַץ קענען איר האָבן צו די לינקס פון אַ דעצימאַל פונט? טאַקע, ינפיניטעלי פילע. איצט, מיר יומאַנז זאל נאָר וויסן ווי צו אַרויסרעדן מיליאָן, און ביליאָן, טריליאַן, און קוואַדרילליאָן, און קווינטילליאָן. און איך בין פּושינג די לימאַץ פון מיין ונדערסטאַנדינג-- אָדער מי-- איך פֿאַרשטיין נומערן, אָבער מיין פּראָונאַנסייישאַן פון נומערן. אבער זיי קענען באַקומען ינפיניטעלי גרויס מיט ינפיניטעלי פילע דידזשאַץ צו די לינקס אָדער צו די רעכט פון אַ דעצימאַל פונט. אבער קאָמפּיוטערס נאָר האָבן אַ ענדלעך סומע פון ​​זכּרון, אַ ענדלעך נומער פון טראַנזיסטערז, אַ ענדלעך נומער פון ליכט באַלבז אינעווייניק. אַזוי וואָס כאַפּאַנז ווען איר לויפן אויס פון אָרט? אין אנדערע ווערטער, אויב איר טראַכטן צוריק צו לעצט וואָך ווען מיר גערעדט וועגן נומערן זיך ווייל רעפּריזענטיד אין ביינערי, רעכן אַז מיר 'ווע גאַט דעם 8-ביסל ווערט דאָ. און מיר האָבן זיבן 1 ס און איינער 0. און רעכן אַז מיר ווילן צו לייגן 1 צו דעם ווערט. דאס איז אַ טאַקע גרויס נומער רעכט איצט. דאס איז 254, אויב איך געדענקען די מאַט פון לעצטע וואָך רעכט. אבער וואָס אויב איך טוישן אַז ריגהטמאָסט 0 צו אַ 1? די גאנצע נומער, פון דאָך, ווערט אַכט 1 ס. אזוי מיר ניטאָ נאָך גוט. און אַז מיסטאָמע רעפּראַזענץ 255, כאָטש דיפּענדינג אויף קאָנטעקסט עס קען אַקטשאַוואַלי פאָרשטעלן אַ נעגאַטיוו נומער. אבער מער אויף אַז אן אנדער צייַט. דאס Feels ווי עס ס וועגן ווי הויך ווי איך קענען ציילן. איצט, עס ס נאָר 8 ביטן. און מיין מעק, שורלי, האט וועג מער ווי 8 ביטן פון זכּרון. אָבער עס טוט האָבן ענדלעך. אזוי די זעלבע אַרגומענט אַפּלייז, אַפֿילו אויב מיר האָבן מער פון די אָנעס אויף דעם עקראַן. אבער וואָס כאַפּאַנז אויב איר ניטאָ סטאָרינג דעם נומער, 255, און איר ווילן צו ציילן 1 ביסל העכער? איר ווילן צו גיין 255-256. די פּראָבלעם, פון קורס, איז אַז אויב איר אָנהייבן קאַונטינג אין נול ווי לעצט וואָך, איר קענען נישט ציילן ווי הויך ווי 256, לאָזן אַליין 257, לאָזן אַליין 258, ם ווייַל וואָס כאַפּאַנז ווען איר שטעלן אַ 1? אויב איר טאָן די אַלט מיינונג שולע צוגאַנג, איר שטעלן אַ 1 דאָ, און דעמאָלט 1 פּלוס 1 איז 2, אָבער אַז ס ' טאַקע אַ נול, איר פירן די 1, פירן די 1, פירן די 1. כל פון די זאכן, די 1 ס, גיין צו נול. און איר ווינט אַרויף, יאָ, ווי עמעצער שפּיציק אויס, אַ 1 אויף די לינקס האַנט זייַט. אבער אַלץ איר קענען אַקשלי זען און פּאַסיק אין זכּרון איז נאָר אַכט 0 ס, וואָס איז צו זאָגן בייַ עטלעכע פונט אויב איר, אַ קאָמפּיוטער, פּרובירן קאַונטינג הויך גענוג אַרויף, איר 'רע געגאנגען צו ייַנוויקלען אַרום, עס וואָלט ויסקומען, צו נול, אָדער אפֿשר אַפֿילו נעגאַטיוו נומערן, וואָס זענען אַפֿילו נידעריקער ווי נול. און מיר קענען מין פון זען דעם. זאל מיר גיין פאָרויס און שרייַבן אַ פאַקטיש שנעל פּראָגראַם דאָ. זאל מיר גיין פאָרויס און שרייַבן אַ פּראָגראַם געהייסן לויפן. אַרייַננעמען קס50.ה, אַרייַננעמען נאָרמאַל יאָ.ה-- טאַקע, איך טאַקע מיסט מיין סינטאַקס כיילייטינג. אזוי לאָזן 'ס ראַטעווען דעם ווי אָווערפלאָוו.ק. און איצט ינט הויפּט וואָיד-- און איידער לאַנג, מיר וועט קומען צוריק צו יקספּליינינג וואָס מיר האַלטן שרייבן ינט הויפּט פּאָסל. אבער פֿאַר איצט, לאָזן 'ס נאָר טאָן עס, גענומען עס פֿאַר געגעבן. זאל ס געבן זיך אַ ינט, און ינישאַלייז עס צו 0. זאל ס דעמאָלט טאָן פֿאַר ינט איך באַקומען זעראָ-- אַקשלי, לאָזן 'ס טאָן אַ Infinite שלייף און זען וואָס כאַפּאַנז. בשעת אמת, דעריבער לאָזן ס דרוקן אויס N איז פּראָצענט איך, באַקקסלאַש ן, צאַפּן-אין ען. אבער, איצט, לאָזן 'ס טאָן N געץ N פּלוס 1. אַזוי אין אנדערע ווערטער, אויף יעדער יטעראַטיאָן פון דעם Infinite שלייף, לאָזן ס נעמען N ס ווערט, און לייגן 1 צו אים, און דעמאָלט קראָם דער רעזולטאַט צוריק אין n אויף די לינקס. און, אין פאַקט, מיר 'ווע געזען סינטאַקס אַ ביסל ווי דעם, בעקיצער. א קיל קונץ איז אַנשטאָט פון שרייבן אַלע דעם אויס, איר קענען אַקטשאַוואַלי זאָגן אַ N פּלוס יקוואַלז 1. אָדער אויב איר טאַקע ווילן צו זייַן פאַנטאַזיע, איר קענען זאָגן N פּלוס פּלוס האַלב-צווייפּינטל. אבער די יענער צוויי זענען פּונקט וואָס מיר 'ד רופן סינטאַקטיק צוקער פֿאַר די ערשטער זאַך. דער ערשטער זאַך איז מער יקספּליסאַט, טאָוטאַלי פייַן, טאָוטאַלי ריכטיק. אבער דעם איז מער פּראָסט, איך וועט זאָגן. אזוי מיר וועט טאָן דעם פֿאַר נאָר אַ מאָמענט. זאל ס איצט מאַכן לויפן, וואָס סאָונדס גאַנץ אַמאַנאַס, פּונקט צעהאַקן לויפן. זאל ס זען, N ס געטינג שיין גרויס. אבער לאָזן ס טראַכטן, ווי גרויס קענען N באַקומען? N איז אַ ינט. מיר געזען אַ מאָמענט צוריק מיט די גרייס פון בייַשפּיל אַז אַ ינט איז פיר ביטעס. מיר וויסן פון לעצט וואָך, פיר ביטעס איז 32 ביטן, ווייַל 8 מאל 4, אַז ס 32. אַז ס 'געגאנגען צו זייַן 4 ביליאָן. און מיר זענען אַרויף צו 800,000. דאס איז געגאנגען צו נעמען אויף אייביק צו ציילן ווי הויך ווי איך עפשער קענען. אַזוי איך בין געגאנגען צו גיין פאָרויס, ווי איר זאל איידער לאַנג, און שלאָגן קאָנטראָל ק-- פראַנקלי, קאָנטראָל C, אַ פּלאַץ, ווו קאָנטראָל C בכלל מיטל באָטל מאַכן. צום באַדויערן, ווייַל דעם איז פליסנדיק אין די וואָלקן, מאל די וואָלקן איז ספּיטינג אויס אַזוי פיל שטאָפּן, אַזוי פיל רעזולטאַט, עס ס געגאנגען צו נעמען אַ ביסל בשעת פֿאַר מיין ינפּוט צו באַקומען צו דעם וואָלקן. אַזוי אַפֿילו כאָטש איך שלאָגן קאָנטראָל C אַ ביסל סעקונדעס צוריק, דעם איז באשטימט די זייַט ווירקונג פון אַ Infinite שלייף. און אַזוי אין אַזאַ קאַסעס, מיר 'רע געגאנגען צו לאָזן אַז זייַן. און מיר רע געגאנגען צו לייגן אן אנדערן וואָקזאַל פֿענצטער איבער דאָ מיט די פּלוס, וואָס פון קורס טוט נישט ווי אַז, זינט עס ס 'נאָך טראכטן. און לאָזן ס גיין פאָרויס און זיין אַ ביסל מער גלייַך. איך בין געגאנגען צו גיין פאָרויס און טאָן דעם בלויז פיניטעלי פילע מאל. זאל ס נוצן אַ פֿאַר שלייף, וואָס איך אַלודאַד צו פריער. זאל ס טאָן דעם. געבן מיר אן אנדער בייַטעוודיק ינט איך געץ 0. איך איז ווייניקער ווי, לאָזן ס זאָגן, 64 איך ++. און איצט לאָזן מיר גיין פאָרויס און דרוקן אויס N איז פּראָצענט איך, קאָמע ן. און דעמאָלט נ-- דאָס איז נאָך געגאנגען צו נעמען אויף אייביק. זאל ס טאָן דעם. N געץ N מאל 2. אָדער מיר קען זיין פאַנטאַזיע און טאָן מאל יקוואַלז 2. אבער לאָזן ס נאָר זאָגן N יקוואַלז זיך, מאל 2. אין אנדערע ווערטער, אין דעם נייע ווערסיע פון ​​דעם פּראָגראַם, איך טאָן ניט ווילן צו וואַרטן אויף אייביק פון ווי 800,000 צו 4 ביליאָן. זאל ס נאָר באַקומען דעם איבער מיט. זאל ס אַקטשאַוואַלי טאָפּל N יעדער צייַט. וואָס, צוריקרופן, דאַבלינג איז די פאַרקערט פון בעת, פון קורס. און וועראַז לעצטע וואָך מיר האָבן עפּעס ווידער, און ווידער, און ווידער, יבער שנעל, דאַבלינג וועט שורלי באַקומען אונדז פון 1 צו די ביגאַסט מעגלעך ווערט אַז מיר קענען ציילן צו מיט אַ ינט. אַזוי לאָזן ס טאָן פּונקט דעם. און מיר וועט קומען צוריק צו דעם איידער לאַנג. אבער דעם, ווידער, איז פּונקט ווי די איבערחזרן בלאָק אין קראַצן. און איר וועט נוצן דעם איידער לאַנג. דאס נאָר מיטל ציילן פון נול אַרויף צו, אָבער ניט גלייַך, צו 64. און אויף יעדער יטעראַטיאָן פון דעם שלייף, נאָר האַלטן ינקרעמענטינג איך. אַזוי איך ++ - און דעם גענעראַל בויען אויף שורה 7 איז נאָר אַ סופּער פּראָסט וועג פון ריפּיטינג עטלעכע שורות פון קאָד, עטלעכע נומער פון מאל. וואָס שורות פון קאָד? די געגרייַזלט ברייסאַז, ווי איר מייַ האָבן גלינד פון איצט, מיטל, טאָן די ווייַטערדיק. עס ס אין ווי קראַצן, ווען עס האט די געל בלאַקס און אנדערע פֿאַרבן אַז מין פון האַלדזן אָדער האַלדזן אנדערע בלאַקס. אַז ס וואָס יענע געגרייַזלט ברייסאַז זענען טאן דאָ. אַזוי אויב איך גאַט מיין סינטאַקס ריגהט-- איר קענען זען די מער סימבאָל אין C מיטל אַז ס ווי פילע מאל איך איז געווען טריינג צו סאָלווע דעם פּראָבלעם. אזוי לאָזן 'ס באַקומען באַפרייַען פון אַז איינער בעסאַכאַקל, און נאָענט אַז פֿענצטער. און מיר וועט נוצן די נייַ איינער. מאַכן לויפן, פּונקט צעהאַקן לויפן, קום, אַלע רעכט, עס קוקט שלעכט אין ערשטער. אבער לאָזן ס מעגילע צוריק אין מאָל, ווייַל איך האט דעם 64 מאל. און באַמערקן די ערשטער מאָל, N איז 1. צווייט מאָל, N איז 2, דעמאָלט 4, דעמאָלט 8, דעמאָלט 16. און עס מיינט אַז ווי באַלד ווי איך באַקומען צו בעערעך 1 ביליאָן, אויב איך טאָפּל עס ווידער, אַז זאָל געבן מיר 2 ביליאָן. אבער עס טורנס אויס, עס ס רעכט אויף די קוספּ. און אַזוי עס איז אַקטשאַוואַלי אָווערפלאָווס אַ ינט פון 1 ביליאָן צו בעערעך נעגאַטיוו 2 ביליאָן, ווייַל אַ ינטאַדזשער, ניט ענלעך די נומערן מיר זענען אַסומינג לעצטע וואָך, קענען זייַן ביידע positive און נעגאַטיוו אין פאַקט, און אין אַ קאָמפּיוטער. און אַזוי אין מינדסטער איינער פון יענע ביטן איז Effectively סטאָלען. אזוי מיר טאַקע נאָר האָבן 31 ביטן, אָדער 2 בילליאָן מעגלעך וואַלועס. אבער פֿאַר איצט, די טאַקעאַווייַ איז גאַנץ נאָר, וועלכער די נומערן זענען און וועלכער די מאַט איז, עפּעס שלעכט כאַפּאַנז יווענטשאַוואַלי, ווייַל יווענטשאַוואַלי איר זענען טריינג צו פּערמוטע די ביטן איין צו פילע מאל. און איר Effectively גיין פון אַלע 1 ס צו אפֿשר אַלע 0 ס, אָדער אפֿשר נאָר עטלעכע אנדערע מוסטער אַז עס קלאר, דיפּענדינג אויף קאָנטעקסט, קענען זיין ינטערפּראַטאַד ווי אַ נעגאַטיוו נומער. און אַזוי עס וואָלט ויסקומען דעם העכסטן איך קענען ציילן אין דעם באַזונדער פּראָגראַם איז בלויז בעערעך 1 ביליאָן. אבער עס ס אַ פּאַרטיייש לייזונג דאָ. ווייסט וואס? זאל מיר טוישן פון אַ ינט צו אַ לאַנג לאַנג. און לאָזן מיר גיין פאָרויס דאָ און סייַ-- איך בין געגאנגען צו האָבן צו טוישן דעם צו אַ אַנסיינד לאַנג. אָדער, לאָזן ס זען, איך קיינמאָל געדענקען אליין. זאל ס גיין פאָרויס און מאַכן לויפן. ניין, אַז ס 'נישט עס, ללד, דאַנקען איר. אַזוי מאל קלאַנג קענען זיין נוציק. איך האט ניט געדענקען וואָס די פֿאָרמאַט ספּעסיפיער איז געווען פֿאַר אַ לאַנג לאַנג. אבער, טאַקע, קלאַנג דערציילט מיר. גרין איז עטלעכע מין פון גוט, נאָך מיטל איר געמאכט אַ גרייַז. עס ס געסינג אַז איך מענט ללד. אַזוי לאָזן מיר נעמען עס ס 'עצה, אַ לאַנג לאַנג דעצימאַל נומער, ראַטעווען וואָס. און לאָזן מיר ריראַן עס, פּונקט צעהאַקן לויפן, קומען. און איצט וואָס ס קיל איז דעם. אויב איך מעגילע צוריק אין מאָל, מיר נאָך אָנהייבן קאַונטינג אין דער זעלביקער פּלאַסע-- 1, 2, 4, 8, 16. באַמערקן, מיר באַקומען אַלע די וועג אַרויף צו 1 ביליאָן. אבער דעמאָלט מיר בעשאָלעם באַקומען צו 2 ביליאָן. דעמאָלט מיר באַקומען צו 4 ביליאָן, דעמאָלט 8 מיליאַרד, 17 ביליאָן. און מיר גיין העכער, און העכער, און העכער. עווענטואַללי, דעם, אויך, ברייקס. עווענטואַללי, מיט אַ לאַנג לאַנג, וואָס איז די 64-ביסל ווערט, נישט אַ 32-ביסל ווערט, אויב איר ציילן אויך הויך, איר ייַנוויקלען אַרום 0. און אין דעם פאַל, מיר פּאַסירן צו סוף אַרויף מיט אַ נעגאַטיוו נומער. אַזוי דעם איז אַ פּראָבלעם. און עס טורנס אויס אַז דעם פּראָבלעם איז נישט אַלע וואָס אַרקיין. אַפֿילו כאָטש איך ווע דיליבראַטלי ינדוסט עס מיט די מיסטייקס, עס טורנס אויס מיר זען עס מין פון אַלע אַרום אונדז, אָדער לפּחות עטלעכע פון ​​אונדז טאָן. אזוי אין לעגאָ שטערן וואַרס, אויב איר ווע אלץ פּלייַעד די שפּיל, עס טורנס אויס איר קענען גיין אַרום ברייקינג זאכן אַרויף אין לעגאָ וועלט, און קאַלעקטינג קאָינס, יסענשאַלי. און אויב איר ווע אלץ פּלייַעד דעם שפּיל וועג צו פיל צייַט, ווי דעם אַנניימד יחיד דאָ האט, די גאַנץ נומער פון קאָינס אַז איר קענען קלייַבן איז, עס וואָלט ויסקומען, 4 ביליאָן. איצט, מיט עס ס אַקטשאַוואַלי ראַונדיד. אזוי לעגאָ איז געווען טריינג צו האַלטן דאס באַניצער פרייַנדלעך. זיי האבן ניט טאָן עס פּונקט 2 צו די 32 מאַכט, פּער לעצטע וואָך. אבער 4 בילליאָן איז אַ סיבה. עס דאכט זיך, באזירט אויף דעם אינפֿאָרמאַציע, אַז לעגאָ, און די פירמע וואָס איז געמאכט דעם פאַקטיש ווייכווארג, באַשלאָסן אַז די מאַקסימום נומער פון קאָינס דער באַניצער קענען אָנקלייַבן איז, טאַקע, 4 ביליאָן, ווייַל זיי אויסדערוויילט אין זייער קאָד צו נוצן נישט אַ לאַנג לאַנג, משמעות, אָבער נאָר אַ ינטאַדזשער, אַ אַנסיינד ינטאַדזשער, נאָר אַ positive ינטאַדזשער, וועמענס מאַקס ווערט איז בעערעך אַז. נו, דאָ ס אנדערן מאָדנע איינער. אַזוי אין דעם שפּיל ציוויליזאַציע, וואָס עטלעכע פון ​​איר זאל זיין באַקאַנט מיט עס טורנס אויס אַז יאר צוריק עס איז געווען אַ זשוק אין דעם שפּיל כווערביי אויב איר פּלייַעד די ראָלע פון גאַנדי אין דעם שפּיל, אָנשטאָט אים ווייל זייער פּאַסיפיסט, אַנשטאָט איז ינקרעדאַבלי, ינקרעדאַבלי אַגרעסיוו, אין עטלעכע צושטאנדן. אין באַזונדער, דער וועג אַז סיוויליזאַטיאָן אַרבעט איז אַז אויב איר, די שפּילער, אַדאַפּט דעמאָקראַסי, דיין אַגרעסיוונאַס כעזשבן געץ דעקרעמענטעד דורך צוויי, אַזוי מינוס מינוס, און דעמאָלט מינוס מינוס. אזוי איר אַראָפּרעכענען 2 פון דיין פאַקטיש יטעראַטינג. צום באַדויערן, אויב דיין יטעראַטינג איז טכילעס 1, און איר אַראָפּרעכענען 2 פון עס נאָך אננעמען דעמאָקראַסי ווי גאַנדי דאָ זאל האָבן געטאן, ווייַל ער איז געווען זייער פּאַססיווע-- 1 אויף דער וואָג פון אַגרעסיוונאַס. אבער אויב ער אַדאַפּץ דעמאָקראַסי, דעמאָלט ער גייט פֿון 1 צו נעגאַטיוו 1. צום באַדויערן, זיי זענען געווען ניצן אַנסיינד נומערן, וואָס מיטל זיי באהאנדלט אַפֿילו נעגאַטיוו נומערן ווי כאָטש זיי זענען positive. און עס טורנס אויס אַז די בעפיירעש עקוויוואַלענט פון נעגאַטיוו 1, אין טיפּיש קאָמפּיוטער מגילה, איז 255. אַזוי אויב גאַנדי אַדאַפּץ דעמאָקראַסי, און דעריבער האט זייַן אַגרעסיוונאַס כעזשבן דיקריסט, עס אַקשלי ראָללס אַרום צו 255 און מאכט אים די מערסט אַגרעסיוו כאַראַקטער אין דער שפּיל. אַזוי איר קענען גוגל זיך אויף דעם. און עס איז געווען, טאַקע, אַ אַקסאַדענטאַל פּראָגראַממינג זשוק, אָבער אַז ס 'אריין גאַנץ די קענטעניש טאָמיד זינט. אַז ס אַלע שפּאַס און קיוט. מער שרעקלעך איז ווען פאַקטיש פאַקטיש וועלט דיווייסאַז, און ניט גאַמעס, האָבן די זעלבע באַגז. אין פאַקט, נאָר אַ יאָר צוריק אַן אַרטיקל געקומען אויס וועגן די באָעינג 787 דרעאַמלינער. און די אַרטיקל אין ערשטער בליק לייענט אַ ביסל אַרקיין. אבער עס האט דאס געזאגט, אַ ווייכווארג וואַלנעראַביליטי אין באָעינג ס נייַ 787 דרעאַמלינער שפּריץ האט דער פּאָטענציעל צו פאַרשאַפן פּיילאַץ צו פאַרלירן קאָנטראָל פון די AIRCRAFT, עפשער אין מיטן-פלי, די פאַאַ באאמטע געווארנט ערליינז לעצטנס. עס איז געווען די פעסטקייַט אַז אַ מאָדעל 787 אַעראָפּלאַן וואָס האט שוין פּאַוערד כּסדר פֿאַר 248 טעג קענען פאַרלירן אַלע אָלטערנייטינג קראַנט, אַק, ילעקטריקאַל מאַכט רעכט צו די גענעראַטאָר קאָנטראָל וניץ, גקוס, סיימאַלטייניאַסלי געגאנגען אין פאַרלאָזן זיכער מאָדע. עס ס מין פון לוזינג מיר. אבער די מעמאָו סטייטיד, גוט, איצט איך גאַט אַז, די צושטאַנד איז געווען געפֿירט דורך אַ ווייכווארג טאָמבאַנק ינערלעך צו די גענעראַטאָר קאָנטראָל וניץ וואָס וועט לויפן נאָך 248 טעג פון קעסיידערדיק מאַכט. מיר זענען ישוינג דעם באַמערקן צו פאַרמייַדן אָנווער פון אַלע אַק עלעקטריקאַל מאַכט, וואָס קען רעזולטאַט אין אָנווער פון קאָנטראָל פון די אַעראָפּלאַן. אַזוי, ממש, עס איז עטלעכע ינטאַדזשער, אָדער עטלעכע עקוויוואַלענט דאַטן טיפּ, ווייל געניצט אין ווייכווארג אין אַ פאַקטיש אַעראָפּלאַן אַז אויב איר האַלטן דיין אַעראָפּלאַן אויף לאַנג גענוג, וואָס משמעות קענען זיין די פאַל אויב איר ניטאָ נאָר פליסנדיק זיי קעסיידער און קיינמאָל ונפּלוגגינג דיין אַעראָפּלאַן, עס מיינט, אָדער לעטינג זייַן באַטעריז שטאַרבן, וועט יווענטשאַוואַלי ציילן אַרויף, און זיך, און אַרויף, און אַרויף, און אַרויף, און זיך. און, דורך נאַטור, אַ ענדלעך סומע פון ​​זכּרון וועט לויפן, ראָולינג צוריק צו נול אָדער עטלעכע נעגאַטיוו ווערט, אַ זייַט ווירקונג פון וואָס איז די פריגהטענינגלי פאַקטיש פאַקט אַז די פלאַך זאל דאַרפֿן צו זיין רעבאָאָטעד, Effectively, אָדער זאל פאַלן, ערגער, ווי עס פליעס. אזוי די מינים פון ישוז זענען נאָך מיט אונדז, עווענ-- דאָס איז געווען אַ 2015 אַרטיקל, אַלע די מער שרעקלעך ווען איר טאָן ניט דאַווקע פֿאַרשטיין, אָפּשאַצן, אָדער ריכטנ זיך יענע מינים פון ערראָרס. אַזוי עס טורנס אויס דאָרט ס איין אנדערע שלעכט זאַך וועגן דאַטן פאַרטרעטונג. עס טורנס אויס אַז אַפֿילו פלאָאַץ זענען מין פון פלאַוועד, ווייַל פלאָאַץ, אויך, איך פּראָפּאָסעד זענען 32 ביטן, אָדער אפֿשר 64 אויב איר נוצן אַ טאָפּל. אבער אַז ס 'נאָך ענדלעך. און די כאַפּן איז אַז אויב איר קענען לייגן אַ Infinite נומער פון נומערן נאָך די דעצימאַל פונט, עס איז קיין וועג איר קענען פאָרשטעלן אַלע די מעגלעך נומערן אַז מיר האבן געלערנט אין מיינונג שולע קענען עקזיסטירן אין דער וועלט. אַ קאָמפּיוטער, יסענשאַלי, האט צו קלייַבן אַ סאַבסעט פון די נומערן צו פאָרשטעלן אַקיעראַטלי. איצט, דער קאָמפּיוטער קענען קייַלעכיק אפֿשר אַ קליין ביסל, און קענען לאָזן איר צו בעערעך קראָם קיין נומער איר זאל עפשער ווילן. אבער נאָר ינטויטיוולי, אויב איר האָבן אַ ענדלעך נומער פון ביטן, איר קענען נאָר פּערמוטע זיי אין אַזוי פילע ענדלעך וועגן. אַזוי איר קענען נישט עפשער נוצן אַ ענדלעך נומער פון פּערמיוטיישאַן פון ביטן, פּאַטערנז פון זעראָס און אָנעס, צו פאָרשטעלן אַ Infinite נומער פון נומערן, וואָס סאַגדזשעסץ אַז קאָמפּיוטערס זאל זייער געזונט זיין ליגנעריש צו אונדז מאל. אין פאַקט, לאָזן ס טאָן דעם. זאל מיר גיין צוריק אין קס50 ייד. זאל מיר גיין פאָרויס און שאַפֿן אַ קליין פּראָגראַם גערופֿן ימפּרעסיסיאָן, צו ווייַזן אַז קאָמפּיוטערס זענען, טאַקע, ימפּרעסיסע. און לאָזן מיר גיין פאָרויס און אָנהייבן מיט עטלעכע פון ​​אַז קאָד פון פריער, און איצט בלויז טאָן די ווייַטערדיק. זאל מיר גיין פאָרויס און טאָן פּרינטף, פּראָצענט F, באַקקסלאַש ן, 1 צעטיילט דורך 10. אין אנדערע ווערטער, לאָזן ס ונטערטוקנ זיך אין דיפּער צו 1/10, ווי 1 און צעטיילט דורך 10. שורלי, אַ קאָמפּיוטער קענען פאָרשטעלן 1/10. אַזוי לאָזן ס גיין פאָרויס און מאַכן ימפּרעסיסיאָן. לאמיר זעהן. פֿאָרמאַטירונג ספּעסיפיעס טיפּ טאָפּל. אבער דער אַרגומענט האט טיפּ ינט. וואס טוט זיך? אָה, טשיקאַווע, אַזוי עס ס אַ לעקציע געלערנט פון פריער. איך בין אַזוי צו זאָגן: היי, קאָמפּיוטער ווייַזן מיר אַ לאָזנ שווימען מיט פּראָצענט ו. אבער איך בין געבן עס 2 ינץ. אַזוי עס טורנס אויס, איך קענען פאַרריכטן דעם אין אַ פּאָר פון וועגן. איך קען נאָר דרייַ איינער אין 1.0, און 10 אין 10.0, וואָס וואָלט, טאַקע, האָבן די ווירקונג פון קאַנווערטינג זיי אין פלאָאַצ-- נאָך אַלעווייַ די זעלבע נומער. אָדער עס טורנס אויס עס ס 'עפּעס מיר וועט זען ווידער איידער לאַנג. איר קען וואַרפן די נומערן. איר קענען, ניצן דעם פּאַרענטהעטיקאַל אויסדרוק, איר קענען זאָגן, היי, קאָמפּיוטער, נעמען דעם 10, וואָס איך וויסן איז אַ ינט. אבער מייַכל עס, ביטע, ווי כאָטש עס ס אַ לאָזנ שווימען. אבער דעם Feels אַננעסאַסעראַלי קאָמפּליצירט. פֿאַר אונדזער צוועקן הייַנט, זאל ס נאָר ממש מאַכן זיי Floating פונט וואַלועס מיט אַ דעצימאַל פונט, ווי דעם. זאל מיר גיין פאָרויס און ריראַן, מאַכן ימפּרעסיסיאָן, גוט, פּונקט צעהאַקן ימפּרעסיסיאָן, אַרייַן. גוט, מיר 'רע איר זוכט גוט. 1 צעטיילט דורך 10, לויט צו מיין מעק דאָ, איז, טאַקע, 0.100000. איצט, איך איז געווען געלערנט אין מיינונג שולע דאָרט זאָל זיין אַ Infinite נומער פון 0 ס. אַזוי לאָזן ס בייַ מינדסטער פּרובירן צו זען עטלעכע פון ​​יענע. עס טורנס אויס אַז פּרינטף איז אַ ביסל פאַנסיער נאָך ווי מיר ווע שוין ניצן. עס טורנס אויס איר טאָן ניט האָבן צו ספּעציפיצירן נאָר פּראָצענט ו, אָדער נאָר פּראָצענט איך. איר קענען טאקע ספּעציפיצירן עטלעכע קאָנטראָל אָפּציעס דאָ. ספּעסיפיקאַללי, איך בין געגאנגען צו זאָגן, היי, פּרינטף, אַקטשאַוואַלי ווייַזן מיר 10 דעצימאַל ווייזט. אַזוי עס קוקט אַ ביסל טשודנע. אבער איר זאָגן פּראָצענט, פּונקט, ווי פילע נומערן איר ווילן צו זען נאָך די דעצימאַל פונט, און דעמאָלט ף פֿאַר פלאַך, נאָר ווייַל אַז ס וואָס די דאַקיומענטיישאַן זאגט. זאל מיר גיין פאָרויס און ראַטעווען אַז. און באַמערקן אויך, איך בין געטינג מיד פון רעטיפּינג זאכן. אזוי איך בין נאָר באַשטעטיקן די אַרויף און אַראָפּ פייַל אויף מיין שליסלען דאָ. און אויב איך האַלטן היטטינג אַרויף, איר קענען זען אַלע פון ​​די קאַמאַנדז אַז איך געמאכט, אָדער ינקערעקטלי געמאכט. און איך בין געגאנגען צו גיין פאָרויס איצט און ניט אַקשלי נוצן אַז, משמעות. מאַכן ימפּרעסיסיאָן, פּונקט צעהאַקן ימפּרעסיסיאָנ-- אַזוי וואָס איך איז געווען געלערנט אין מיינונג שולע טשעקס אויס. אַפֿילו אויב איך דרוק עס צו 10 דעצימאַל ערטער עס, טאַקע, איז .10000. אבער איר וויסן וואָס? זאל ס באַקומען אַ ביסל זשעדנע. זאל ס זאָגן, ווי, ווייַזן מיר 55 פּוינץ נאָך די דעצימאַל. זאל ס טאַקע נעמען דעם פּראָגראַם אויס פֿאַר אַ ומדריי. זאל מיר רימייק עס מיט מאַכן ימפּרעסיסיאָן, פּונקט צעהאַקן, ימפּרעסיסיאָן. און דאָ מיר גיין. דיין קינדשאַפט איז געווען אַ ליגן. משמעות, 1 צעטיילט דורך 10 איז טאַקע 0.100000000000000005551115123-- וואָס איז געגאנגען אויף? נו, עס טורנס אויס, אויב איר מין פון קוקן ווייַט גענוג אויס אין די אַנדערלייינג פאַרטרעטונג פון דעם נומער, עס אַקשלי איז נישט פּונקט 1/10, אָדער 0.1 און אַ Infinite נומער פון זעראָס. איצט, וואָס איז וואָס? נו, אַפֿילו כאָטש דאָס איז אַ פּשוט נומער צו אונדז יומאַנז, 1 צעטיילט דורך 10, עס ס נאָך איינער פון ינפיניטעלי פילע נומערן אַז מיר קען טראַכטן אַרויף. אבער אַ קאָמפּיוטער קענען בלויז פאָרשטעלן פיניטעלי פילע אַזוי נומערן. און אַזוי, Effectively, וואָס די קאָמפּיוטער איז ווייַזונג אונדז איז זייַן קלאָוסאַסט אַפּראַקסאַמיישאַן צו די נומער מיר ווילן צו גלויבן איז 1/10, אָדער טאַקע 0.10000 אַד ינפיניטום. אלא, כאָטש, דאָס איז ווי נאָענט ווי עס קענען באַקומען. און, טאַקע, אויב איר קוק ונטער דער קאַפּטער, ווי מיר זענען דאָ דורך קוקן 55 דידזשאַץ נאָך די דעצימאַל, מיר אַקשלי זען אַז פאַקט. איצט ווי אַ באַזונדער, אויב איר ווע אלץ געזען דעם מאָוויע-- רובֿ פון איר מיסטאָמע האַווענ'ט-- אָבער סופּערמאַן 3 עטלעכע יאר צוריק, ריטשארד פּריאָר יסענשאַלי לעוועראַגעד דעם פאַקט אין זיין פירמע צו גאַנווענען אַ פּלאַץ פון Fractions און Fractions פון פּעניז, ווייַל די קאָמפּאַני-- ווי איך צוריקרופן, עס ס 'שוין אַ ווהילע-- איז יסענשאַלי טראָוינג אַוועק עפּעס אַז האט ניט פּאַסיק אין דעם געדאנק פון סענס. אבער אויב איר לייגן אַרויף אַלע די קליינטשיק, קליינטשיק, קליינטשיק נומערן ווידער, און ווידער, און ווידער, איר קענען, ווי אין זייַן פאַל, מאַכן אַ גוט סומע פון ​​געלט. אַז זעלביקער געדאַנק איז געווען ריפּט אַוועק דורך אַ מער פריש, אָבער נאָך איצט עלטערע פֿילם, גערופֿן אַמט אָרט, ווו די גייז אין אַז פֿילם, האט די זעלבע זאַך, סקרוד עס אַרויף גאָר, געענדיקט אַרויף מיט וועג צו פיל געלט אין זייער באַנק אקאונט. עס איז געווען אַלע זייער סאַספּישאַס. אבער אין די סוף פון די טאָג, ימפּרעסיסיאָן איז אַלע אַרום אונדז. און אַז, אויך, קענען זייַן פריגהטענינגלי די קאַסטן. עס טורנס אויס אַז סופּערמאַן 3 און אַמט אָרט באַזונדער, עס קענען זיין עטלעכע זייער פאַקטיש וועלט ראַמיפיקאַטיאָנס פון די ריאַלאַטיז פון ימפּרעסיסע פאַרטרעטונג פון דאַטן אַז אַפֿילו מיר יומאַנז צו דעם טאָג טאָן ניט דאַווקע פֿאַרשטיין ווי ווויל ווי מיר זאָל, אָדער געדענקען ווי אָפֿט ווי מיר זאָל. און, טאַקע, די ווייַטערדיק קלעמערל איז פֿון אַ קוק אין עטלעכע זייער פאַקטיש וועלט ראַמיפיקאַטיאָנס פון וואָס כאַפּאַנז אויב איר טאָן ניט אָפּשאַצן די ימפּרעסיסיאָן אַז קענען פּאַסירן אין נומערן פאַרטרעטונג. [ווידעא פּלייבאַק] -קאָמפּוטערס, מיר ווע אַלע קומען צו אָננעמען די אָפֿט פרוסטראַטינג פּראָבלעמס אַז גיין מיט טהעמ-- באַגז, ווירוסעס, און ווייכווארג גליטשיז, פֿאַר קליין פּרייסיז צו באַצאָלן פֿאַר די קאַנוויניאַנס. אבער אין הויך טעק און הויך גיכקייַט מיליטעריש און פּלאַץ פּראָגראַם אַפּלאַקיישאַנז, דער קלענסטער פּראָבלעם קענען זייַן געגרייסט אין ומגליק. אויף יוני 4, 1996, סייאַנטיס צוגעגרייט צו קאַטער אַ אַנמאַנד עריאַן 5 ראַקעט. עס איז געווען קעריינג SCIENTIFIC סאַטאַלייץ דיזיינד צו פעסטשטעלן דווקא ווי די ערד ס מאַגנעטיק פעלד ינטעראַקץ מיט זונ ווינטן. די ראַקעט איז געווען געבויט פֿאַר די European אָרט אַגענסי, און האָט אויפֿגעהויבן אַוועק פון זייַן מעכירעס אויף דעם ברעג פון פראנצויזיש גיאַנאַ. -אַט וועגן 37 סעקונדעס אין די פלי, זיי ערשטער באמערקט עפּעס איז געגאנגען פאַלש. די נאַזאַלז זענען סוויוועלינג אין אַ וועג זיי טאַקע זאָל ניט. אַרום 40 סעקונדעס אין די פלי, קלאר, די פאָרמיטל איז געווען אין קאָנפליקט. און אַז ס ווען זיי געמאכט אַ באַשלוס צו צעשטערן עס. די קייט זיכערקייַט אָפיציר, מיט קאָלאָסאַל גאַץ, געדריקט דעם קנעפּל, האבן געבלאזן אַרויף די ראַקעט, איידער עס קען ווערן אַ ריזיקירן צו דעם ציבור זיכערקייַט. -טהיס איז די מיידל נעסיע פון ​​די עריאַן 5. און זייַן צעשטערונג גענומען אָרט ווייַל פון אַ פלאַוו עמבעדיד אין די ראַקעט ס ווייכווארג. -די פּראָבלעם אויף די עריאַן איז געווען אַז עס איז געווען אַ נומער וואָס required 64 ביטן צו אויסדריקן. און זיי געוואלט צו בייַטן עס צו אַ 16-ביסל נומער. זיי אנגענומען אַז די נומער איז קיינמאָל געגאנגען צו זייַן זייער גרויס, אַז רובֿ פון יענע דידזשאַץ אין אַ 64-ביסל נומער זענען זעראָעס. זיי זענען פאַלש. -די ינאַביליטי פון איין ווייכווארג פּראָגראַם צו אָננעמען די מין פון נומער דזשענערייטאַד דורך אן אנדער איז געווען אין די שורש פון די דורכפאַל. ווייכווארג אַנטוויקלונג האט ווערן אַ זייער טייַער טייל פון נייַ טעכנאָלאָגיע. די עריאַן ראַקעט האָבן שוין זייער מצליח, אַזוי פיל פון די ווייכווארג Created פֿאַר עס איז אויך געניצט אין דעם עריאַן 5. -די יקערדיק פּראָבלעם איז געווען אַז די עריאַן 5 איז געווען Faster, אַקסעלערייטיד שנעלער. און די ווייכווארג האט נישט אַקאַונאַד פֿאַר אַז. -די צעשטערונג פון די ראַקעט איז געווען אַ ריזיק פינאַנציעל ומגליק, אַלע רעכט צו אַ מינוט ווייכווארג טעות. אבער דעם איז ניט דער ערשטער צייַט דאַטע קאַנווערזשאַן פּראָבלעמס האט פּלייגד מאָדערן ראַקעט טעכנאָלאָגיע. -אין 1991, מיט די אָנהייב פון דער ערשטער גאַלף מלחמה, די פּאַטריאָט מיסאַל יקספּיריאַנסט אַ ענלעך מין פון נומער קאַנווערזשאַן פּראָבלעם. און ווי אַ רעזולטאַט, 28 מענטשן, 28 אמעריקאנער זעלנער, האבן געהרגעט, און וועגן 100 אנדערע ווונדאַד, ווען דער פּאַטריאָט, וואָס איז געמיינט צו באַשיצן קעגן ינקאַמינג סקודס, ניט אַנדערש צו פייַער אַ מיסאַל. -ווען יראַק ינוויידיד קוווייט און אַמעריקע לאָנטשט מדבר סטאָרם אין פרי 1991, פּאַטריאָט מיסאַל באַטעריז זענען דיפּלויד צו באַשיצן סאַודי אַראַביאַ און ישראל פֿון איראַקער סקוד מיסאַל אַטאַקס. די פּאַטריאָט איז אַ יו מיטל-קייט ייבערפלאַך צו לופט סיסטעם, Manufactured דורך די רייַטהעאָן פירמע. -די גרייס פון דעם פּאַטריאָט ינטערסעפּטאָר זיך איז וועגן בעערעך 20 פֿיס לאַנג. און עס ווייז וועגן 2,000 מנים. און עס קאַריז אַ וואָרכעד פון וועגן, איך טראַכטן עס ס בעערעך 150 מנים. און די וואָרכעד זיך איז אַ הויך עקספּלאָסיווע, וואָס האט פראַגמענץ אַרום עס. די קייסינג פון די וואָרכעד איז דיזיינד צו שפּילן ווי בוקקשאָט. -די מיסאַלז זענען געטראגן פיר פּער קאַנטיינער, און זענען טראַנספּאָרטאַד דורך אַ האַלב טריילער. -די פּאַטריאָט אַנטי-מיסאַל סיסטעם גייט צוריק אין מינדסטער 20 יאר איצט. עס איז געווען ערידזשנאַלי דיזיינד ווי אַ לופט פאַרטיידיקונג מיסאַל צו דרייען אַראָפּ פייַנט ערפּליינז. אין דער ערשטער גאַלף מלחמה, ווען אַז מלחמה געקומען צוזאמען, די מיליטער געוואלט צו נוצן עס צו דרייען אַראָפּ סקודס, ניט ערפּליינז. דער יראַקי Air Force איז געווען נישט אַזוי פיל פון אַ פּראָבלעם. אבער דער מיליטער איז געווען באַזאָרגט וועגן סקודס. און אַזוי זיי פּרובירן צו אַפּגרייד די פּאַטריאָט. -ינטערסעפּטינג אַ פייַנט מיסאַל טראַוואַלינג בייַ מאַטש 5 איז געגאנגען צו זיין טשאַלאַנדזשינג גענוג. אבער ווען די פּאַטריאָט איז געווען ראַשט אין דינסט, די מיליטער איז געווען ניט אַווער פון אַ יראַקי מאָדיפיקאַטיאָן אַז געמאכט זייער סקודס קימאַט אוממעגלעך צו שלאָגן. -ווהאַט געשען איז די סקודס וואָס זענען קומענדיק אין זענען אַנסטייבאַל. זיי זענען וואָבבלינג. די סיבה פֿאַר דעם איז געווען די יראַקיס, אין סדר צו באַקומען 600 קילאָמעטערס אויס פון אַ 300 קילאָמעטער קייט מיסאַל, גענומען וואָג אויס פון די פראָנט וואָרכעד. זיי געמאכט די וואָרכעד לייטער. אַזוי איצט די פּאַטריאָט איז טריינג צו קומען אין די סקוד. און רובֿ פון די צייַט, די אָוווערוועלמינג מערהייַט פון די צייַט, עס וואָלט נאָר פליען דורך די סקוד. אַמאָל די פּאַטריאָט סיסטעם אָפּערייטערז איינגעזען די פּאַטריאָט מיסט זייַן ציל, זיי דעטאַנייטאַד דער פּאַטריאָט ס וואָרכעד צו ויסמייַדן מעגלעך קאַזשאַלטיז אויב עס איז געווען ערלויבט צו פאַלן צו די ערד. -אַז איז געווען וואָס רובֿ מענטשן געזען, יענע גרויס פירעבאַללס אין דעם הימל, און מיסאַנדערסטוד ווי ינערסעפּץ פון סקוד וואָרכעדז. -אַלטהאָוגה אין דער נאַכט סקייז, פּאַטריאָץ ארויס צו זיין הצלחה דיסטרויינג סקודס, בייַ דהאַהראַן, עס קען זיין קיין גרייַז וועגן זייַן פאָרשטעלונג. עס, די פּאַטריאָט ס ראַדאַר סיסטעם פאַרפאַלן שפּור פון אַ ינקאַמינג סקוד, און קיינמאָל לאָנטשט רעכט צו אַ ווייכווארג פלאַוו. עס איז געווען די יסראַעליס וואס ערשטער דיסקאַווערד אַז די מער די סיסטעם איז געווען אויף, די גרעסער די צייַט דיסקרעפּאַנסי געווארן, רעכט צו אַ זייגער עמבעדיד אין די סיסטעם 'ס קאָמפּיוטער. -אַבאָוט צוויי וואָכן איידער די טראַגעדיע אין דהאַהראַן, די יסראַעליס געמאלדן צו די Defense דעפּאַרטמענט אַז די סיסטעם איז געווען לוזינג צייַט. נאָך וועגן אַכט שעה אָדער פליסנדיק, זיי באמערקט אַז די סיסטעם איז געווען שיין נאָוטיסאַבלי ווייניקער פּינטלעך. די Defense דעפּאַרטמענט געזאָגט דורך טעלינג אַלע פון ​​דער פּאַטריאָט באַטעריז צו נישט לאָזן די סיסטעמען אויף פֿאַר אַ לאַנג צייַט. זיי קיינמאָל געזאגט וואָס אַ לאַנג צייַט וואַס-- אַכט שעה, 10 שעה, 1,000 שעה. קיינער געוואוסט. -די פּאַטריאָט באַטאַרייע סטיישאַנד בייַ די באַראַקס בייַ דהאַהראַן און זייַן פלאַוועד ינערלעך זייגער האט שוין אויף איבער 100 שעה אויף די נאַכט פון פעברואר 25. -עס טראַקט צייַט צו אַן אַקיעראַסי פון וועגן 1/10 פון אַ רגע. איצט, 1/10 פון אַ רגע איז אַ טשיקאַווע נומער, ווייַל עס קענען ניט זיין אויסגעדריקט אין ביינערי פּונקט, וואָס מיטל עס קענען ניט זיין אויסגעדריקט פּונקט אין קיין מאָדערן דיגיטאַל קאָמפּיוטער. עס ס שווער צו גלויבן. אבער נוצן דעם ווי אַ בייַשפּיל. זאל ס נעמען די נומער איין דריט. איינער דריט קענען ניט זיין אויסגעדריקט אין דעצימאַל פּונקט. איינער דריט איז 0.333 געגאנגען אויף פֿאַר ומענדיקייַט. עס איז קיין וועג צו טאָן אַז מיט אַבסאָלוט אַקיעראַסי אין דעצימאַל. אַז ס פּונקט דער מין פון פּראָבלעם וואָס געשען אין די פּאַטריאָט. די מער די סיסטעם געלאָפֿן, די ערגער די צייַט טעות געווארן. -אַפטער 100 שעה פון אָפּעראַציע, די טעות אין צייַט איז געווען בלויז וועגן איין דריטל פון אַ רגע. אבער אין טערמינען פון טאַרגאַטינג אַ מיסאַל טראַוואַלינג בייַ מאַטש 5, עס ריזאַלטיד אין אַ טראַקינג טעות פון איבער 600 מעטער. עס וואָלט זיין אַ פאַטאַל טעות פֿאַר די זעלנער אויף וואָס געשען איז אַ סקוד קאַטער איז געווען דיטעקטאַד דורך פרי ווארענונג סאַטאַלייץ און זיי געוואוסט אַז די סקוד איז געווען קומענדיק אין זייער גענעראַל ריכטונג. זיי האבן ניט וויסן ווו עס איז געווען קומען. -עס איז איצט אַרויף צו די ראַדאַר קאָמפּאָנענט פון די פּאַטריאָט סיסטעם דעפענדינג דהאַהראַן צו געפינען און האַלטן שפּור פון די ינקאַמינג פייַנט מיסאַל. -די ראַדאַר איז זייער קלוג. עס וואָלט אַקטשאַוואַלי שפּור די שטעלע פון ​​די סקוד, און דעמאָלט פאָרויסזאָגן ווו עס מיסטאָמע וואָלט זייַן די ווייַטער צייַט די ראַדאַר געשיקט אַ דויפעק אויס. וואס איז געווען געהייסן אַ קייט טויער. -טהען, אַמאָל דער פּאַטריאָט דיסיידז גענוג צייַט האט דורכגעגאנגען צו גיין צוריק און קאָנטראָלירן דעם ווייַטער אָרט פֿאַר דעם דיטעקטאַד כייפעץ, עס גייט צוריק. אַזוי ווען עס געגאנגען צוריק צו די אומרעכט אָרט, עס דעמאָלט זעט ניט כייפעץ. און עס דיסיידז אַז עס איז קיין כייפעץ, עס איז געווען אַ פאַלש דיטעקשאַן, און דראָפּס דער שפּור. -די ינקאַמינג סקוד פאַרשווונדן פון די ראַדאַר פאַרשטעלן. און סעקונדעס שפּעטער, עס סלאַמד אין די באַראַקס. די סקוד געהרגעט 28, און איז געווען די לעצטע איין FIRED בעשאַס דער ערשטער גאַלף מלחמה. טראַדזשיקלי, די ופּדאַטעד ווייכווארג אנגעקומען אין דהאַהראַן די ווייַטערדיק טאָג. די ווייכווארג פלאַוו האט שוין פאַרפעסטיקט, קלאָוזינג איין קאַפּיטל אין דער ומרויק געשיכטע פון ​​די פּאַטריאָט מיסאַל. [ווידעא פּלייבאַק] דוד י מאַלאַן: אזוי דאָס איז אַלע צו זאָגן אַז די ישוז פון לויפן און ימפּרעסיסיאָן זענען אַלע אויך פאַקטיש. אזוי ווי האט מיר באַקומען דאָ? מיר אנגעהויבן מיט נאָר גערעדט וועגן פּרינטף. ווידער, דעם פֿונקציע אַז פּרינץ עפּעס צו די פאַרשטעלן, און מיר באַקענענ דערנאָכדעם אַ ביסל אנדערע פֿעיִקייטן פֿון די אַזוי-גערופֿן קס50 ס ביבליאָטעק. און מיר וועט פאָרזעצן צו זען די אין רעכט צייַט. און מיר, דער הויפּט, געניצט באַקומען שטריקל, און באַקומען ינט, און איצט אויך באַקומען לאָזנ שווימען, און נאָך אנדערע נאָך וועלן מיר טרעפן און נוצן זיך איידער לאַנג. אבער אויף געלעגנהייַט, האָבן מיר שוין געזען אַ נויט צו קראָם וואָס יענע פֿעיִקייטן האַנט צוריק? זיי האַנט אונדז צוריק אַ שטריקל, אָדער אַ ינט אָדער אַ לאָזנ שווימען. און מאל מיר דאַרפֿן צו שטעלן אַז שטריקל, אָדער ינט, אָדער לאָזנ שווימען, ערגעץ. און צו קראָם יענע זאכן, צוריקרופן פּונקט ווי אין קראַצן, מיר האָבן וועריאַבאַלז. אבער ניט ענלעך אין קראַצן, אין C מיר האָבן פאַקטיש טייפּס פון וואַריאַבלעס-- דאַטן טייפּס, מער גענעראַללי-- צווישן זיי, אַ שטריקל, אַ ינט, אַ לאָזנ שווימען, און די אנדערע נאָך. און אַזוי ווען מיר דערקלערן וועריאַבאַלז אין C, מיר וועט האָבן צו דערקלערן אונדזער דאַטן טייפּס. דאס איז נישט עפּעס מיר וועט האָבן צו טאָן שפּעטער אין די זמאַן ווי מיר יבערגאַנג צו אנדערע שפּראַכן. אבער פֿאַר איצט, מיר טאָן דאַרפֿן צו אַ פּריאָרי אין שטייַגן, דערקלערן צו די קאָמפּיוטער וואָס טיפּ פון בייַטעוודיק מיר ווילן עס צו געבן אונדז. איצט, דערווייַל, צו דרוקן יענע מינים פון דאַטן טייפּס, מיר האָבן צו זאָגן פּרינטף וואָס צו דערוואַרטן. און מיר געזען פּראָצענט ס פֿאַר סטרינגס, און פּראָצענט איך פֿאַר ינטאַדזשערז, און אַ ביסל אנדערע שוין. און יענע זענען נאָר רעקווירעמענץ פֿאַר די וויסואַל פּרעזענטירונג פון אַז אינפֿאָרמאַציע. און יעדער פון די קענען אַקטשאַוואַלי זיין פּאַראַמעטריזעד אָדער טוויקט אין עטלעכע וועג, אויב איר ווילן צו ווייַטער קאָנטראָל דעם טיפּ פון פּראָדוקציע אַז איר באַקומען. און, אין פאַקט, עס טורנס אויס אַז נישט בלויז איז עס באַקקסלאַש N פֿאַר אַ נייַ שורה. עס ס עפּעס אַנדערש גערופֿן באַקקסלאַש ר פֿאַר אַ וועגעלע קריק, וואָס איז מער קרויוויש צו אַ אַלט שולע שרייַבמאַשין, און אויך ווינדאָוז געניצט פֿאַר פילע יאָרן. עס ס באַקקסלאַש ה פֿאַר טאַבס. טורנס אויס, אַז אויב איר ווילן צו טאָפּל ציטירן ין פון אַ שטריקל, צוריקרופן אַז מיר ווע געניצט טאָפּל ציטירן טאָפּל ציטירן אויף די לינקס און די רעכט ענדס פון אונדזער סטרינגס אַזוי ווייַט. וואָס וואָלט ויסקומען צו צעטומלען זאכן. אויב איר ווילן צו שטעלן אַ טאָפּל ציטירן אין די מיטן פון אַ סטרינג-- און, טאַקע, עס איז קאָנפוסינג צו זען. און אַזוי איר האָבן צו אַנטלויפן, אַזוי צו רעדן, אַ טאָפּל ציטירן מיט עפּעס ווי, ממש, באַקקסלאַש טאָפּל ציטירן. און דאָרט ס אַ ביסל אנדערע נאָך. און מיר וועט זען מער פון יענע אין פאַקטיש נוצן איידער לאַנג. אַזוי לאָזן ס איצט יבערגאַנג פון דאַטן, און פאַרטרעטונג, און אַריטמעטיק אָפּערייטערז, אַלע פון וואָס געגעבן אונדז עטלעכע בנין בלאַקס מיט וואָס צו שפּילן. אבער איצט לאָזן ס אַקטשאַוואַלי געבן אונדז די מנוחה פון די וואָקאַבולאַרי וואָס מיר שוין געהאט לעצטע וואָך מיט קראַצן דורך גענומען אַ קוק בייַ עטלעכע אנדערע קאַנסטראַקץ אין ק-- ניט אַלע פון ​​זיי. אבער די געדאנקען מיר רע וועגן צו זען טאַקע נאָר צו ונטערשטרייַכן די איבערזעצונג פון איין לשון, קראַצן, צו אן אנדער, סי און איבער צייַט, מיר וועט קלייַבן אַרויף מער מכשירים פֿאַר אונדזער טאָאָלקיט, אַזוי צו רעדן, סינטאַקטיקאַללי. און, טאַקע, איר וועט זען אַז די געדאנקען זענען איצט גאַנץ באַקאַנט פֿון לעצטע וואָך. אַזוי לאָזן ס טאָן דעם. זאל ס גיין פאָרויס און בייַטש אַרויף אַ פּראָגראַם אַז אַקטשאַוואַלי ניצט עטלעכע אויסדרוקן, אַ באָאָלעאַן אויסדרוק. זאל מיר גיין פאָרויס דאָ און שאַפֿן אַ נייַ טעקע. איך וועט רופן דעם קאָנדיטיאָנ.ק. זאל מיר גיין פאָרויס און אַרייַננעמען די קס50 ביבליאָטעק. און לאָזן מיר גיין פאָרויס און אַרייַננעמען נאָרמאַל יאָ.ה פֿאַר אונדזער פֿעיִקייטן, און פּרינטף, און מער ריספּעקטיוולי. זאל מיר געבן זיך אַז באָילערפּלאַטע פון ינט הויפּט פּאָסל, וועמענס דערקלערונג מיר וועט קומען צוריק צו אין דער צוקונפֿט. איצט לאָזן מיר גיין פאָרויס און געבן זיך אַ ינט דורך באַקומען ינט. דעריבער לאָזן מיר גיין פאָרויס און טאָן דעם. איך ווילן צו זאָגן אויב איך איז לעסס-- לאָזן ס ויסטיילן צווישן positive, נעגאַטיוו, אָדער נול וואַלועס. אַזוי אויב איך איז ווייניקער ווי נול, לאָזן מיר נאָר האָבן דעם פּראָגראַם נאָר זאָגן, נעגאַטיוו, באַקקסלאַש ן, אַנדערש אויב איך איז גרעסער ווי נול. איצט איך בין, פון קורס, געגאנגען צו זאָגן פּרינטף positive, באַקקסלאַש ן. און דעריבער אַנדערש יפ-- איך קען טאָן דעם. איך קען טאָן אויב איך יקוואַלז 0. אבער איך 'ד ווערן געמאכט בייַ לפּחות איין גרייַז שוין. ריקאָל אַז די גלייַך צייכן איז ניט גלייַך, ווי מיר יומאַנז וויסן עס. אבער עס ס די אַסיינמאַנט אָפּעראַטאָר. און מיר טאָן ניט ווילן צו נעמען 0 אויף די רעכט און לייגן עס אין איך אויף די לינקס. אזוי צו ויסמייַדן דעם צעמישונג, אָדער טאָמער מיסיוז פון די יקוואַלז צייכן, יומאַנז באַשלאָסן עטלעכע יאר צוריק אַז אין פילע פּראָגראַממינג שפּראַכן ווען איר ווילן צו טשעק פֿאַר יקוואַלאַטי צווישן די לינקס און די רעכט, איר אַקטשאַוואַלי נוצן יקוואַלז יקוואַלז. אזוי איר שלאָגן די יקוואַלז צייכן צוויי מאָל. ווען איר ווילן צו באַשטימען פון רעכט צו לינקס, איר נוצן אַ איין גלייַך צייכן. אַזוי מיר קען טאָן טהיס-- אַנדערש אויב איך יקוואַלז יקוואַלז נול. איך קען דעמאָלט גיין און עפענען מיין געגרייַזלט ברייסאַז, און זאָגן, פּרינטף 0, באַקקסלאַש ן, געטאן. אבער געדענקען ווי די Forks אין דעם וועג קענען אַרבעט. און, טאַקע, נאָר טראַכטן וועגן די לאָגיק. איך איז אַ נומער. עס ס אַ ינטאַדזשער, ספּעסיפיקאַללי. און אַז מיטל עס ס 'געגאנגען צו זייַן ווייניקער ווי 0, אָדער גרעסער ווי 0, אָדער 0. אזוי עס איז מין פון דעם ימפּלייד ניט ויסצאָלן פאַל. און אַזוי מיר קען, פּונקט ווי קראַצן, דיספּענס מיט די אַנדערש אויב, און נאָר זאָגן אַנדערש. לאָגיקאַללי, אויב איר די פּראָגראַמיסט וויסן עס ס נאָר דרייַ באַקאַץ אין וואָס אַ סצענאַר קענען פאַלל-- דער ערשטער, די רגע, אָדער די דריט אין דעם קאַסע-- טאָן ניט אַרן אַדינג די נאָך פּינטלעכקייַט און דער נאָך לאָגיק דאָרט. נאָר גיין פאָרויס מיט די ניט ויסצאָלן פאַל דאָ פון אַנדערש. איצט, לאָזן ס גיין פאָרויס נאָך שפּאָרן דעם, מאַכן טנאָים פּינטעלע צעהאַקן קאָנדיטיאָנס-- ניט אַ גרויס באַניצער צובינד, ווייַל איך בין נישט פּראַמפּטינג די באַניצער, ווי איך דערמאנט פריער. אבער אַז ס 'פייַן. מיר וועט האַלטן עס פּשוט. זאל ס פּרובירן די נומער 42. און אַז ס positive. זאל ס פּרובירן דעם נומער נעגאַטיוו 42, נעגאַטיוו. זאל ס פּרובירן דעם ווערט 0. און, טאַקע, עס אַרבעט. איצט, איר וועט זען מיט פּראָבלעמס איידער לאַנג, טעסטינג זאכן דרייַ מאל, מיסטאָמע נישט גענוג. איר מיסטאָמע ווילן צו פּרובירן עטלעכע ביגער נומערן, עטלעכע קלענערער נומערן, עטלעכע ווינקל קאַסעס, ווי מיר וועט קומען צו באַשרייַבן זיי. אבער פֿאַר איצט, דאָס איז אַ שיין פּשוט פּראָגראַם. און איך בין שיין זיכער, לאַדזשיקלי, אַז עס Falls אין דרייַ קאַסעס. און, טאַקע, אַפֿילו כאָטש מיר נאָר פאָקוסעד אויף דער פּאָטענציעל דאַונסיידז פון ימפּרעסיסיאָן און לויפן, אין פאַקט ווו פילע פון ​​קס50 ס פּראָבלעמס, מיר זענען נישט געגאנגען צו זאָרג וועגן, אַלע די צייַט, יענע ישוז פון לויפן און ימפּרעסיסיאָן, ווייַל, אין פאַקט, אין C, עס ס אַקטשאַוואַלי ניט אַלע אַז גרינג צו ויסמייַדן יענע זאכן. אויב איר ווילן צו ציילן אַרויף ביגער, און ביגער, און ביגער, עס טורנס אויס עס זענען טעקניקס איר קענען נוצן, אָפֿט ינוואַלווינג זאכן גערופֿן לייברעריז, זאמלונגען פון קאָד, וואָס אנדערע מענטשן געשריבן אַז איר קענען נוצן, און אנדערע שפּראַכן ווי ז'אבא און אנדערע, טאקע מאַכן עס אַ פּלאַץ גרינגער צו ציילן אַפֿילו העכער. אזוי עס טאַקע איז עטלעכע פון ​​די דיינדזשערז אַ פֿונקציע פון ​​די שפּראַך איר נוצן. און אין די קומענדיק וואָכן, מיר וועט זען ווי געפערלעך C טאַקע קענען זיין אויב איר טאָן ניט נוצן עס רעכט. אבער פון דאָרט, און מיט פּיטהאָן, און דזשאַוואַסקריפּט, וועט מיר שיכטע אויף עטלעכע נאָך פּראַטעקשאַנז, און לויפן ווייניקערע פון ​​יענע ריסקס. אַזוי לאָזן ס מאַכן אַ ביסל מער טשיקאַווע לאָגיק אין אונדזער פּראָגראַם. אַזוי לאָזן מיר גיין פאָרויס און שאַפֿן אַ פּראָגראַם געהייסן לאַדזשיקאַל פּונקט אַזוי איך קענען שפּילן מיט עטלעכע פאַקטיש לאָגיק, לאָגיקאַל.ק. איך וועט נאָר נאָכמאַכן און פּאַפּ עטלעכע קאָד פון פריער אַזוי איך באַקומען צוריק צו דעם פייַן סטאַרטינג פונט. זאל מיר דעם צייַט טאָן טשאַר סי איך בין געגאנגען צו געבן עס אַ נאָמען פון C נאָר ווייַל עס ס קאַנווענשאַנאַל, באַקומען אַ כאַראַקטער פון דעם באַניצער. און לאָזן ס פאַרהיטן ווי איך בין ימפּלאַמענטינג טייל פון וואָס רם פּראָגראַם, די באַזייַטיקן פּראָגראַם איידער אַז פּראַמפּטיד די וסערס צו באַזייַטיקן אַ טעקע. ווי קען מיר טאָן דעם? איך ווילן צו זאָגן, אויב C יקוואַלז יקוואַלז, ציטירן ונקוואָטע, י, דעמאָלט איך בין געגאנגען צו יבערנעמען אַז דער באַניצער האט אויסדערוויילט יאָ. איך בין נאָר געגאנגען צו דרוקן יאָ. אויב עס זענען געווען אַקשלי שרייבן די באַזייַטיקונג פּראָגראַם, מיר קען צונעמען די טעקע מיט מער שורות פון קאָד. אָבער מיר וועט האַלטן עס פּשוט. אַנדערש אויב C יקוואַלז יקוואַלז נ-- און איצט דאָ, איך בין געגאנגען צו זאָגן, דער באַניצער מוזן האָבן מענט ניט. און דעריבער אַנדערש, איר וויסן וואָס? איך טאָן ניט וויסן וואָס אַנדערש דער באַניצער איז געגאנגען צו טיפּ. אזוי איך בין נאָר געגאנגען צו זאָגן אַז וואָס איז אַ טעות, וועלכער ער אָדער זי אַקשלי טייפּט. אַזוי וואָס ס געגאנגען אויף דאָ? עס איז אַ פונדאַמענטאַל חילוק קעגן וואָס איך ווע געטאן אין דער פאַרגאַנגענהייַט. טאָפּל קוואָטעס, טאָפּל קוואָטעס, טאָפּל ציטירט, און, נאָך, איין קוואָטעס, איין קוואָטעס. עס טורנס אויס אין C, אַז ווען איר ווילן צו שרייַבן אַ שטריקל, איר טאָן נוצן טאָפּל קוואָטעס, פּונקט ווי מיר ווע שוין ניצן אַלע דעם מאָל מיט פּרינטף. אבער אויב איר ווילן צו האַנדלען מיט נאָר אַ איין כאַראַקטער, אַ אַזוי-גערופֿן טשאַר, דעמאָלט איר אַקטשאַוואַלי נוצן איין קוואָטעס. יענע פון ​​איר וואס ווע פּראָוגראַמד איידער, איר זאל ניט האָבן האט צו זאָרג וועגן דעם דיסטינגקשאַן אין זיכער שפּראַכן. אין C, עס טוט ענין. און אַזוי ווען איך באַקומען אַ טשאַר, און איך ווילן צו פאַרגלייַכן וואָס טשאַר ניצן יקוואַלז יקוואַלז צו עטלעכע בריוו ווי י אָדער ן, איך טאָן, טאַקע, דאַרפֿן צו האָבן די איין קוואָטעס. איצט, לאָזן ס גיין פאָרויס און טאָן דעם. זאל ס גיין פאָרויס און טאָן מאַכן לאַדזשיקאַל פּינטעלע צעהאַקן לאַדזשיקאַל. און איצט איך בין ווייל פּראַמפּטיד. אַזוי, מאַשמאָעס, אַ בעסער באַניצער דערפאַרונג וואָלט אַקטשאַוואַלי דערציילן מיר וואָס צו טאָן דאָ. אבער איך בין געגאנגען צו נאָר בליינדלי זאָגן י פֿאַר יאָ, גוט, פייַן. זאל ס לויפן עס ווידער, N פֿאַר ניט, פייַן. רעכן ווי זיכער מענטשן איך וויסן, מיין קאַפּס לאַק שליסל איז אויף אַלע אויך אָפֿט. אַזוי איך טאָן הויפּטשטאָט י, אַרייַן, טעות. גוט, עס ס ניט פּונקט וואָס איך בין יקספּעקטינג. טאקע, דער קאָמפּיוטער איז טאן ממש וואָס איך דערציילט אים צו דאָ-- טשעק פֿאַר לאָווערקאַסע י און לאָווערקאַסע ן. דאס טוט נישט פילן ווי גוט באַניצער דערפאַרונג, כאָטש. זאל מיר פרעגן פֿאַר און אָננעמען יעדער נידעריקער פאַל אָדער אויבערשטער קאַסטן. אַזוי עס טורנס אויס, איר זאל וועלן צו זאָגן עפּעס ווי אין קראַצן, ווי ממש אָדער C יקוואַלז יקוואַלז הויפּטשטאָט איין ציטירטן י. טורנס אויס, C טוט נישט האָבן דעם פּשאַט קיווערד אָדער. אָבער עס טוט האָבן צוויי ווערטיקאַל באַרס. איר האָבן צו האַלטן יבעררוק יוזשאַוואַלי, אויב איר ניטאָ ניצן אַ יו קלאַוויאַטור, און שלאָגן די ווערטיקאַל באַר שליסל אויבן דיין צוריקקער שליסל. אבער דעם ווערטיקאַל באַר ווערטיקאַל באַר מיטל אָדער. אויב, דורך קאַנטראַסט, מיר געוואלט צו זאָגן און, ווי אין קראַצן, מיר קען טאָן אַמפּערסאַנד אַמפּערסאַנד. אַז מאכט קיין לאַדזשיקאַל זינען דאָ, ווייַל אַ מענטש קען ניט עפשער האָבן טייפּט ביידע וויי און לאָווערקאַסע י און הויפּטשטאָט י ווי די זעלבע כאַראַקטער. אַזוי אָדער איז וואָס מיר אויסן דאָ. אַזוי אויב איך טאָן דעם אין ביידע ערטער, אָדער C יקוואַלז יקוואַלז הויפּטשטאָט ן, איצט ריראַן, מאַכן לאַדזשיקאַל, ריראַן לאַדזשיקאַל. איצט, איך קענען טיפּ י. און איך קענען טאָן עס ווידער מיט קאַפּיטאַל י, אָדער הויפּטשטאָט ען און איך קען לייגן אין נאָך קאַמבאַניישאַנז נאָך. אַזוי דעם איז אַ לאַדזשיקאַל פּראָגראַם ינסאָפאַר ווי איצט איך בין קאָנטראָלירונג לאַדזשיקלי פֿאַר דעם ווערט אָדער דעם ווערט. און איך טאָן ניט האָבן צו, דאַווקע, קומען אַרויף מיט צוויי מער Ifs אָדער אַנדערש Ifs. איך קענען אַקטשאַוואַלי פאַרבינדן עטלעכע פון ​​די Related לאָגיק צוזאַמען אין דעם וועג. אַזוי דעם וואָלט זייַן בעסער דיזיינד ווי נאָר אַזוי צו זאָגן: אויב C יקוואַלז נידעריקער פאַל י, דרוק יאָ, אַנדערש אויב C יקוואַלז הויפּטשטאָט י, דרוק יאָ, אַנדערש אויב C יקוואַלז לאָווער-- אין אנדערע ווערטער, איר טאָן ניט האָבן צו האָבן מער און מער צווייגן. איר קענען פאַרבינדן עטלעכע פון ​​די עקוויוואַלענט צווייגן לאַדזשיקלי, ווי אין דעם וועג. אַזוי לאָזן ס נעמען אַ קוק אין נאָר איינער לעצט ינגרידיאַנט, איינער לעצט בויען, אַז C אַלאַוז. און מיר וועט קומען צוריק אין דער צוקונפֿט צו אנדערע נאָך. און דעמאָלט מיר וועט פאַרענדיקן דורך קוקן בייַ ניט די קערעקטנאַס פון קאָדע-- געטינג קאָד צו וואָרק-- אָבער די פּלאַן פון קאָד, און פאַרזעצן די זאמען פרי אויף. אַזוי לאָזן מיר גיין פאָרויס און עפענען אַרויף אַ נייַ טעקע דאָ. ווייסט וואס? איך בין געגאנגען צו שייַעך-ינסטרומענט אַז זעלביקער פּראָגראַם, אָבער ניצן אַ אַנדערש בויען. אַזוי לאָזן מיר געשווינד געבן זיך צוטריט צו אַרייַננעמען קס50.ה פֿאַר די קס50 ביבליאָטעק, נאָרמאַל יאָ.ה פֿאַר פּרינטף. גיב מיר מיין ינט הויפּט פּאָסל. און דעמאָלט איבער דאָ, לאָזן מיר גיין פאָרויס און טאָן דעם. טשאַר C געץ באַקומען טשאַר, נאָר ווי איידער. און איך בין געגאנגען צו נוצן אַ נייַ בויען נאָוו-- באַשטימען, אויף וואָס כאַראַקטער? אַזוי באַשטימען מין פון ווי סוויטשינג אַ באַן טראַקס. אָדער, טאַקע, עס איז מין פון אַ אויב אַנדערש, אויב אַנדערש אויב, אָבער געשריבן עפּעס אנדערש. אַ באַשטימען קוקט ווי דעם. איר האָבן יבערבייַט, און דעמאָלט וואָס כאַראַקטער אָדער נומער איר ווילן צו קוקן בייַ, דעמאָלט עטלעכע געגרייַזלט ברייסאַז ווי אין קראַצן, נאָר זאָגן טאָן דעם שטאָפּן. און דעמאָלט איר האָבן פאַרשידענע קאַסעס. איר טאָן ניט נוצן אויב און אַנדערש. איר ממש נוצן דעם וואָרט פאַל. און איר וואָלט זאָגן עפּעס ווי דעם. אַזוי אין דעם פאַל פון אַ לאָווערקאַסע י, אָדער אין די פאַל פון אַ קאַפּיטאַל י, גיין פאָרויס און דרוקן אויס יאָ. און דעמאָלט ברעכן אויס פון די באַשטימען. דאס איז עס. מיר 'רע געטאן. אַנדערש אויב, אַזוי צו רעדן, נידעריקער פאַל ן, אָדער הויפּטשטאָט ן, דעמאָלט גיין פאָרויס און דרוקן אויס קיין, און דעמאָלט ברעכן. עלסע-- און דעם מין פון איז די ניט ויסצאָלן פאַל ינדעעד-- פּרינטף ערראָר-- און נאָר פֿאַר גוט מאָס, כאָטש לאַדזשיקלי דעם ברעכן איז ניט נייטיק ווייַל מיר ניטאָ אין די סוף פון די באַשטימען סייַ ווי סייַ, איך בין איצט ברייקינג אויס פון די באַשטימען. אַזוי דעם קוקט אַ ביסל אַנדערש. אבער, לאַדזשיקלי, עס ס אַקשלי עקוויוואַלענט. און וואָס וואָלט איר נוצן איינער איבער די אנדערע? ווענ עס יז, נאָר פּערזענלעך ייבערהאַנט, מאל די עסטעטיק, אויב איך בליק בייַ דעם איצט, עס ס 'עפּעס צו ווערן געזאגט פֿאַר די רידאַביליטי פון דעם קאָד. איך מיינען, קיינמאָל מיינונג דעם פאַקט אַז דעם קאָד איז נייַ צו פילע פון ​​אונדז אין די צימער. אבער עס נאָר מין פון איז שיין. איר זען לאָווערקאַסע וויי, הויפּטשטאָט י, נידעריקער פאַל ן, הויפּטשטאָט ען ניט ויסצאָלן, עס נאָר מין פון דזשאַמפּס אויס בייַ איר אין אַ וועג אַז, אַרגיואַבלי, אפֿשר די פֿריִערדיקע בייַשפּיל מיט די Ifs, און די ווערטיקאַל באַרס, און די אַנדערש Ifs, זאל ניט האָבן. אַזוי דעם איז טאַקע אַ ענין פון פּערזענלעך ברירה, טאַקע, אָדער רידאַביליטי, פון די קאָד. אבער אין טערמינען פון פונקטיאָנאַליטי, לאָזן מיר גיין פאָרויס און מאַכן אַ באַשטימען, פּונקט צעהאַקן יבערבייַט, און איצט טיפּ אין לאָווערקאַסע י, קאַפּיטאַל י, לאָווערקאַסע ן, הויפּטשטאָט ן, דוד, ריטריי ווייַל אַז ס ניט אַ איין כאַראַקטער. זאל ס טאָן X, טעות, ווי געריכט. און, לאָגיקאַללי-- און דעם איז עפּעס איך וואָלט מוטיקן אין גענעראַל-- אַפֿילו כאָטש מיר רע נאָר סקראַטשינג די ייבערפלאַך פון עטלעכע פון ​​די פֿעיִקייטן. און עס זאל נישט זייַן קלאָר ווי דער טאָג ווען איר זיך זיצן אַראָפּ בייַ די קלאַוויאַטור, ווי טוט דאָס אַרבעט? וואָס וואָלט דאָס טאָן? די שיין זאַך וועגן בעת אַ לאַפּטאַפּ, אָדער דעסקטאַפּ, אָדער צוטריט צו אַ קאָמפּיוטער מיט אַ קאַמפּיילער, און מיט אַ קאָד רעדאַקטאָר ווי דעם, איז איר קענען כּמעט שטענדיק ענטפֿערן די שאלות פֿאַר זיך נאָר דורך טריינג. פֿאַר בייַשפּיל, אויב דער מליצות קשיא אין האַנט זענען געווען, וואָס כאַפּאַנז אויב איר פאַרגעסן דיין ברעכן סטייטמאַנץ? וואָס איז אַקשלי אַ זייער פּראָסט זאַך צו טאָן, ווייַל עס טוט נישט קוקן ווי איר טאַקע דאַרפֿן זיי. זיי טאָן ניט טאַקע גאַנץ אייער געדאַנק ווי אַ פּאַרענטהעסיס אָדער אַ געגרייַזלט בראַסע טוט. זאל ס גיין פאָרויס און רעקאָמפּילע די קאָד און זען. אזוי מאַכן באַשטימען, פּונקט צעהאַקן באַשטימען. זאל ס דרוקן אין נידעריקער פאַל וויי, די שפּיץ פאַל, קומען. אַזוי איך טייפּט י. דער פּראָגראַם האט יאָ, ניט, טעות, ווי כאָטש עס איז געווען טשאַנגינג זייַן מיינונג. אבער עס מין פון איז געווען, ווייַל וואָס כאַפּאַנז מיט אַ באַשטימען איז דער ערשטער פאַל אַז גלייַכן יסענשאַלי מיטל, היי קאָמפּיוטער, ויספירן אַלע פון ​​די קאָד ונטער עס. און אויב איר טאָן ניט זאָגן ברעכן, אָדער טאָן ניט זאָגן ברעכן, אָדער טאָן ניט זאָגן ברעכן, די קאָמפּיוטער איז געגאנגען צו קלאַפּ דורך אַלע פון ​​די שורות און ויספירן אַלע פון ​​זיי ביז עס געץ צו אַז געגרייַזלט בראַסע. אזוי די בראַקעס זענען, טאַקע, נייטיק. אבער אַ טאַקעאַווייַ דאָ איז, ווען אין צווייפל, פּרובירן עפּעס. אפֿשר ראַטעווען דיין קאָד ערשטער, אָדער שפּאָרן עס אין אַ עקסטרע טעקע אויב איר ניטאָ טאַקע באַזאָרגט וועגן מעסינג אַרויף און נאכדעם צו צוריקקריגן די אַרבעט אַז איר וויסן איז אַרבעט. אבער פּרובירן זאכן. און טאָן ניט זיין ווי דערשראָקן, טאָמער, פון וואָס די קאָמפּיוטער זאל טאָן, אָדער אַז איר זאל ברעכן עפּעס. איר קענען שטענדיק צוריקקומען צוריק צו עטלעכע פריער ווערסיע. אזוי לאָזן 'ס סוף דורך קוקן בייַ די פּלאַן פון קאָד. מיר האָבן דעם פיייקייַט איצט צו שרייַבן באדינגונגען, און שרייַבן לופּס, און וועריאַבאַלז, און רופן פֿעיִקייטן. אַזוי, פראַנקלי, מיר רע מין פון צוריק אין ווו מיר זענען געווען אַ וואָך צוריק מיט קראַצן, אָלבייט מיט אַ ווייניקער קאַמפּעלינג טעקסטשאַוואַל סוויווע ווי קראַצן אַלאַוז. אבער באַמערקן ווי געשווינד מיר ווע קונה אַז וואָקאַבולאַרי, אַפֿילו אויב עס ס געגאנגען צו נעמען אַ קליין בשעת צו זינקען אין, אַזוי אַז מיר קענען איצט נוצן דעם וואָקאַבולאַרי צו שרייַבן מער טשיקאַווע מגילה. און לאָזן ס נעמען אַ בעיבי שריט צו וואָס, ווי גייט. זאל מיר גיין פאָרויס און שאַפֿן אַ נייַ טעקע דאָ. איך בין געגאנגען צו רופן דעם פּראָטאָטיפּע.ק, און פאָרשטעלן פֿאַר די ערשטער מאָל, די פיייקייַט צו מאַכן דיין אייגן פֿעיִקייטן. עטלעכע פון ​​איר זאל האָבן געטאן דעם מיט קראַצן, ווערביי איר קענען מאַכן אייער אייגן מנהג בלאַקס אין סקראַטטש, און דעמאָלט שלעפּן זיי אין פּלאַץ ווו נאָר איר 'ד ווי אין סי און אין רובֿ פּראָגראַממינג שפּראַכן, איר קענען טאָן פּונקט טהאַט-- מאַכן אייער אייגן פֿעיִקייטן, אויב זיי טאָן ניט שוין עקסיסטירן. אַזוי, פֿאַר בייַשפּיל, לאָזן מיר גיין פאָרויס און אַרייַננעמען קס50.ה, און אַרייַננעמען נאָרמאַל יאָ.ה, ינט הויפּט פּאָסל. און איצט מיר האָבן אַ פּלאַסעהאָלדער גרייט צו גיין. איך האַלטן דרוקן דאס ווי מענטשן ס נעמען הייַנט. און אַז Feels ליקע-- וואָלט ניט זיין פייַן אויב עס זענען געווען אַ פֿונקציע גערופֿן דרוקן נאָמען? איך טאָן ניט האָבן צו נוצן פּרינטף. איך טאָן ניט האָבן צו געדענקען אַלע דעם פֿאָרמאַט קאָודז. וואָס טאָן ניט איך, אָדער וואָס האט ניט עמעצער איידער מיר, שאַפֿן אַ פֿונקציע גערופֿן דרוקן נאָמען, וואָס געגעבן עטלעכע נאָמען, נאָר פּרינץ עס אויס? אין אנדערע ווערטער, אויב איך זאָגן, היי, קאָמפּיוטער, געבן מיר אַ שטריקל דורך אַסקינג דער באַניצער פֿאַר אַזאַ, דורך קס50 ס באַקומען שטריקל פֿונקציע. היי, קאָמפּיוטער, שטעלן אַז שטריקל אין די בייַטעוודיק אין די לינקס האַנט זייַט, און רוף עס ס. און דעמאָלט, היי קאָמפּיוטער, גיין פאָרויס און דרוק אַז מענטש ס נאָמען, געטאן. איצט, עס וואָלט זיין פייַן, ווייַל דעם פּראָגראַם, אַפּטלי געהייסן, דערציילט מיר וואָס עס ס געמיינט צו טאָן דורך וועג פון יענע פֿונקציע 'ס נעמען. זאל מיר גיין און מאַכן פּראָוטאַטייפּ, קומען. און, ליידער, דעם איז ניט געגאנגען צו פליען. פּראָטאָטיפּע.ק, שורה 7, כאַראַקטער 5, טעות, ימפּליסאַט דעקלאַראַציע פון פונקציאָנירן דרוקן נאָמען איז פאַרקריפּלט אין ק99, ק99 טייַטש אַ ווערסיע פון ​​C אַז געקומען אויס אין 1999. אַז ס אַלע. אַזוי איך טאָן ניט וויסן וואָס אַלע פון ​​דעם מיטל נאָך. אבער איך טאָן דערקענען טעות אין רויט. אַז ס 'שיין קלאָר ווי דער טאָג. און עס מיינט אַז מיט די גרין כאַראַקטער דאָ, די אַרויסגעבן איז מיט דרוקן נאָמען, עפענען פּאַרען ס, נאָענט פּאַרען, האַלב-צווייפּינטל. אבער ימפּליסאַט דעקלאַראַציע פון פֿונקציע מיר האבן זען בעקיצער פריער. דעם מיטל, נאָר, אַז קלאַנג טוט ניט וויסן וואָס איך מיינען. איך ווע געניצט אַ וואָקאַבולאַרי וואָרט אַז עס ס קיינמאָל געזען אָדער שוין געלערנט איידער. און אַזוי איך דאַרפֿן צו לערנען עס וואָס דעם פֿונקציע מיטל. אַזוי איך בין געגאנגען צו גיין פאָרויס און טאָן אַז. איך בין געגאנגען צו גיין פאָרויס און מאַכשער מיין אייגן פֿונקציע גערופֿן דרוק דעם נאָמען. און איך בין געגאנגען צו זאָגן, ווי גייט, וואָס עס טוט דעם, פּרינטף, העלא, פּראָצענט ס, באַקקסלאַש ן, נאָמען, האַלב-צווייפּינטל. אזוי וואָס האט איך נאָר טאָן? אַזוי עס טורנס אויס, צו ינסטרומענט אייער אייגן פֿונקציע, מיר מין פון באָרגן עטלעכע פון די זעלבע סטרוקטור ווי הויפּט וואָס מיר ווע נאָר געווען גענומען פֿאַר געגעבן, און איך וויסן פּונקט קאַפּיינג און פּאַסטינג שיין פיל וואָס איך ווע שוין שרייבן אין די פאַרגאַנגענהייַט. אבער באַמערקן דעם מוסטער דאָ. ינט, הויפּט, פּאָסל, מיר וועט רייצנ זיך באַזונדער איידער לאַנג וואָס אַז אַקטשאַוואַלי מיטל. אבער פֿאַר הייַנט, נאָר באַמערקן די פּאַראַללעליסם. פּאָסל, דרוקן נאָמען, שטריקל נאָמען, אַזוי עס ס אַ לילאַ קיווערד, וואָס מיר רע געגאנגען צו אָנהייבן פאַך אַ צוריקקומען טיפּ, די נאָמען פון די פֿונקציע, און דעמאָלט דער ינפּוט. אַזוי, אַקשלי, מיר קענען דיסטילל דעם מין פון ווי לעצט וואָך ווי, דאָס איז די נאָמען אָדער די אַלגערידאַם פון די קאָד מיר רע געגאנגען צו ווריטע-- די אַלגערידאַם אַנדערלייינג די קאָד מיר רע געגאנגען צו שרייַבן. דאס איז זייַן ינפּוט. דאס איז זייַן פּראָדוקציע. דעם פֿונקציע, דרוקן נאָמען, איז דיזיינד צו נעמען אַ שטריקל גערופֿן נאָמען, אָדער וועלכער, ווי ינפּוט, און דעמאָלט פּאָסל. עס טוט נישט צוריקקומען עפּעס, ווי באַקומען שטריקל אָדער באַקומען ינט טוט. אַזוי עס ס 'געגאנגען צו האַנט מיר עפּעס צוריק. עס ס נאָר געגאנגען צו האָבן אַ זייַט ווירקונג, אַזוי צו רעדן, פון דרוקן אַ מענטש 'ס נאָמען. אַזוי באַמערקן, שורה 7, איך קענען רופן דרוקן נאָמען. שורה 10, איך קענען דעפינירן אָדער ינסטרומענט דרוקן נאָמען. אבער, ליידער, אַז ס נישט גענוג. זאל מיר גיין פאָרויס און רעקאָמפּילע דעם נאָך שפּאָרן. וואָו, איצט, איך ווע געמאכט עס ערגער, עס וואָלט ויסקומען. אזוי ימפּליסאַט דעקלאַראַציע פון פֿונקציע דרוקן נאָמען איז פאַרקריפּלט. און, ווידער, עס ס מער ערראָרס. אבער ווי איך קאַוטיאָנעד פריער, אַפֿילו אויב איר באַקומען אָוווערכוועלמד מיט, אָדער אַ ביסל טרויעריק צו זען אַזוי פילע ערראָרס, פאָקוס בלויז אויף דער ערשטער טכילעס, ווייַל עס זאל נאָר האָבן געהאט אַ קאַסקיידינג ווירקונג. אַזוי C, אָדער קלאַנג מער ספּעסיפיקאַללי, נאָך טוט ניט דערקענען דרוקן נאָמען. און אַז ס ווייַל קלאַנג, דורך פּלאַן, איז מין פון שטום. עס נאָר טוט וואָס איר זאָגן עס צו טאָן. און עס נאָר טוט אַזוי אין די סדר אין וואָס איר זאָגן עס צו טאָן. אזוי איך האָבן Defined הויפּט אויף שורה פיר, ווי מיר ווע שוין טאן שיין אָפֿט. איך ווע Defined דרוקן נאָמען אויף שורה 10. אבער איך בין טריינג צו נוצן דרוק נאָמען אויף שורה זיבן. עס ס אויך באַלד, טוט נישט עקסיסטירן נאָך. אזוי איך קען זיין קלוג, און זייַן ווי, גוט, אַזוי לאָזן ס נאָר שפּילן צוזאמען, און באַוועגן דרוקן נאָמען אַרויף דאָ, און שייַעך-צונויפנעמען. אָה מיין גאָט. עס געארבעט. עס איז געווען ווי פּשוט ווי אַז. אבער די לאָגיק איז פּונקט אַז. איר האָבן צו לערנען קלאַנג וואָס עס איז דורך דעפינינג די פֿונקציע ערשטער. דעמאָלט איר קענען נוצן עס. אבער, פראַנקלי, דעם Feels ווי אַ גליטשיק שיפּוע. אזוי יעדער מאָל איך לויפן אין אַ פּראָבלעם, איך בין נאָר געגאנגען צו הויכפּונקט און נאָכמאַכן די קאָד איך געשריבן, שנייַדן עס און פּאַפּ עס אַרויף דאָ. און, שורלי, מיר געקענט פאַרטראַכטן עטלעכע סינעריאָוז ווו איין פֿונקציע זאל דאַרפֿן צו רופן דעם אנדערן. און איר נאָר קענען ניט שטעלן יעדער פונקציאָנירן אויבן יעדער אנדערע. אַזוי עס טורנס אויס דאָרט ס אַ בעסער לייזונג. מיר קענען לאָזן דעם זיין. און, פראַנקלי, עס ס בכלל פייַן, און באַקוועם, און גוט פּלאַן צו שטעלן הויפּט ערשטער, ווייַל, ווידער, הויפּט פּונקט ווי ווען גרין פאָן קליקט, וואָס איז די פֿונקציע אַז געץ עקסאַקיוטאַד דורך ניט ויסצאָלן. אַזוי איר זאל ווי געזונט שטעלן עס אין די שפּיץ פון דער טעקע אַזוי אַז ווען איר אָדער קיין אנדערע מענטש קוקט אין די טעקע איר וויסן וואָס ס 'געגאנגען אויף נאָר דורך לייענען הויפּט ערשטער. אַזוי עס טורנס אויס, מיר קענען זאָגן קלאַנג פּראָואַקטיוולי, היי, קלאַנג, אויף שורה פיר, איך צוזאָג צו מאַכשער אַ פֿונקציע גערופֿן דרוק דעם נאמען וואס נעמט אַ שטריקל גערופֿן נאָמען ווי ינפּוט, און קערט גאָרנישט, פּאָסל. און איך וועט באַקומען אַרום צו ימפּלאַמענטינג עס שפּעטער. דאָ קומט הויפּט. הויפּט איצט אויף שורה 9 קענען נוצן דרוק דעם נאָמען ווייַל קלאַנג איז טראַסטינג אַז, יווענטשאַוואַלי, עס וועט טרעפן די דעפֿיניציע פון די ימפּלאַמענטיישאַן פון דרוק דעם נאָמען. אַזוי נאָך שפּאָרן מיין טעקע, לאָזן מיר גיין פאָרויס און מאַכן פּראָוטאַטייפּ, קוקט גוט דעם צייַט. פּונקט צעהאַקן, פּראָוטאַטייפּ, לאָזן מיר גיין פאָרויס און דרוקן אין אַ נאָמען. דוד, העלא דוד זאַמילאַ, העלא זאַמילאַ, און, טאַקע, איצט עס אַרבעט. אזוי די ינגרידיאַנט דאָ איז אַז מיר 'ווע געמאכט אַ מנהג פונקציאָנירן, ווי אַ מנהג קראַצן בלאָק מיר ניטאָ פאַך עס. אבער ניט ענלעך קראַצן ווו איר קענען נאָר מאַכן עס און אָנהייבן ניצן עס, איצט מיר האָבן צו זייַן אַ ביסל מער פּעדאַנטיק, און אַקשלי באַן קלאַנג צו נוצן, אָדער צו דערוואַרטן עס. איצט, ווי אַ באַזונדער, וואָס אַלע דעם מאָל האָבן מיר שוין נאָר בליינדלי אויף אמונה כולל קס50.ה, און כולל נאָרמאַל יאָ.ה? נו, עס טורנס אויס, צווישן אַ ביסל אנדערע זאכן, אַלע אַז ס אין יענע פּונקט ה טעקעס, וואָס פּאַסירן צו זיין טעקעס. זיי ניטאָ כעדער טעקעס, אַזוי צו רעדן. זיי ניטאָ נאָך געשריבן אין סי אבער זיי ניטאָ אַ אַנדערש טיפּ פון טעקע. פֿאַר איצט, איר קענען שיין פיל יבערנעמען אַז אַלע וואָס איז ין פון קס50.ה איז עטלעכע איינער-ליינערז ווי דעם, נישט פֿאַר פֿעיִקייטן גערופֿן דרוק דעם נאָמען, אָבער פֿאַר באַקומען סטרינג, באַקומען לאָזנ שווימען, און אַ ביסל אנדערע. און עס זענען ענלעך פּראָוטאַטייפּס, איינער ליינערז, ין פון נאָרמאַל יאָ.ה פֿאַר פּרינטף, וואָס איז איצט אין מיין אייגן דרוק דעם נאמען פֿונקציע. אַזוי אין אנדערע ווערטער, דעם גאַנץ צייַט מיר ווע נאָר געווען בליינדלי קאַפּיינג און פּאַסטינג אַרייַננעמען דעם, אַרייַננעמען וואָס, וואָס ס 'געגאנגען אויף? יענע זענען נאָר מין פון קלוז צו קלאַנג ווי צו וואָס פֿעיִקייטן ביסט, טאַקע, ימפּלאַמענאַד, נאָר אנדערש אין פאַרשידענע טעקעס אַנדערש ווו אויף די סיסטעם. אַזוי מיר ווע ימפּלאַמענטאַד דרוקן נאָמען. עס טוט האָבן דעם זייַט ווירקונג פון דרוקן עפּעס אויף דעם עקראַן. אבער עס טוט נישט אַקטשאַוואַלי האַנט מיר עפּעס צוריק. ווי טאָן מיר גיין וועגן ימפּלאַמענטינג אַ פּראָגראַם וואס טוט האַנט מיר עפּעס צוריק? נו, לאָזן ס פּרובירן דעם. זאל מיר גיין פאָרויס און מאַכשער אַ טעקע געהייסן רעטורנ.ק אַזוי מיר קענען באַווייַזן ווי עפּעס ווי באַקומען שטריקל, אָדער באַקומען ינט, איז אַקשלי אומגעקערט עפּעס צוריק צו דער באַניצער. זאל ס גיין פאָרויס און דעפינירן ינט הויפּט פּאָסל. און, ווידער, אין דער צוקונפֿט, מיר וועט דערקלערן וואָס אַז ינט און אַז פּאָסל איז אַקטשאַוואַלי טאן. אבער פֿאַר הייַנט, מיר וועט נעמען עס פֿאַר געגעבן. איך בין געגאנגען צו גיין פאָרויס און פּרינטף, פֿאַר אַ גוט באַניצער דערפאַרונג, רענטגענ איז. און דעמאָלט איך בין געגאנגען צו וואַרטן פֿאַר די באַניצער צו געבן מיר רענטגענ מיט באַקומען ינט. און דעמאָלט איך בין געגאנגען צו גיין פאָרויס און דרוקן אויס X צו די קוואַדראַט. אַזוי ווען איר נאָר האָבן אַ קלאַוויאַטור, מענטשן קאַמאַנלי נוצן די ביסל מער סימבאָל אויף די קלאַוויאַטור צו פאָרשטעלן צו דער מאַכט פון, אָדער די עקספּאָנענט פון. אַזוי רענטגענ סקווערד איז פאָרשטעלן איך. און איצט איך בין געגאנגען צו טאָן דעם. איך קען נאָר דאָ-- וואָס ס רענטגענ סקווערד? רענטגענ סקווערד איז רענטגענ מאל רענטגענ. און מיר האבן דעם עטלעכע מאָל צוריק שוין הייַנט. דאס טוט נישט פילן ווי אַלע אַז פיל פּראָגרעס. ווייסט וואס? זאל ס לעווערידזש עטלעכע פון ​​וואָס געדאַנק פון לעצטע מאָל פון אַבסטראַקציע. וואָלט ניט עס זיין פייַן אויב עס ס אַ פֿונקציע גערופֿן קוואַדראַט אַז טוט פּונקט וואָס? עס נאָך, אין די סוף פון די טאָג, טוט די זעלבע מאַט. אבער לאָזן ס אַבסטראַקט אַוועק דעם געדאַנק פון גענומען איין נומער געמערט דורך דעם אנדערן, און נאָר געבן עס אַ נאָמען, ווי קוואַדראַט דעם ווערט. און, אין אנדערע ווערטער, אין C, לאָזן 'ס שאַפֿן אַ פֿונקציע גערופֿן קוואַדראַט אַז טוט פּונקט אַז. עס ס געגאנגען צו זייַן גערופֿן קוואַדראַט. עס ס געגאנגען צו נעמען אַ ינט. און מיר וועט וועלן נאָר רוף עס ן, דורך ניט ויסצאָלן. אָבער מיר קען רופן עס עפּעס מיר ווילן. און אַלע אַז עס ס 'געגאנגען צו טאָן, ממש, איז קריק דער רעזולטאַט פון N מאל N. אבער ווייַל עס איז אומגעקערט עפּעס, וואָס איז די קיווערד אין לילאַ מיר ווע קיינמאָל געזען פריער, איך, אויף שורה 11, קענען ניט נאָר זאָגן פּאָסל דעם מאָל. פּאָסל, אין דער בייַשפּיל מיר נאָר געזען גאַנץ פון דרוקן נאָמען, נאָר מיטל, טאָן עפּעס. אבער טאָן ניט האַנט מיר עפּעס צוריק. אין דעם פאַל, איך טאָן ווילן צו צוריקקומען N מאל N, אָדער וועלכער אַז איז, אַז נומער. אַזוי איך קענען נישט זאָגן, היי, קאָמפּיוטער, איך צוריקקומען גאָרנישט, פּאָסל. עס ס געגאנגען צו צוריקקומען, דורך נאַטור, אַן ינט. און אַזוי אַז ס אַלע אַז ס 'געגאנגען אויף דאָ. די ינפּוט צו קוואַדראַט איז געגאנגען צו זיין אַ ינט. און אַזוי אַז מיר קענען נוצן עס, עס האט צו האָבן אַ נאָמען, ען עס ס געגאנגען צו רעזולטאַט אַ ינט אַז טוט נישט דאַרפֿן אַ נאָמען. מיר קענען לאָזן עס צו הויפּט, אָדער ווער איז ניצן מיר צו געדענקען דעם ווערט אויב מיר ווילן מיט זייַן אייגן בייַטעוודיק. און, ווידער, די בלויז נייַ קיווערד דאָ איז צוריק. און איך בין נאָר טאן עטלעכע מאַט. אויב איך טאַקע געוואלט צו זייַן ומנייטיק, איך קען זאָגן ינט פּראָדוקט געץ N מאל N. און דעמאָלט איך קען זאָגן, צוריקקומען פּראָדוקט. אבער, ווידער, צו מיין פונט פריער פון דעם נאָר נישט ווייל גוט דעסיגנ-- ווי, וואָס פאָרשטעלן אַ נאָמען, אַ סימבאָל, ווי פּראָדוקט, נאָר צו מיד צוריקקומען עס? עס ס אַ ביסל רייניקונג, אַ ביסל טייטער, אַזוי צו רעדן, נאָר צו זאָגן צוריקקומען N מאל ן, באַקומען באַפרייַען פון דעם שורה בעסאַכאַקל. און עס ס נאָר ווייניקער קאָד צו לייענען, ווייניקער געלעגנהייט פֿאַר מיסטייקס. און לאָזן ס זען אויב דאָס טאקע איצט אַרבעט. איצט, איך בין געגאנגען צו גיין פאָרויס און מאַכן צוריקקומען. Uh-טאַקע, ימפּליסאַט דעקלאַראַציע פון ​​פֿונקציע. איך געמאכט דעם גרייַז איידער, קיין גרויס האַנדלען. זאל מיר נאָר טיפּ, אָדער הויכפּונקט און קאָפּיע, די פּינטלעך זעלביקער פונקציאָנירן פּראָוטאַטייפּ, אָדער כסימע, פון די פֿונקציע אַרויף דאָ. אָדער איך קען באַוועגן די גאנצע פֿונקציע. אבער אַז ס אַ ביסל פויל. אזוי מיר וועלן נישט טאָן אַז. איצט, לאָזן מיר מאַכן צוריקקער ווידער, פּונקט צעהאַקן צוריקקומען. רענטגענ איז 2. רענטגענ סקווערד איז 4. רענטגענ איז 3. רענטגענ סקווערד איז 9. און די פֿונקציע מיינט איצט צו זייַן אַרבעט. אזוי וואָס ס די חילוק דאָ? איך האָבן אַ פֿונקציע אַז ס גערופֿן קוואַדראַט, אין דעם פאַל, וואָס איך שטעלן אין אַ ינפּוט. און איך באַקומען צוריק אַ רעזולטאַט. און נאָך, ביז אַהער, אויב איך עפענען די אנדערע בייַשפּיל פון פריער, וואָס האט געהייסן פּראָטאָטיפּע.ק, איך האט דרוק נאָמען, וואָס אומגעקערט פּאָסל, אַזוי צו רעדן, אָדער עס אומגעקערט גאָרנישט, און נאָר האט אַ זייַט ווירקונג. אַזוי וואָס ס געגאנגען אויף דאָ? נו, באַטראַכטן די פֿונקציע באַקומען שטריקל פֿאַר נאָר אַ מאָמענט. מיר ווע שוין ניצן די פֿונקציע באַקומען שטריקל אין די ווייַטערדיק וועג. מיר 'ווע האט אַ פֿונקציע באַקומען שטריקל, ווי אַרייַננעמען קס50.ה, אַרייַננעמען נאָרמאַל יאָ.ה, ינט, הויפּט, פּאָסל. און דעריבער יעדער מאָל איך ווע גערופֿן באַקומען שטריקל אַזוי ווייַט, איך ווע האט געזאגט עפּעס ווי, שטריקל ס געץ באַקומען שטריקל, ווייַל באַקומען סטרינג-- לאָזן ס רוף דעם געט.ק-- באַקומען שטריקל זיך קערט אַ שטריקל אַז איך קענען דעמאָלט נוצן, און זאָגן, העלא, קאָמע, פּראָצענט ס, באַקקסלאַש ן, ס. אזוי דעם איז דער זעלביקער בייַשפּיל, טאַקע, אַז מיר האבן פריער. אַזוי באַקומען שטריקל קערט אַ ווערט. אבער אַ מאָמענט צוריק, דרוקן שטריקל טוט ניט צוריקקומען אַ ווערט. עס נאָר האט אַ זייַט ווירקונג. אַזוי דעם איז אַ פונדאַמענטאַל חילוק. מיר ווע געזען פאַרשידענע טייפּס פון פֿעיִקייטן איצט, עטלעכע פון ​​וואָס האָבן זיך אומגעקערט וואַלועס, עטלעכע פון ​​וואָס טאָן ניט. אַזוי אפֿשר עס ס שטריקל, אָדער ינט, אָדער לאָזנ שווימען. אָדער אפֿשר עס ס נאָר פּאָסל. און די חילוק איז אַז די פֿעיִקייטן אַז באַקומען דאַטן און קריק אַ ווערט זענען אַקטשאַוואַלי ברענגען עפּעס צוריק צו די טיש, אַזוי צו רעדן. אַזוי לאָזן ס גיין פאָרויס און קוק אין איין לעצט שטעלן פון יגזאַמפּאַלז אַז גיט אַ געפיל, איצט, פון ווי מיר זאל, טאַקע, אַבסטראַקט בעסער, און בעסער, און בעסער, אָדער מער, און מער, און מער, אין סדר צו שרייַבן, לעסאָף, בעסער קאָד. זאל ס גיין פאָרויס, און אין דעם גייסט פון קראַצן, טאָן די ווייַטערדיק. זאל מיר גיין פאָרויס און אַרייַננעמען קס50.ה און נאָרמאַל יאָ.ה. זאל מיר גיין פאָרויס און געבן זיך אַ ינט, הויפּט, פּאָסל. און לאָזן מיר גיין פאָרויס, רופן דעם קאָוגה.ק. און לאָזן מיר גיין פאָרויס און נאָר ווי קראַצן, דרוקן אויס הוסט / ן. און איך ווילן צו טאָן דעם דרייַ מאָל. אזוי איך בין, פון קורס, נאָר געגאנגען צו צייכענען און פּאַפּ דרייַ מאל. איך בין איצט געגאנגען צו מאַכן הוסט פּינטעלע צעהאַקן הוסט. זאל ס געבן זיך אַ ביסל מער צימער דאָ, קום, הוסט, הוסט, הוסט. עס ס, דאָך, שוין אַ געלעגנהייט פֿאַר פֿאַרבעסערונג. איך ווע קאַפּיד און פּייסטיד אַ ביסל מאל הייַנט. אבער וואָס איז געווען נאָר אַזוי איך האט ניט האָבן צו טיפּ ווי פילע אותיות. איך נאָך געביטן וואָס די שורות פון קאָד זענען. די דרייַ שורות זענען יידעניקאַל, וואָס Feels פויל און טאַקע איז, און איז מיסטאָמע נישט די רעכט צוגאַנג. אזוי מיט וואָס ינגרידיאַנט קען מיר פֿאַרבעסערן דעם קאָד? מיר טאָן ניט האָבן צו צייכענען און פּאַפּ קאָד. און, טאַקע, קיין מאָל איר פילן זיך קאַפּיינג און פּאַסטינג, און נישט אַפֿילו טשאַנגינג קאָד, שאַנסן זענען עס ס אַ בעסער וועג. און, טאַקע, עס איז. זאל מיר גיין פאָרויס און טאָן אַ פֿאַר שלייף, אַפֿילו כאָטש די סינטאַקס זאל ניט קומען געוויינטלעך נאָך. צי דעם דרייַ מאָל, נאָר דורך טאן די פאָללאָווינג-- און איך פּאַסירן צו וויסן דעם פון פיר. אבער מיר האָבן אַ נומער פון יגזאַמפּאַלז איצט. און איר וועט זען אָנליין מער רעפֿערענצן נאָך. דאס איז די סינטאַקס אויף שורה 6, אַז פיל ווי קראַצן אַז ריפּיץ בלאָק, איבערחזרן די ווייַטערדיק דרייַ מאל. עס ס אַ ביסל מאַדזשיקאַל פֿאַר איצט. אבער דאָס וועט באַקומען מער, און מער באַקאַנט. און עס ס 'געגאנגען צו איבערחזרן שורה אַכט דרייַ מאל, אַזוי אַז אויב איך שייַעך-צונויפנעמען מאַכן הוסט, פּינטעלע צעהאַקן הוסט, הוסט, הוסט, הוסט. עס נאָך מעשים די זעלבע וועג. אַזוי אַז ס אַלע פייַן און גוט. אבער אַז ס 'נישט זייער פאַרטראָגן. עס ס בישליימעס ריכטיק. אבער עס Feels ווי עס קען זיין אַ געלעגנהייט, ווי אין דער וועלט פון קראַצן, צו מין פון אָנהייב צו לייגן עטלעכע סעמאַנטיקס דאָ אַזוי אַז איך טאָן ניט נאָר האָבן עטלעכע פֿאַר שלייף, און אַ פֿונקציע וואָס זאגט הוסט, אָדער טוט הוסט. ווייסט וואס? זאל מיר פּרובירן צו זיין אַ ביסל קולער ווי אַז, און אַקשלי שרייַבן אַ פֿונקציע וואָס האט עטלעכע זייַט ווירקונג, רוף עס הוסט. און עס נעמט קיין ינפּוט, און קערט ניט ווערט ווי רעזולטאַט. אבער איר וויסן וואָס עס טוט? עס טוט טהיס-- פּרינטף, ציטירן ונקוואָטע, הוסט. און איצט אַרויף דאָ, איך בין געגאנגען צו גיין פאָרויס און פֿאַר ינט, איך געץ נול, איך ווייניקער ווי 3, איך פּלוס פּלוס. איך בין געגאנגען צו ניט טאָן פּרינטף, וואָס איז אַרגיואַבלי אַ נידעריק מדרגה ימפּלאַמענטיישאַן דעטאַל. איך טאָן ניט זאָרגן ווי צו הוסט. איך נאָר ווילן צו נוצן די הוסט פֿונקציע. און איך בין נאָר געגאנגען צו רופן הוסט. איצט, באַמערקן די דיטשאָטאָמי. ווען איר רופן אַ פונקציאָנירן, אויב איר טאָן ניט ווילן צו געבן עס ינפּוץ, טאָוטאַלי פייַן. נאָר טאָן עפענען פּאַרען, נאָענט פּאַרען, און איר ניטאָ געטאן. ווען איר דעפינירן אַ פֿונקציע, אָדער דערקלערן אַ פֿונקציע 'ס פּראָוטאַטייפּ, אויב איר וויסן אין שטייַגן עס ס ניט געגאנגען צו נעמען קיין טענות, זאָגן פּאָסל אין די קלאַמערן עס. און אַז מאכט זיכער אַז איר וועט ניט אַקסאַדענאַלי מיסיוז עס. זאל מיר גיין פאָרויס און מאַכן הוסט. און, פון לויף, איך ווע געמאכט אַ גרייַז. Dammit, עס ס אַז ימפּליסאַט דעקלאַראַציע. אבער אַז ס 'פייַן. עס ס אַן גרינג פאַרריכטן. איך נאָר דאַרפֿן די פּראָוטאַטייפּ העכער אַרויף אין מיין טעקע ווי איך בין אַקשלי ניצן עס. אַזוי איצט לאָזן מיר מאַכן הוסט ווידער, פייַן. איצט, עס אַרבעט. מאַכן הוסט, הוסט, הוסט, הוסט. אַזוי איר זאל טראַכטן אַז מיר ניטאָ טאַקע נאָר איבער ינזשעניעריע דעם פּראָבלעם. און, טאַקע, מיר זענען. דאס איז ניט אַ גוט קאַנדידאַט פון אַ פּראָגראַם אין דער מאָמענט פֿאַר רעפאַקטאָרינג, און טאן וואָס ס ' גערופֿן כייראַרקאַקאַל דיקאַמפּאָוזישאַן, ווו איר נעמען עטלעכע קאָד, און דעמאָלט איר מין פון פאַקטאָר דאס אויס, אַזוי ווי צו צושרייַבן מער סעמאַנטיקס צו זיי, און רייוס עס לעסאָף מער טערמין. אבער עס ס אַ בנין בלאָק צו מער sophisticated מגילה אַז מיר וועלן אָנהייבן שרייבן איידער לאַנג אַז אַלאַוז אונדז צו האָבן די וואָקאַבולאַרי מיט וואָס צו שרייַבן בעסער קאָד. און, טאַקע, לאָזן ס זען אויב מיר קענען ניט גענעראַליזע דעם ווייַטער. עס דאכט זיך אַ ביסל לאָם אַז איך, הויפּט, דאַרפֿן צו זאָרג וועגן דעם צירעווען פֿאַר שלייף, און פאַך הוסט ווידער און ווידער. וואָס קענען ניט איך נאָר זאָגן הוסט, ביטע הוסט דרייַ מאָל? אין אנדערע ווערטער, וואָס קענען ניט איך נאָר געבן ינפּוט צו הוסט און טאָן דעם? וואָס קענען ניט איך נאָר זאָגן, אין הויפּט הוסט דרייַ מאל. און איצט, דאָס איז מין פון מאַדזשיקאַל. עס ס זייער יטעראַטיווע דאָ. און עס ס ', טאַקע, אַ בעיבי שריט. אבער נאָר די פיייקייַט צו זאָגן אויף שורה אַכט, הוסט דרייַ מאל, עס ס נאָר אַזוי פיל מער ליינעוודיק. און, פּלוס, איך טאָן ניט האָבן צו וויסן אָדער זאָרגן ווי הוסט איז ימפּלאַמענאַד. און, טאַקע, שפּעטער אין די טערמין און פֿאַר לעצט פּראַדזשעקס, אויב איר מאַכנ זיך אַ פּרויעקט מיט אַ קלאַסמייט אָדער צוויי קלאַסמייץ, איר וועט פאַרשטיין אַז איר ניטאָ געגאנגען צו האָבן צו, אָדער ווילן צו, צעטיילן די אַרבעט. און איר ניטאָ געגאנגען צו ווילן צו באַשליסן אין שטייַגן, וואס ס געגאנגען צו טאָן וואָס, און אין וואָס ברעקלעך? און וואָלט נישט עס זייַן פייַן אויב איר, פֿאַר בייַשפּיל, נעמען באַשולדיקונג פון שרייבן הויפּט, געטאן. און דיין רומייט, אָדער דיין שוטעף מער בכלל, נעמט זאָרג פון ימפּלאַמענטינג הוסט. און דעם אָפּטייל, די ווענט פון אַבסטראַקציע, אָדער Layers פון אַבסטראַקציע אויב איר וועט, זענען יבער שטאַרק, ווייַל ספּעציעל פֿאַר גרעסערע, מער קאָמפּליצירט מגילה און סיסטעמס, עס אַלאַוז קייפל מענטשן צו בויען דאס צוזאַמען, און לעסאָף שטאָך זייער אַרבעט צוזאַמען אין דעם וועג. אבער, פון קורס, מיר דאַרפֿן צו איצט פאַרריכטן הוסט. מיר דאַרפֿן צו זאָגן הוסט אַז, היי, איר וויסן וואָס? איר רע געגאנגען צו דאַרפֿן צו נעמען אַ ינפּוט-- אַזוי נישט פּאָסל, אָבער ינט און איצט. זאל ס גיין פאָרויס און שטעלן אין הוסט די ינט. איך געץ נול. איך איז ווייניקער ווי ווי פילע מאל. איך געזאגט דרייַ איידער. אבער אַז ס 'נישט וואָס איך ווילן. איך ווילן הוסט צו זייַן דזשענראַלייזד צו שטיצן קיין נומער פון יטעראַטיאָנס. אַזוי, טאַקע, עס ס N אַז איך ווילן, וועלכער דער באַניצער דערציילט מיר. איצט, איך קענען גיין פאָרויס און זאָגן דרוקן הוסט. און קיין ענין וואָס נומער דער באַניצער פּאַסיז אין, איך וועט יטעראַטע אַז פילע מאל. אזוי אין די סוף פון די טאָג, פּראָגראַם איז יידעניקאַל. אבער באַמערקן אַלע פון ​​דעם שטאָפּן קען אַפֿילו זייַן אין אן אנדער טעקע. טאקע, איך טאָן ניט וויסן בייַ די מאָמענט ווי פּרינטף איז ימפּלאַמענאַד. איך טאָן ניט וויסן אין דער מאָמענט ווי באַקומען שטריקל, אָדער באַקומען ינט, אָדער באַקומען לאָזנ שווימען זענען ימפּלאַמענטאַד. און איך טאָן ניט ווילן צו זען זיי אויף מיין פאַרשטעלן. ווי עס איז, איך בין סטאַרטינג צו פאָקוס אויף מיין פּראָגראַם, ניט יענע פֿעיִקייטן. און אַזוי, טאַקע, ווי באַלד ווי איר אָנהייבן פאַקטאָרינג קאָד ווי דעם אויס, קען מיר אַפֿילו באַוועגן הוסט צו אַ באַזונדער טעקע? עמעצער אַנדערש קען מאַכשער עס. און איר און אייער פּראָגראַם ווערן די זייער שיין, און זייער ליינעוודיק, אַרגיואַבלי, טאַקע פיר שורה פּראָגראַם רעכט דאָרט. אַזוי לאָזן ס גיין פאָרויס איצט און מאַכן איינער מער ענדערונג. באַמערקן אַז מיין פּראָוטאַטייפּ האט צו טוישן אַרויף שפּיץ. אַזוי לאָזן מיר פאַרריכטן אַז אַזוי איך טאָן ניט באַקומען יעלד בייַ. מאַכן הוסט, לאָזן מיר לויפן הוסט אַמאָל מער, נאָך טאן די זעלבע זאַך. אבער איצט, באַמערקן מיר האָבן אַ ינגרידיאַנט פֿאַר איינער לעצט ווערסיע. ווייסט וואס? איך טאָן נישט וועלן צו נאָר הוסט, דאַווקע. איך ווילן צו האָבן עפּעס מער אַלגעמיין. אַזוי איר וויסן וואָס? איך ווילן צו טאָן דעם. איך ווילן צו האָבן, פיל ווי קראַצן טוט, אַ ווערטל בלאָק, אָבער נישט נאָר זאָגן עפּעס עטלעכע נומער פון מאל. איך ווילן עס צו זאָגן אַ זייער ספּעציפיש שטריקל. און, דעריבער, איך טאָן ניט ווילן עס צו נאָר זאָגן הוסט. איך ווילן עס צו זאָגן וועלכער שטריקל איז דורכגעגאנגען אין. אַזוי באַמערקן, איך ווע דזשענראַלייזד דעם אַזוי אַז איצט זאָגן Feels ווי אַ גוט נאָמען פֿאַר דעם, ווי קראַצן, נעמט צוויי טענות, ניט ענלעך קראַצן. איינער איז אַ שטריקל. איינער איז אַ ינט. און איך קען באַשטימען זיי. איך נאָר מין פון ווי דער געדאַנק פון זאָגן די שטריקל ערשטער, און דעמאָלט ווי פילע מאל שפּעטער. פּאָסל מיטל עס נאָך טוט ניט צוריקקומען עפּעס. דאס זענען נאָר וויסואַל זייַט ווירקונג, ווי מיט [? ירדן,?] אַ מינדלעך זייַט ווירקונג פון יעלינג. עס נאָך טוט עפּעס N מאל, 0 אַרויף צו, אָבער ניט גלייַך צו ען. דעם מיטל N גאַנץ מאל. און דעמאָלט נאָר דרוקן אויס וועלכער אַז שטריקל איז. אַזוי איך ווע טאַקע דזשענראַלייזד דעם שורה פון קאָד. אַזוי איצט, ווי טאָן איך ינסטרומענט די הוסט פֿונקציע? איך קענען טאָן פּאָסל הוסט. און איך קענען נאָך נעמען אין ווי פילע מאל איר ווילן צו הוסט. אבער איר וויסן וואָס? איך קענען איצט פּונט צו זאָגן. איך קענען רופן זאָגן מיט די וואָרט הוסט, פּאַסינג אין ען. און אויב איך ווילן צו אויך ינסטרומענט, נאָר פֿאַר שפּאַס, אַ ניסן פֿונקציע, איך קענען ניסן עטלעכע נומער פון מאל. און איך קענען האַלטן רייוזינג ן, ווייַל באַמערקן אַז עם אין דעם קאָנטעקסט אָדער פאַרנעם בלויז יגזיסץ ין דעם פֿונקציע. און ן אין דעם קאָנטעקסט בלויז יגזיסץ ין דעם פֿונקציע דאָ. אַזוי מיר וועט קומען צוריק צו די ישוז פון פאַרנעם. און דאָ, איך בין נאָר געגאנגען צו זאָגן, אַטשאָאָ, און דעמאָלט N מאל, האַלב-צווייפּינטל. און איצט, איך נאָר דאַרפֿן צו באָרגן די פֿונקציע סיגנאַטשערז אַרויף דאָ. אזוי הוסט איז ריכטיק. פּאָסל ניסן איז ריכטיק איצט. און איך נאָך נאָר דאַרפֿן זאָגן. אַזוי איך בין געגאנגען צו זאָגן, זאָגן שטריקל ס, ינט N, האַלב-צווייפּינטל. אַזוי איך ווע איבער-ענדזשאַנירד די כעק אויס פון דעם פּראָגראַם. און דאָס טוט נישט דאַווקע מיינען דאָס איז וואָס איר זאָל טאָן ווען שרייבן אַפֿילו די סימפּלאַסט פון מגילה. נעמען עפּעס אַז ס דאָך טאַקע פּשוט, טאַקע קורץ, און שייַעך-ינסטרומענט עס ניצן וועג צו פיל קאָד. אבער איר וועט אַקטשאַוואַלי זען, און אין צייַט קוקן צוריק אויף די יגזאַמפּאַלז, און פאַרשטיין, טאַקע, יענע זענען די טריט מיר גענומען צו אַקטשאַוואַלי גענעראַליזע, צו פאַקטאָר עפּעס אויס, ביז אין די סוף פון די טאָג מיין קאָד איז אַקשלי שיין גלייַך. ווייַל אויב איך ווילן צו הוסט דרייַ מאל דעמאָלט ניסן דרייַ מאָל, איך בין נאָר געגאנגען צו ריראַן דעם, פּראָגראַם מאַכן הוסט, און לויפן הוסט. און איך האָבן דרייַ הוסט און דרייַ ניסן. און אַזוי דאָס איז אַ יקערדיק פּעראַדיים, אויב איר וועט, פֿאַר ווי מיר זאל גיין וועגן אַקשלי ימפּלאַמענטינג אַ פּראָגראַם. אבער לאָזן ס נאָר זען איצט וואָס עס איז מיר ווע שוין טאן אַלע פון ​​דעם צייַט, און וואָס עטלעכע פון ​​די לעצט ברעקלעך זענען הינטער דעם פּשוט באַפֿעלן. אין די סוף פון די טאָג, מיר ווע שוין ניצן קלאַנג ווי אונדזער קאַמפּיילער. מיר ווע שוין שרייבן מקור קאָד, קאַנווערטינג עס דורך קלאַנג אין מאַשין קאָד. און מיר ווע שוין ניצן מאַכן נאָר צו פאַסיליטאַטע אונדזער קיסטראָוקס אַזוי אַז מיר טאָן ניט האָבן צו געדענקען יענע ינקאַנטאַטיאָנס פון קלאַנג זיך. אבער וואָס איז מאַכן אַקטשאַוואַלי טאן? און, אין דרייַ, וואָס איז קלאַנג אַקטשאַוואַלי טאן? עס טורנס אויס, כאָטש מיר האָבן Simplified הייַנט ס דיסקוסיע דורך געזאגט, איר נעמען מקור קאָד, פאָרן עס ווי ינפּוט צו אַ קאַמפּיילער, וואָס גיט איר רעזולטאַט פון מאַשין קאָד, טורנס אויס דאָרט ס אַ ביסל אַנדערש טריט ין עס. און קאַמפּיילינג כאַפּאַנז צו זיין די שירעם טערמין פֿאַר אַ גאַנץ בינטל פון טריט. אבער לאָזן ס נאָר רייצנ זיך דעם אויס טאַקע געשווינד. עס טורנס אויס אַז מיר ווע שוין טאן מער זאכן יעדער מאָל איך לויפן אַ פּראָגראַם, אָדער יעדער מאָל איך צונויפנעמען אַ פּראָגראַם הייַנט. אזוי פּרעפּראָסעססינג רעפערס צו טהיס-- עפּעס אין אַ C פּראָגראַם, ווי מיר וועט זען ווידער און ווידער, אַז סטאַרץ מיט דעם האַש סימבאָל, אָדער די האַשטאַג סימבאָל דאָ, מיטל עס ס אַ פּרעפּראָסעססאָר דירעקטיוו. אַז מיטל, אין דעם פאַל, היי קאָמפּיוטער, טאָן עפּעס מיט דעם טעקע איידער איר אַקטשאַוואַלי צונויפנעמען מיין אייגן קאָד. אין דעם פאַל, האַש אַרייַננעמען איז, יסענשאַלי, C 'ס וועג פון זאגן, היי קאָמפּיוטער, גיין באַקומען די אינהאַלט פון קס50.ה און פּאַפּ זיי דאָ. היי קאָמפּיוטער, גיין באַקומען די תּוכן פון נאָרמאַל יאָ.ה, ווו נאָר וואָס איז אויף די שווער פאָר, פּאַפּ עס דאָ. אזוי יענע זאכן פּאַסירן ערשטער בעשאַס פּרעפּראָסעססינג. און קלאַנג טוט אַלע פון ​​דעם פֿאַר אונדז. און עס טוט עס אַזוי צירעווען שנעל, איר טאָן ניט אַפֿילו זען פיר בוילעט זאכן געשעעניש. אבער אַז ס 'דער ערשטער אַזאַ שריט. וואָס אַקטשאַוואַלי כאַפּאַנז ווייַטער? נו, דער ווייַטער באַאַמטער שריט איז קאַמפּיילינג. און עס טורנס אויס אַז קאַמפּיילינג אַ פּראָגראַם טעקניקלי מיטל געגאנגען פון מקור קאָד, די שטאָפּן מיר ווע שוין שרייבן הייַנט צו עפּעס גערופֿן פֿאַרזאַמלונג קאָד, עפּעס וואָס קוקט אַ ביסל אַנדערש. און, אין פאַקט, מיר קענען זען דעם פאַקטיש שנעל. זאל מיר אַקטשאַוואַלי גיין אין מיין ייד. זאל מיר גיין פאָרויס און עפענען העללאָ.ק, וואָס איז די זייער ערשטער פּראָגראַם מיט וואָס מיר אנגעהויבן הייַנט. און לאָזן מיר גיין פאָרויס און לויפן קלאַנג אַ ביסל אנדערש, קלאַנג-ז, העללאָ.ק, וואָס איז אַקטשאַוואַלי געגאנגען צו געבן מיר אן אנדער טעקע העללאָ.ס. און מיר וועט מיסטאָמע קיינמאָל ווידער זען דעם מין פון קאָד. אויב איר נעמען אַ נידעריקער מדרגה סיסטעמס קלאַס ווי קס61, איר וועט זען אַ פּלאַץ מער פון דעם מין פון קאָד. אבער דעם איז פֿאַרזאַמלונג שפּראַך. דאס איז קס 86 פֿאַרזאַמלונג שפּראַך אַז די קפּו אַז איז אַנדערלייינג קס50 ייד אַקטשאַוואַלי ונדערסטאַנדס. און קריפּטיק ווי עס טוט קוק, עס איז עפּעס די קאָמפּיוטער ונדערסטאַנדס שיין געזונט. סאַב ק, דאָס איז אַ אַראָפּרעכענען. עס ס מווומאַנץ. עס ס פאַך פון פֿעיִקייטן דאָ, רענטגענ ORING, אַ באַוועגונג, אַן לייגן, אַ קנאַל, אַ צוריקקער. אַזוי דאָרט ס עטלעכע זייער נידעריק מדרגה ינסטראַקשאַנז אַז קפּוס פֿאַרשטיין אַז איך אַלודאַד צו פריער. אַז איז וואָס ינטעל ין. עס זענען פּאַטערנז פון זעראָס און אָנעס אַז מאַפּע צו די אַרקאַנעלי ווערדיד, אָבער עפּעס געזונט-געהייסן, ינסטראַקשאַנז, אַזוי צו רעדן. אַז איז וואָס כאַפּאַנז ווען איר צונויפנעמען דיין קאָד. איר באַקומען פֿאַרזאַמלונג שפּראַך פון אים, וואָס מיטל די דריט שריט איז צו אַסעמבאַל אַז פֿאַרזאַמלונג קאָד אין, לעסאָף, מאַשין קאָדע-- זעראָס און אָנעס, נישט די טעקסט אַז מיר נאָר געזען אַ מאָמענט צוריק. אזוי פֿאַר פּראַסעסינג טוט אַז געפינען און פאַרבייַטן, און אַ ביסל אנדערע זאכן. קאַמפּיילינג נעמט דיין מקור קאָד פון C, מקור קאָד וואָס מיר געשריבן, צו פֿאַרזאַמלונג קאָד אַז מיר נאָר גלאַנסט בייַ. אַסעמבאַלינג נעמט אַז פֿאַרזאַמלונג קאָד צו זעראָעס און אָנעס אַז די קפּו טאַקע וועט פֿאַרשטיין אין די סוף פון די טאָג. און פֿאַרבינדונג איז די לעצטע שריט וואָס כאַפּאַנז פֿאַר וס-- ווידער, אַזוי שנעל מיר טאָן ניט אַפֿילו נאָטיסע-- אַז זאגט, היי קאָמפּיוטער, נעמען אַלע פון די זעראָס און אָנעס אַז ריזאַלטאַד פון קאַמפּיילינג דוד ס קאָד, און זייַן הויפּט פֿונקציע אין דעם פאַל. און היי קאָמפּיוטער, גיין באַקומען אַלע פון ​​די זעראָס און אָנעס אַז די קס50 שטעקן געשריבן ין די קס50 ביבליאָטעק. מישן יענע אין מיט דוד ס. און היי קאָמפּיוטער, גיין באַקומען אַלע די זעראָס און אָנעס אַז עמעצער אַנדערש געשריבן יאָרן צוריק פֿאַר פּרינטף. און לייגן יענע אין די גאנצע זאַך, אַזוי אַז מיר ווע גאַט מיין זעראָס און אָנעס, די קס50 שטעקן ס זעראָס און אָנעס, די פּרינטף זעראָס און אָנעס, און עפּעס אַנדערש מיר ניטאָ ניצן. זיי אַלע באַקומען קאַמביינד צוזאַמען אין איין פּראָגראַם געהייסן, אין דעם פאַל, העלא. אזוי יצט, מיר וועלן נאָר נוצן די וואָרט קאַמפּיילינג. און מיר וועט נעמען פֿאַר געגעבן אַז ווען מיר זאָגן, צונויפנעמען דיין פּראָגראַם, עס מיטל, היי טאָן די PRE-פּראַסעסינג, אַסעמבאַלינג, און פֿאַרבינדונג. אבער עס ס אַקשלי עטלעכע זאַפטיק שטאָפּן געגאנגען אויף דאָרט ונטער דער קאַפּטער. און ספּעציעל אויב איר באַקומען טשיקאַווע עטלעכע מאָל, איר קענען אָנהייבן פּאָקינג אַרום אין דעם נידעריקער מדרגה. אבער פֿאַר איצט, פאַרשטיין אַז צווישן די טאַקעאַווייַס פֿאַר הייַנט זענען גאַנץ נאָר די אָנהייב פון אַ פּראָצעס, פון געטינג באַקוועם מיט עפּעס ווי העלא וועלט. טאקע, רובֿ פון וואָס מיר האבן הייַנט אַוואַדע וועט נישט זינקען אין יבער שנעל. און עס וועט נעמען עטלעכע צייַט, און עטלעכע פיר. און שאַנסן זענען, איר וועט סאָרט פון ווילן צו שלאָגן דיין קלאַוויאַטור אָדער שרייַען בייַ דעם עקראַן. און אַלע פון ​​אַז ס גוט. כאָטש, טאָמער פּרובירן נישט צו טאָן עס אין די ביבליאָטעק אַזוי פיל. און לעסאָף, איר וועט קענען כאָטש, צו אָנהייבן זייעוודיק פּאַטערנז, ביידע אין גוט קאָד אַז איר ווע געשריבן און אין מיסטייקס אַז איר ווע געמאכט. און פיל ווי דער פּראָצעס פון פּאַסיק אַ טף אָדער אַ CA איז ווי, איר וועט אָנהייבן צו באַקומען בעסער און בעסער בייַ געזען יענע פּאַטערנז, און נאָר סאַלווינג דיין אייגן פּראָבלעמס לעסאָף. אין די דערווייל, עס וועט זיין שעפע פון אונדז צו לייַען איר שטיצן, און באַקומען איר דורך דעם. און אין די שרייַבן-אַפּס פֿאַר אַלע פון ​​די פּראָבלעמס וועט איר זיין גיידאַד דורך אַלע פון ​​די קאַמאַנדז אַז איך אַוואַדע וויסן פון אַ פּלאַץ פון פיר דורך איצט, אָבער זאל האָבן פלאָוון איבער איין 'ס קאָפּ פֿאַר איצט. און אַז ס טאָוטאַלי פייַן. אבער, לעסאָף, איר ניטאָ געגאנגען צו אָנהייבן צו זען פּאַטערנז אַרויסקומען. און אַמאָל איר באַקומען פאַרגאַנגענהייַט אַלע פון ​​די נאַריש דעטאַילס ווי קלאַמערן, און געגרייַזלט ברייסאַז, און האַלב-קאָלאָנס, און די שטאָפּן, פראַנקלי, אַז איז ניט בייַ אַלע ינטעללעקטואַללי טשיקאַווע. און עס איז נישט די אָביעקטיוו פון גענומען קיין ינטראָדוקטאָרי קלאַס. עס ס די געדאנקען וואס זענען געגאנגען צו ענין. עס ס די לופּס, און די באדינגונגען, און די פֿעיִקייטן, און מער פּאָווערפוללי די אַבסטראַקציע, און די פאַקטאָרינג פון קאָד, און די גוט פּלאַן, און די גוט נוסח, און לעסאָף די קערעקטנאַס פון דיין קאָד, אַז ס לעסאָף געגאנגען צו ענין די מערסט. אַזוי ווייַטער וואָך, מיר וועט נעמען די געדאנקען אַז מיר ערשטער געזען אין סקראַטטש און האָבן איצט איבערגעזעצט צו סי און מיר וועט אָנהייבן צו באַקענען די ערשטער פון די קורס ס עמעס וועלט דאָומיינז. מיר וועט פאָקוס אויף די וועלט פון זיכערהייַט, און מער ספּעסיפיקאַללי קריפּטאָגראַפי, די קונסט פון סקראַמבאַלינג אינפֿאָרמאַציע. און צווישן די ערשטער פּראָבלעמס איר זיך וועט באַקומען צו שרייַבן ווייַטער פון פּלייינג מיט עטלעכע פון ​​די סינטאַקס און סאַלווינג עטלעכע לאַדזשיקאַל פּראָבלעמס, לעסאָף איידער לאַנג, איז צו אַקטשאַוואַלי שטופּנ זיך, אָדער ינקריפּט, און לעסאָף דעקריפּט אינפֿאָרמאַציע. און אַלץ מיר ווע געטאן הייַנט, וועט פאַירלי נידעריק מדרגה, איז נאָר געגאנגען צו לאָזן אונדז צו נעמען איינער, און איינער, און איינער מער שריט אויבן צו שרייבט די מערסט טשיקאַווע קאָד נאָך. אַזוי מער אויף אַז ווייַטער וואָך. [ווידעא פּלייבאַק] -ווהאַט קענען איר דערציילן מיר וועגן די לעצטע מאָל איר האט געזען אים? -ווהאַט קענען איך זאָגן, טאַקע? איך מיינען, עס איז געווען ווי קיין אנדערע פֿאַר-פּראָדוקציע רעפּעטיציע, חוץ עס איז געווען עפּעס ער האט געזאגט בייַ די זייער סוף אַז סטאַק מיט מיר. -טהיס איז קס50. -אַז ס אַ דורכשניט אַלעמען, גרויס אַרבעט אויף רעפּעטיציע. -אַז ס לאָנטש? -יעאַה, איר און איך קענען כאַפּן אַ סענדוויטש אין אַ ביסל. זאל מיר נאָר דעבריעף מיט דוד טאַקע געשווינד. דוד? דוד? [סוף פּלייבאַק]