[מוזיק פּלייַינג] זאַמילאַ טשאַן: וואָלט איר גאַנץ באַקומען $ 10,000,000 רעכט איצט אָדער באַקומען פּעניז יעדער טאָג פון דעם חודש, ווו יעדער סאַבסאַקוואַנט טאָג, איר באַקומען טאָפּל די סומע פון ​​פּעניז איר באקומען דעם טאָג פריער? אין פּעניז, מיר ניטאָ געגאנגען צו באַווייַזן וואָס איר זאָל באשטימט נעמען די פּעניז. דיין אַרבעט איז צו שרייַבן פּענניעס.ק-- אַ פּראָגראַם וואָס ערשטער פרעגט דער באַניצער ווי פילע טעג עס זענען אין די חודש און דעריבער פרעגט ווי פילע פּעניז דער באַניצער וועט באַקומען אויף די ערשטער טאָג. די פּראָגראַם זאָל דעמאָלט רעכענען די סומע וואָס דער באַניצער וועט האָבן אַקיומיאַלייטיד אין די סוף פון די חודש און אַרויסווייַזן עס. מיר קענען ברעכן דעם פּראָגראַם אַרויף אין אַ פּאָר פון טאַסקס. מיר וועט דאַרפֿן צו פּינטלעך פֿאַר קייפל באַניצער ינפּוץ - טעג און חדשים, און פּעניז אויף ערשטער טאָג. מיר דאַרפֿן צו האַלטן שפּור פון ווי פיל געלט דער באַניצער האט און דערהייַנטיקן עס יעדער טאָג, דאַבלינג די סומע פון פּעניז אַז זיי באַקומען. און ענדלעך, מיר דרוקן זייער לעצט גאַנץ, אין דאָללאַרס. זאל ס מאַכנ באַניצער אַרייַנשרייַב ערשטער. איך בין געגאנגען צו עפענען אַרויף אַפּפּלעס.ק, קורץ פּראָגראַם וואָס דילז מיט ינפּוץ און אַוטפּוץ. אין די שפּיץ דאָ, איך ווע אַרייַנגערעכנט עטלעכע פון די לייברעריז אַז איך דאַרפֿן - קס50 ס ביבליאָטעק און אַ נאָרמאַל איך / אָ ביבליאָטעק. איך דרוקן אַ פּינטלעך ניצן די פּרינטף פונקציאָנירן פון דער נאָרמאַל איך / אָ ביבליאָטעק. אבער די פאַקטיש פּראַמפּטינג פון דעם באַניצער כאַפּאַנז אין דער ווייַטער שורה מיט דעם געטינט פונקציאָנירן אין די קס50 ביבליאָטעק. געטינט באקומט אַרייַנשרייַב פון דעם באַניצער און ענשורז אַז די אַרייַנשרייַב איז אַ ינטאַדזשער. אזוי איך קראָם דער באַניצער ס אַרייַנשרייַב אין ינטאַדזשער איך, אַראָפּרעכענען 1 פון איך, און דעמאָלט דרוק אויס די נייַ ווערט אויב איך. נאָך קאַמפּיילינג אַפּפּלעס.ק ניצן די באַפֿעל "מאַכן apples," איך האָבן אַ עקסעקוטאַבלע טעקע apples. פליסנדיק אַז, איך וועט אַרייַנשרייַב 1. די פּראָגראַם דערציילט מיר אַז איך האָבן 0 apples לינקס. און אַזוי אַז געארבעט ווי דערוואַרט. אזוי לאָזן 'ס לויפן דעם ווידער און אַרייַנשרייַב נעגאַטיוו 1. איצט, בעת אַ נעגאַטיוו סומע פון ​​apples טוט ניט טאַקע מאַכן זינען, אָבער די פּראָגראַם אַקסעפּץ עס, ווייַל נעגאַטיוו 1, געזונט, עס איז אַ ינטאַדזשער. און איצט די פּראָגראַם אָדער די פאַרזעעניש ין די פּראָגראַם עסט אַ נעגאַטיוו עפּל, און איצט איך האָבן נעגאַטיוו 2 apples. הם, אַזוי אַז ס 'איין לעקציע - אַפֿילו כאָטש די געטינט פונקציאָנירן און פֿאַרבונדענע פאַנגקשאַנז, ווי געטפלאָוו אָדער געצטרינג באַקומען די רעכט דאַטן טיפּ, איר האָבן צו מאַכן זיכער אַז די אַרייַנשרייַב מאכט חוש פֿאַר דיין פּראָגראַם. אין פּעניז, עס וועט נישט טאָן נאָר אַ פּינטלעך פֿאַר אַ ינטאַדזשער, איר וועט דאַרפֿן צו מאַכן זיכער אַז דער באַניצער ינפּוץ אַ ינטאַדזשער אַז מאַכן זינען געגעבן די קאָנטעקסט. חודש קענען נאָר האָבן 28, 29, 30, אָדער 31 טעג. מיר ווילן צו כּסדר מאָנען אַ גילטיק ינטאַדזשער. אויב זיי אַרייַנשרייַב אַ ינטאַדזשער אַרויס פון אונדזער אנגענומען גווול, מיר וועט פּינטלעך זיי ווידער און ווידער, ביז איר געבן אונדז אַ גילטיק ינטאַדזשער. צוריקרופן די "איבערחזרן ביז" פאַרשפּאַרן אין סקראַטטש? איר קענען מאַכן אַ ענלעך בויען אין C ניצן אַ "בשעת" שלייף אָדער "טאָן-בשעת" שלייף. די בשעת שלייף סטרוקטור האט אַ צושטאַנד וואָס מוזן זייַן באגעגנט פֿאַר די גוף פון די שלייף צו ויספירן. דאס זאָל קוקן אַ ביסל ענלעך, ווייַל דער צושטאַנד איז פּונקט ווי די קראַצן בלאַקס מיט די אַנגלעס און גייט אין די בראַקאַץ פון די "בשעת" שלייף. אזוי אַז צושטאַנד וועט טשעק צי די ינטאַדזשער איז ין די צונעמען גווול. איר קענען פּינטלעך די ינטאַדזשער ניצן געטינט און דעמאָלט ויספירן דיין "בשעת" שלייף, ריפּיטינג די פּינטלעך און דרוק ינסטראַקשאַנז, בשעת די אַרייַנשרייַב איז נישט גילטיק. אן אנדער וועג צו ענשור ריכטיק באַניצער אַרייַנשרייַב איז דורך ניצן אַ "טאָן-בשעת" שלייף, וואָס איז זייער ענלעך צו אַ בשעת שלייף. די "טאָן-בשעת" שלייף עקסאַקיוץ די קאָד ין די גוף אָנעס און דעמאָלט טשעקס צי דער צושטאַנד איז באגעגנט אָדער נישט. דאס איז נוצלעך פֿאַר באקומען באַניצער אַרייַנשרייַב, ווייַל איר וויסן אַז איר דאַרפֿן צו פּינטלעך זיי לפּחות אַמאָל. אויב די צושטאַנד איז נישט באגעגנט, די פּראָגראַם וועט ויספירן די שורה נאָך דיין "טאָן-בשעת" שלייף. אויב די צושטאַנד איז באגעגנט כאָטש, דער שלייף וועט איבערחזרן א "טאָן-בשעת" שלייף פֿאַר וואַלאַדייטינג באַניצער אַרייַנשרייַב וועט קוקן עפּעס ווי דעם. איך דערקלערן אַ בייַטעוודיק N, געטינט, און דעמאָלט איבערחזרן ביז ען איז גילטיק. און דעם פּראָצעס, איך דערקלערט, איז געווען ניצן די ינטאַדזשער-דאַטן טיפּ, וואָס איר וועט נוצן פֿאַר די טעג פון די חודש. אבער מיר וויסן אַז די נומער פון פּעניז וועט הויפן אַרויף געשווינד, אַזוי אין סדר צו קראָם גרעסערע נומערן, נוצן די דאַטן טיפּ לאָנגלאָנג, אָבער געדענקען די זעלבע פּרינציפּ פון וואַלאַדיישאַן אַפּלייז. אָסאַם, אַזוי אַמאָל מיר האָבן צוויי גילטיק ינפּוץ פון דעם באַניצער - טעג אין דער חודש און די פּעניז אויף דער ערשטער טאָג - מיר קענען מאַך אַנטו דער ווייַטער טייל פון די פּראָגראַם. דער ערשטער טאָג, דער באַניצער סטאַרץ מיט אָבער פילע פּעניז זיי ספּעסאַפייד און די סומע פון ​​פּעניז אַז זיי באַקומען דעם ווייַטער טאָג איז דאַבאַלד. אזוי עס מאכט זינען צו האַלטן שפּור פון די צוויי אַמאַונץ - ווי פיל געלט דער באַניצער האט און ווי פילע פּעניז זיי וועט זייַן געגעבן. איצט, טאן עפּעס פֿאַר 28-31 טעג איז ריפּעטיטיוו, אַזוי לאָזן 'ס נוצן אַ "פֿאַר" שלייף צו יטעראַטע איבער די טעג אין די חודש, אַפּדייטינג די גאַנץ און פּעני סומע יעדער צייַט. "פֿאַר" שלייף סינטאַקס כּולל די פאלגענדע - אַ יניטיאַליזאַטיאָן, אַ צושטאַנד, און אַ דערהייַנטיקן. דיין "פֿאַר" שלייף וועט ינישאַלייז אַ בייַטעוודיק, ווען עס ערשטער גייט אריין די שלייף. אויב די צושטאַנד איז באגעגנט, דער גוף פון דער שלייף וועט ויספירן. דערנאָכדעם, די דערהייַנטיקן וועט ויספירן. אויב די צושטאַנד איז נאָך באגעגנט, די שלייף וועט ויספירן און דערהייַנטיקן, און איבערחזרן, ווי לאַנג ווי דיין צושטאַנד יוואַליוייץ צו אמת. דאָ ס אַ "פֿאַר" שלייף אַז דיוויידז אַ ינטאַדזשער פּ דורך 2 אַ גאַנץ פון 10 מאל. באַמערקונג ווי איך דערקלערט די ינטאַדזשער פּ אַרויס פון מיין "פֿאַר" שלייף, אַזוי אַז די ינטאַדזשער קענען זייַן צוטריטלעך אַרויס די "פֿאַר" שלייף. נאָך די חודש האט פארביי, עס ס 'צייַט צו דערציילן די באַניצער ווי פיל געלט זיי ווע גאַטאַן. פּער די ספּעק, איר דאַרפֿן צו זאָגן דער באַניצער ווי פילע דאָללאַרס, ניט ווי פילע פּעניז, זיי האָבן. אבער אַזוי ווייַט, איר ווע געהאלטן שפּור פון דער גאַנץ און די פּעניז ניצן לאָנגלאָנגס, וואָס זענען גאַנץ נומערן. עס זענען אַ 100 פּעניז צו $ 1, אַזוי סייַדן די נומער פון פּעניז איז אַ קייפל פון 100, איר וועט דאַרפֿן צו פאָרשטעלן דעצימאַל ערטער. די דאַבאַלד אַוטאָטיפּע אַלאַוז איר צו טאָן דעם. אזוי ווי טאָן מיר בייַטן פון רעפּריזענטינג פּעניז צו דאָללאַרס? זאל ס נעמען אַ קוק פּי.ק. דעם פּראָגראַם נעמט אַ לאָנגלאָנג ביג_פּי און דיוויידז עס דורך 100.000, און פּרינץ דער רעזולטאַט צו פינף דעצימאַל ערטער. אויב מיר געוואלט צו אַרויסווייַזן פיר דעצימאַל ערטער, דעריבער מיר קענען נאָר פאַרבייַטן דעם נומער דאָ. אזוי לאָזן ס ראַטעווען, צונויפנעמען פּי, און דעמאָלט זען די רעזולטאַט, וואָס מיר דערוואַרטן צו זייַן 3.1415 - דער ערשטער פינף דידזשאַץ פון פּי. עס איז נישט כאָטש. און וואָס? גוט, ווייַל ביג_פּי איז אַ לאָנגלאָנג, וואָס איז אַ גאַנץ נומער, וואָס וועט ניט האַלטן שפּור פון דעסאַמאַלז. די מאַדאַפאַקיישאַן איך דאַרפֿן צו מאַכן איז אין דעם אָפּטייל. איך דאַרפֿן צו וואַרפן צו אַ טאָפּל דאָ איידער דיוויידינג, ווייַל דאָובלעס קענען נישט האַלטן שפּור פון דעצימאַל ערטער. און איך בין געגאנגען צו לייגן אַ נייַ שורה דאָ פֿאַר בעסער פאָרמאַטטינג. און דאָ מיר האָבן עס - 3.1416. איר זאלט ​​באַמערקן אַז עס פּרינץ 3.1416 אַנשטאָט פון 3.1415 ווי דערוואַרט. אַז ס ווייַל עס ראָונדס בעשאַס די אָפּטייל פּראָצעס, ווי קעגן צו נאָר טראַנגקייטינג די ווערט. איצט איר זאָל קענען צו דרוקן די לעצט גאַנץ ריכטיק, וואָס פינישעס דער פּראָגראַם. מאַזל - טאָוו. מייַן נאָמען איז זאַמילאַ. און דאָס איז געווען פּעניז. [מוזיק פּלייַינג]