[Powered by Google Translate] డేవిడ్ J. మలన్: అన్ని కుడి, ఈ CS50, మరియు ఈ ఉంది వారం రెండు యొక్క ప్రారంభించండి. ధన్యవాదాలు. మాకు ఒక ఫోన్ కాల్ తో ఇక్కడ ప్రారంభించండి. 617-బగ్-CS50 డయల్ చేయడానికి నేను రెడీ. CS50: ఈ CS50 ఉంది. షటిల్ బాయ్ కోసం, 1 నొక్కండి. ప్రారంభించడానికి, 9 నొక్కండి. డేవిడ్ J. మలన్: అందువలన అతను షటిల్ బాయ్, 1 నొక్కండి కోసం చెప్పారు. కాబట్టి మేము 1 నొక్కండి చూడాలని. CS50: మీ నివాసస్థానం ఏమిటి? కోసం క్వాడ్, 1 నొక్కండి. మాథుర్, 2 నొక్కండి. బాలిస్టన్, ప్రెస్ 3. లామోంట్, ప్రెస్ 4. Mem హాల్, ప్రెస్ 5. ప్రారంభించడానికి, 0 నొక్కండి. డేవిడ్ J. మలన్: మేము క్వాడ్ కోసం 1 నొక్కండి చేస్తాము. CS50: తదుపరి షటిల్ 1:10 PM వద్ద ఈ చాలా నిమిషం వదిలి, మరియు అప్పుడు 1:20 PM వద్ద, 1:30 PM, 1:40 PM. ఈ CS50 ఉంది. డేవిడ్ J. మలన్: సో ఈ CS50 స్వరం ఉంది. మరియు దాని కోసం, చివరి ప్రాజెక్టుల రకాల ఉదాహరణకు ఉదాహరణకు, మీరు వైపు కొరికి చేయవచ్చు సెమిస్టర్ చివరిలో. ఉదాహరణకు, ఆ shuttleboy.cs50.net ఉంది - నేను మొదటి CS51 తీసుకున్న తరువాత రాసిన అసలైన ప్రాజెక్ట్ తిరిగి నేను ఒక అండర్గ్రాడ్యుయేట్ ఉంది. మరియు ఇక్కడ ప్రేరణ తర్వాత తిరిగి, వారు కలిగి ఉంది ముద్రిత షటిల్ బస్ షెడ్యూల్స్, మరియు అక్కడ ఏ ఉంది ఆన్లైన్ అప్ విషయాలు చూస్తున్న భావన. కాబట్టి నేను ఒక వారాంతానికి పావురం యొక్క విధమైన ద్వారా పోస్తారు షెడ్యూల్ ముద్రించబడింది మరియు ఒక కంప్యూటర్ ప్రోగ్రామ్ కి పోర్ట్. ఆ సమయంలో, కంప్యూటర్ ప్రోగ్రామ్ రాసిన జరిగిన C. మరియు మీరు అసలైన వద్ద టైప్ షటిల్ బాయ్ ఇది నడిచింది మేము ఇప్పటివరకు చేయడం చేసిన వంటి మెరిసే ప్రాంప్ట్. కానీ సంవత్సరాలు, అది ఒక తక్షణ ఉద్భవించింది యొక్క సందేశ బొట్. ఇది ఒక లోకి, ఈ వెబ్ సైట్ లో ఇటీవల అభివృద్ధి యొక్క SMS ఆధారిత ఉపకరణాన్ని, అలాగే ఈ వాయిస్ ఆధారిత ఉపకరణము వలె వంటి. మరియు ఈ విషయాలను రకాల వద్ద సూచించు ఉంది మీరు చేస్తాడు సెమిస్టర్ చివరి ద్వారా మీ అంతట మీరే చేయండి. ఉదాహరణకి,, షటిల్ బాయ్ SMS వెర్షన్ జరుగుతుంది క్రింది పనిచేయుటకు. , మీ సెల్ ఫోన్ లో, మీరు 41411 ఒక టెక్స్ట్ సందేశం పంపడానికి మరియు ఉంటే అప్పుడు, షటిల్ బాయ్ కోసం, ప్రత్యేక చిహ్నం sboy పంపండి ఒక మరియు ఒక మూలం పేరు B, మరియు B తరువాత ఒక ఉంది గమ్యం - ఉదాహరణకు, బాలిస్టన్ స్పేస్ క్వాడ్ - మీరు కొన్ని క్షణాల గెట్ బ్యాక్ ఉండాలి ఒక టెక్స్ట్ షటిల్ బాయ్ నుండి సందేశం మీరు చెప్పే సరిగ్గా ఉన్నప్పుడు తదుపరి కొన్ని షటిళ్ళు ఆ సమయం నుండి, ఒక దానికి వెళుతున్నారా పాయింట్ B. మరియు ఈ గా పిలిచే దాన్ని మరింత సాధారణ ఉదాహరణ ఒక API ఉపయోగించి. కాబట్టి ఉదాహరణకు, ఇక్కడ ఈ, కేవలం shuttleboy.cs50.net ఉంది ఈ వాస్తవ వెబ్ ఆధారిత అవతారం. కానీ ఈ మరియు ఇతర Apps తెలియజేస్తున్నాయి ఆ డేటా ఆ CS50 అభివృద్ధి చేసింది అన్ని రూపంలో ఇక్కడ అందరికీ పెడతారు API లు, అనువర్తన ప్రోగ్రామింగ్ అంతర్ముఖం. మరియు కేవలం మంది మేము ఇష్టం చెప్పి ఒక ఫాన్సీ మార్గం ఇంటర్నెట్ మరియు ఇతరులు సృష్టించడం కొంత సమయం గడిపిన మీరు మా నుండి డేటా పట్టుకొను మరియు చేయడానికి ఉపయోగించే సాఫ్ట్వేర్ అప్పుడు పైన మీ స్వంత అనువర్తనాలను రూపొందించడానికి ఆ డేటా సమితి యొక్క. కాబట్టి ఉదాహరణకు, ఇక్కడ ఈ షటిల్ బాయ్ API పేజీ, ఇది ముఖ్యంగా CS50 మాన్యువల్, పత్రాలు లో నిర్మాణము సమాచారం కోసం CS50 సర్వర్లు అడగడం గురించి వెళ్ళండి ఎలా. ఉదాహరణకు, మీరు CSV ఫైళ్లు, కామాతో తెలిసి ఉంటే విలువలు వేరు, ఈ కేవలం విధమైన ఉంటాయి శీఘ్ర మరియు డర్టీ Excel వంటి ఫైళ్లు. కాబట్టి మీరు అన్ని డేటా మొత్తం షటిల్ బాయ్ అడగవచ్చు ఇళ్ళు మరియు వారి GPS కోఆర్డినేట్స్, మరియు మీరు పొందుతారు ఆ వంటి తిరిగి, ముఖ్యంగా, స్ప్రెడ్షీట్ ఆ మీరు అప్పుడు మీ సొంత కార్యక్రమంలో చదివి చేయవచ్చు , ఫలితాలు ఉత్పత్తి షటిల్ బాయ్ కూడా వంటి చేయడం నిర్మాణము. ఆ మరింత చేరువైన, మరింత ఆధునిక డేటా ప్రాతినిధ్యాలు కోసం JSON, జావాస్క్రిప్ట్ ఆబ్జెక్ట్ నొటేషన్ ఉన్నాయి. ఏదో వైపు మీరు మళ్ళీ వస్తుంది సెమిస్టర్ చివరిలో. కానీ మళ్ళీ, ఈ కేవలం CS50 యొక్క సొంత API లు అనేక ఒకటి. మరియు అద్భుతమైన విషయం, ఇప్పుడు Facebook ఈ రోజులు మరియు Twitter మరియు Google మరియు చాలా చక్కని ప్రతి ప్రసిద్ధ వెబ్సైట్ అవుట్ మీరు చదివిన ఉంటే అంటే API, ఒక రకమైన అక్కడ ఉంది వారి వెబ్ సైట్ లో డాక్యుమెంటేషన్, మీరు ఒక కోసం సైన్ అప్ ఖాతా, మీరు పైన సాఫ్ట్వేర్ రాయడం మొదలు పెట్టవచ్చు అక్కడ ఇస్తుందో అది టూల్స్ లేదా డేటా ఆ సంస్థ. రెండు సంవత్సరాల క్రితం తిరిగి మా స్వంత బోధన సభ్యుల కావున ఈ యొక్క Mac వెర్షన్ రాశారు. కాబట్టి ఎడమ ఎగువన ఇక్కడ Mac పేరుతో లింక్ వద్ద, మీరు వాస్తవానికి ఏమి మీ స్వంత Mac లో అమలు చేసే Mac OS విడ్జెట్ డౌన్లోడ్ విషయాల అదే రకాల. కాబట్టి ఈ వంటి డేటా సమితుల యొక్క టాప్ పై గురించి. సెమిస్టర్ చివరిలో ఆ మరింత. కాబట్టి లెట్స్ కేవలం రకమైన పొందండి యొక్క ఒక బగ్ నిజమైన క్విక్ ఈత కొట్టడానికి కొన్ని విషయాలు మీద రోజు వేడెక్కినప్పుడు, మరియు అనుకుంటున్నాను విషయాలు మేము గత వారం చూశారు. ముఖ్యంగా, సే,, నాకు ముందుకు వెళ్లి పుల్ అప్ తెలియజేయండి ఇక్కడ ఈ ఉదాహరణ. Buggy1.c, ఈ కోర్సు యొక్క వెబ్ సైట్ లో అందుబాటులో ఉంది మీరు అనుకుంటే అది డౌన్లోడ్ మరియు మీరే చుట్టూ దూర్చు మీరు. కానీ లెట్స్ ఈ చాలా చిన్న కార్యక్రమం ఇక్కడ జూమ్, మరియు కేవలం ప్రాథమిక బిల్డింగ్ బ్లాక్స్ ఆ కొన్ని సూపర్ ఫాస్ట్ రీక్యాప్ మేము నిజంగా కేవలం మంజూరు కోసం తీసుకొని ప్రారంభించడానికి వెళ్తున్నారు. నీలం అంశాలు అవసరం కాబట్టి, 9 ద్వారా పంక్తులు 1 లో మాత్రమే ఉంటాయి, సాఫ్ట్బాల్ ప్రశ్నలు. కాబట్టి ఈ కేవలం వ్యాఖ్యలు ఉన్నాయి. వారు ఎలాంటి క్రియాత్మక అర్ధం లేదు. అయితే గమనికలు అని అర్థంలో వ్యాఖ్యలు అని నేను, మానవ, ఆ ఉపన్యాసంలో మరియు తరువాత నాకు చేసిన ఉపన్యాసం, నిజానికి గుర్తుంచుకోగలరు ఈ కార్యక్రమం లైన్ ద్వారా లైన్ ద్వారా రీడ్ చేయకుండా చేస్తుంది మరియు నా మనస్సులో చరిత్ర పునః. అంతేకాకుండా, నేను వంటి మరొకరికి ఈ కార్యక్రమం చేతితో ఉంటే మీరు, అది, ఎందుకంటే ఈ వంటి వ్యాఖ్యల, మీరు చాలా స్పష్టమైన యొక్క కార్యక్రమం నిజానికి ఏమి, లేదా కనీసం ఏ కార్యక్రమం చేయడం చేయవలసి ఉంటుంది. అది సరైన అయినా లేదా మొత్తం మరొక విషయం. ఇప్పుడు, C, మల్టీ లైన్ వ్యాఖ్యలతో, రీకాల్ ఆ పంక్తిలో ఒక ఇక్కడ / *, మేజిక్ గుర్తు. ఇది ఒక వ్యాఖ్య యొక్క ప్రారంభ వస్తుంది ఇక్కడ అర్థం. మీరు ముగింపు టెర్మినేటర్ చేరుకునే వరకు మరియు ఇంకా ఏదీ, మేటర్స్ * / సరసన ఇది. నేను ఇక్కడ నుండి 80 కొన్ని బేసి నక్షత్రాలు ఉన్నాయి వాస్తవం ఎడమ నిజంగా కేవలం ఒక సౌందర్య వివరాలు ఉంది. ఇది ఎలాంటి క్రియాత్మక అర్ధాన్ని కలిగి ఉంది. ఇప్పుడు ఎలా లైన్ 11? ఈ లేమాన్ పరంగా ఏమి చేస్తుంది? ఆ ఏమిటి? ప్రేక్షకులు: ప్రామాణిక కలిపి. డేవిడ్ J. మలన్: OK, మంచి. కనుక ఇది stdio.h లైబ్రరీ ఉన్నాయి. కాబట్టి ఆ అర్థం ఏమిటి? Well, ఆ ఫైల్ లోపల, stdio.h, ఒక మొత్తం బంచ్ ఉంటాయి ఫంక్షన్ ప్రకటనలు - ఆ ఎవరో రాసిన స్మృతి. లో ప్రకటించబడిన ఒక చర్య యొక్క మరియు మంచి ఉదాహరణగా stdio.h ఉంది - ఇది ఇష్టమైన ఇప్పుడు ద్వారా? కాబట్టి printf, అత్యంత సాధారణ అంశాల్లో ఒకటి కచ్చితంగా ఉపయోగించడానికి ప్రారంభంలో, ఆ లైబ్రరీ నుండి ఉంది. నేను కోడ్ లైనును మినహాయించాలని ఉంటే, గణగణమని ద్వని చేయు అరుస్తుంటారు అన్నారు ఒక ప్రకటించనివారు గుర్తు ఉపయోగించడం గురించి నా ఏదో. ఎందుకంటే బహిరంగంగా ప్రకటింపబడని ఏదో, బహుశా కీవర్డ్ ఉంది మేము printf కనపడే దాని కంపైలర్ సమాచారం లేదు మేము ఆ లైన్ ఉన్నాయి తప్ప ఇష్టం. మరియు ఎక్కువ భూమికి, నిజంగా, దాన్ని లైన్ అని ఉంది ఇది సర్వర్ యొక్క ఉన్నప్పుడు ఆ ఫైలు, stdio.h, ప్రారంభం హార్డు డ్రైవు, లేదా ఉపకరణం యొక్క హార్డు డ్రైవు, మరియు కాపీ పేస్ట్ అది కుడివైపు నా ఫైల్లోకి, లేకుండా నా ఆ మానవీయంగా చేయండి అవసరం. ఇప్పుడు, ఒకసారి మేము ముందు కాలం మేము ప్రారంభిస్తాము, ప్రధాన ఇక్కడ క్రిందికి నిరర్ధకమయినది ఏమి Int మరియు విడిగా టీసింగ్. కానీ ఇప్పుడు కోసం, యొక్క మూడు పంక్తులు చూద్దాం లోపల 15 17 ద్వారా. ఇక్కడ ఈ నేను బగ్గీ వంటి పేర్కొన్నారు. నా వ్యాఖ్యలు లో లైన్ 7 "10 ప్రింట్ చేస్తే చెప్పారు ఆస్టరిస్క్లు కానీ. "ఎందుకు ఈ నిజానికి, ప్రింట్ లేదు లేదు 10 అలాంటి తారల? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఖచ్చితంగా. కాబట్టి మేము 0 నుండి లెక్కించడానికి మొదలు పెడుతున్నారు అని గుర్తించలేకపోతే. మరియు ఈ నిజంగా ప్రోగ్రామింగ్ లో ఒక ఆచారం మరియు లెక్కించడానికి ప్రారంభ సాధారణంగా కంప్యూటర్ సైన్స్, 0 బదులుగా 1 నుండి. మరియు ఈ నిజంగా ఆ, వాస్తవానికి నుండి వచ్చింది ఉదాహరణకు, మేము వేదిక పైన ఎనిమిది మంది వరకు ఉన్నప్పుడు, ఎప్పుడు ఎవరూ వారి చేతి పెంచడం, వారు అన్ని సమర్థవంతంగా సున్నాలు. కాబట్టి, చాలా కంప్యూటర్ కన్వెన్షన్ చూస్తూ ఉంటాము కాబట్టి, 0 నుండి లెక్కింపు మొదలు. తక్కువ సంఖ్య అయితే మీరు బైనరీ లో సూచిస్తుంది. కాబట్టి ఇక్కడ 0 నేను ప్రారంభించడం మొదలు చేసాము. మేము 0 నేను సమాన సెట్ చేసాము. కానీ నేను లేదా నేను కంటే తక్కువ తనకు, ఇక్కడ ఈ పొరపాటు 10 సమానం. కానీ మీరు నేను 0 వద్ద మొదలు మరియు ఉంటే ద్వారా, నేను వెళ్ళి ఆ అనుకుంటే అప్ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, నిజానికి వెళుతున్న నేను మారారు ఎందుకంటే, స్క్రీన్ కు 11 నక్షత్రాలను ప్రింట్ మరియు 10 సమానం. ఇక్కడ సులభమైన పరిష్కారం తర్వాత ఏమిటి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: జస్ట్ కంటే తక్కువ కు మార్చండి. మీరు నిజంగా, మీరు ఈ పని చేయడు. కానీ సాధారణంగా, ఆ తర్వాత frowned యొక్క. కాబట్టి 0 నుండి లెక్కించడానికి ప్రారంభ మీ కావాలి విషయం సాధారణంగా ఉపయోగించే కలుగుతుంది. ఇప్పుడు, ఏ లోనే మరియు ఈ మొత్తం నిర్మాణం గురించి? లూప్ ఈ లైన్ 15 demarks ఒక. కాబట్టి ఒక క్రియ కాదు. ఇది కేవలం ఒక ప్రకటన. మేము ప్రారంభం చూసిన లాగా, ఒక మళ్ళీ వెతికినా నిర్మాణం ఉంది. మరియు అది మూడు భాగాలుగా ఉంటుంది. మొదటి భాగం ఉందని గమనించండి సెమికోలన్ యొక్క ఎడమ. రెండు సెమికోలన్లు మధ్య మధ్య భాగం ఉంది. మరియు తర్వాత కుడి కుడి చేతి భాగం ఉంది రెండవ సెమికోలన్ యొక్క. ఇప్పుడు, ఈ మొదటి ఏమి చేస్తుంది? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అక్కడ? Yeah? ప్రేక్షకులు: మొదలుపెట్టటం. డేవిడ్ J. మలన్: ప్రారంభం. కాబట్టి దీని అర్థం ఏమిటి? మేము i అనే వేరియబుల్ నిర్ధారించారు. నేను Int నేను పేర్కొన్న ఎందుకంటే ఇది రకం Int ఉంటుంది. నేను 0 విలువకు నేను ప్రారంభించడం చేస్తున్నాను. కాబట్టి ఇది నిజంగా ఏమి చెబుతున్నారో యొక్క? ఇది సమర్థవంతంగా తగినంత నాకు ఇవ్వండి, హే కంప్యూటర్ కు ఈవిధంగా యొక్క అప్పుడు మెమరీ, కావలసినంత RAM, అనేక సరిపోయే, మరియు ఉంచండి RAM యొక్క భాగం సంఖ్య 0. మరియు జనాంతికంగా, కనీసం లోపల, సాధారణంగా ఒక Int ఎలా పెద్దది ఉపకరణం యొక్క? ప్రేక్షకులు: 32 బిట్. డేవిడ్ J. మలన్: 32 బిట్స్. నేను మరోలా 4 బైట్లు అని పిలుస్తారు 32 బిట్స్, ఇవ్వండి అని చెప్పుకుంటారు ఆ మరియు చాలా తేలిక, అది విలువ 0 ఉంచారు ఎందుకంటే అది కేవలం 0 అన్ని బిట్స్ సెట్ చేయడం. కాబట్టి ఇప్పుడు, ఇక్కడ రెండవ భాగం పరిస్థితి. మరియు పరిస్థితి, పేరు సూచించినట్లు, తనిఖీ ఏమిటి మళ్ళీ, మళ్ళీ, మళ్ళీ అది ఒప్పు లేదా తప్పు కావచ్చు వరకు. కాబట్టి ఇది కోడ్ క్రింది పంక్తులు చేయండి చెబుతున్నారు - అవి లైన్ 16, ఇండెంట్ మాత్రమే ఒకటి ఎందుకంటే క్రింద - కాబట్టి నేను 10 కంటే తక్కువగా ఉంటుంది. మరియు ఈ లూప్ ద్వారా ప్రతి పునరావృతం తరువాత, చేయండి ఈ సందర్భంలో ఇది incrementation, నేను + +. ఇప్పుడు, నేను + + అని లేదు. నేను ఉంటుంది -. నేను చేసింది అయితే, ఏ ప్రవర్తన జరగబోతోంది ఈ కార్యక్రమం చేయడం? ప్రేక్షకులు: ఇది ఒక అనంతమైన లూప్ చేస్తాడు. డేవిడ్ J. మలన్: ఇది అనంతమైన లూప్ యొక్క రకమైన చేస్తాడు, మేము ప్రతికూల 2 బిలియన్ లేదా తర్వాత లక్కీ పొందండి తప్ప. బహుశా విషయాలు కేవలం పరిమిత స్వభావం ద్వారా, చుట్టూ ఉంటుంది మేము ఒక పూర్ణాంకానికి కోసం కేటాయించబడిన చేసిన బిట్స్ సంఖ్య. కానీ అది ఖచ్చితంగా 10 కంటే చాలా iterate వెళ్లి యొక్క కచ్చితంగా ఇక్కడ 11 సార్లు. ఇప్పుడు, కేవలం ఒక పక్కన, తెలుసుకుంటారు నేను + + మరియు నేను - నిజంగా కేవలం వాక్యనిర్మాణ చక్కెర. ఇది కొంచెం ఏది కేవలం సంక్షిప్త లిపి సంకేతం యొక్క స్పష్టంగా క్రింది రాసిన: i = i + 1. నేను సారూప్యత + +. ఇది కేవలం రకమైన చెప్పడానికి prettier కనిపిస్తోంది నేను + +. ఇది చదవదగ్గ, మరింత సంక్షిప్తమైన ఉంది. కాబట్టి ఎక్కువ మంది ఆ బదులుగా ఏమి. కానీ ఈ కార్యాచరణలో సమానంగా ఉంటుంది మేము చూసిన. కాబట్టి చిన్న లో, ఇక్కడ శీఘ్ర పరిష్కారం కేవలం నేను iterate అంటే అన్ని మార్గం అప్ 0 నుండి 10 కంటే తక్కువ కు. మరియు తర్వాత మేము నిజంగా 10 నక్షత్రాలు పొందుతారు. కాబట్టి యొక్క ఈ ప్రయత్నించండి తెలియజేయండి. నాకు దిగువన టెర్మినల్ తెరుచుకుంటుంది లెట్. ఈ సైన్ అని నాకు డైరెక్టరీలో వెళ్ళి తెలపండి ఇప్పుడు కోసం గణగణమని ద్వని చేయు తో మాన్యువల్గా దీన్ని కంపైల్ వెళుతున్న. నేను ఎంటర్ buggy1.c ఈ సంకలనం వెళుతున్న. ఇప్పుడు buggy1, ఎందుకు అటువంటి దస్త్రము లేదా డైరెక్టరీ లేదు buggy1 అని? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును. కాబట్టి ఇది నిజానికి a.out అని. మీరు గణగణమని ద్వని చేయు అమలు చేస్తే గణగణమని ద్వని చేయు ఉన్న కాబట్టి, రీకాల్ కంపైలర్ మరియు మీరు మీరు పేరు తెలుపుము లేదు మీ ప్రోగ్రామ్ ఇవ్వడానికి, అది a.out డిఫాల్ట్ చెప్పారు. కాబట్టి నిజంగా నేను ls లేకపోతే - అయ్యో. నేను didn't - బ్లాక్ అండ్ వైట్ సమస్యను కొన్ని మీరు స్థిరమైన చేయబడింది ఎదుర్కొంది. కానీ నాకు మనం. అక్కడ మేము అక్కడ ఎడమ చేతి వైపు a.out ఉన్నాయి. కాబట్టి మేము బదులుగా buggy1 యొక్క a.out అమలు చేయాలి. నాలో ముందుకు వెళ్లి మనం. . / A.out నమోదు చేయండి. నేను స్పష్టంగా ఏమి లేదు? ప్రేక్షకులు: సేవ్. డేవిడ్ J. మలన్: నా ఫైలు సేవ్. సులభంగా కంట్రోల్ S కొట్టిన లేదా వెళ్ళి పరిష్కరించవచ్చు ఆ ఫైలు, చాలా కార్యక్రమాలు వలె సేవ్. నాకు, ఇక్కడ డౌన్ వెళ్ళి స్క్రీన్ క్లియర్, మళ్ళీ అమలు లెట్. మరియు బగ్ ఇప్పటికీ ఉంది. సో వాట్ అన్నారు - ప్రేక్షకులు: మీరు కంపైల్ లేదు. డేవిడ్ J. మలన్: Ah, మంచి. నేను కంపైల్ లేదు. ఒక మూర్ఖుడిలా, నేను తప్పు అని చూడడానికి కోడ్ వద్ద చూస్తున్నాను. కాబట్టి గణగణమని ద్వని చేయు buggy1.c, ఇప్పుడు a.out. మరియు అసహనము, సేవ్. కొత్త గీత ఉంది ఎందుకంటే దీనిని తక్కువ అగ్లీ కనిపిస్తోంది ఎక్కడైనా కార్యక్రమంలో. కాని మళ్లీ ఆ కేవలం ఒక సౌందర్య వివరాలు మాత్రమే. మేము ఆ పరిగణించవద్దు ఉంటే కనీసం, మేము చేయాలి ఇప్పుడు 10 అటువంటి నక్షత్రాలు చూడండి. Well, ఈ రెండవ సన్నాహక ఉదాహరణ గురించి ఏమి? కాబట్టి buggy2 లో, ఈ వెర్షన్ కూడా ముద్రిస్తుంది ఆ దావా 10 నక్షత్రాలు, పంక్తికి ఒకటి. ఈ సమయంలో, నేను చేయడానికి, ఒక NEWLINE పాత్ర కలిగి కొద్దిగా prettier విషయాలు. కానీ బదులుగా నేను పొందండి ఈ ఉంది. కాబట్టి ఎంటర్ నాకు గణగణమని ద్వని చేయు buggy2.c తెలియజేసేలా. ప్రస్తుతం మళ్లీ a.out అని. నమోదు చేయండి. నాకు ఒకే ఒక కొత్త లైను మాత్రమే ఆఖరి కొత్త లైన్ చూసే తదుపరి లైన్ నా ప్రాంప్ట్ తరలిస్తుంది. మరియు ఇంకా స్పష్టంగా నేను, తర్వాత ఒక కొత్త లైన్ * ప్రింటింగ్ చేసిన *, అప్పుడు ఒక కొత్త మార్గం. కానీ ఇక్కడ బగ్ ఏది? Yeah? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఖచ్చితంగా. కాబట్టి పైథాన్, పేరు ఇండెంటేషన్ని వంటి కొన్ని భాషలు, కాకుండా వాస్తవానికి లో, క్రియాత్మక అర్ధాన్ని కలిగి ఉంది సి వంటి భాష - మేము చూస్తారు వంటి, PHP, JavaScript - ఇండెంటేషన్ని కేవలం మానవులు 'లాభం కోసం నిజంగా ఉంది. నేను లైన్ 16 మరియు 17 ఇండెంట్ చేసిన నిజానికి, చాలా బాగుంది కానీ ఇక్కడ ఎలాంటి క్రియాత్మక అర్ధాన్ని కలిగి ఉంది. నేను రెండు పంక్తుల కోసం భాగంగా అమలు చేయాలనుకుంటే లూప్, అప్పుడు నేను ఇలా చేయడం ద్వారా వంకర జంట కలుపులు వాటిని జతపరచు ఉండాలి. మీరు ఆ మూలన కట్ మరియు వంకర జంట కలుపులు ఉంటే వదిలివేయు చేయవచ్చు కేసు ఏమిటి? ప్రేక్షకులు: కేవలం ఒక పంక్తి. డేవిడ్ J. మలన్: కేవలం ఒక పంక్తి. కాబట్టి ఆ సింటాక్స్ వివరాల యొక్క ఒక నైస్ విధమైన కేవలం విధమైన, అందుచే మీరు రెండు, మూడు పంక్తులు రాయడం సమయం వృధా చేసుకోకండి కర్లీ జంట కలుపులు, కేవలం కోడ్ ఒక వాక్యం రాయడానికి. కానీ మీరు రెండు లేదా ఎక్కువ లక్షణాలను కలిగి ఉంటే, మేము నిజానికి ఈ చేయాలి. కాబట్టి ఇప్పుడు ఈ సేవ్ చేసేలా. నాకు ముందుకు వెళ్లి తిరిగి అమలు గణగణమని ద్వని చేయు లెట్. అప్పుడు నాకు a.out తిరిగి వివరించారు, ఇప్పుడు నేను ప్రతి లైనుకు ఒక పొందండి. ఇప్పుడు, a.out మళ్ళీ ఒక కార్యక్రమం కోసం ఒక మూగ పేరు యొక్క రకం. నేను నిజానికి నాకు ఫైల్ పేరు ఇవ్వడం గణగణమని ద్వని చేయు తెలియజేయవచ్చు ఆ buggy2 కూడా ఎక్కువగా యూజర్ ఫ్రెండ్లీ ఏమిటి? కొంచం ఎక్కువ స్పష్టంగా? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: OK, నేను నిజానికి చాలా పడుతుంది యూజర్ ఫ్రెండ్లీ సత్వరమార్గం మరియు కేవలం వ్రాయండి buggy2 చేయండి. నేను ఈ విషయంలో. సి పేర్కొనండి ఎంటర్ నొక్కండి లేదు. ఏ రాబడుతుంది అది ద్వారా నాకు buggy2.c కూర్చింది ఉంది దీన్ని గణగణమని ద్వని చేయు అడగడం. ముఖ్యంగా, గణగణమని ద్వని చేయు కాల్స్, అది మరింత ఉపయోగించి గణగణమని ద్వని చేయు నడుస్తుంది ఆదేశ పంక్తి వాదనలు లేదా నిజానికి అవసరం కంటే స్విచ్లు. ఆ సమయంలో, మేము ఈ వివిధ ఏ అన్ని వచ్చి చేస్తాము గుప్తమైన మిశ్రమ భావాలు అర్థం. కానీ ఇప్పుడు కోసం, ఆ నా యొక్క ఇబ్బంది సేవ్ యొక్క గుర్తు అవసరం మరియు ఆ అన్నింటినీ టైప్ చేయడానికి వివిధ మిశ్రమ భావాలు. మరియు దాని పైకి అంతిమంగా ఇప్పుడు నేను buggy2 కలిగి. నేను మానవీయంగా దీన్ని చేయాలనుకుంటున్నారా ఉంటే, అయితే, నేను బదులుగా చేయవచ్చు - గణగణమని ద్వని చేయు-o buggy2 మరియు తరువాత buggy2.c. మరియు అదే నాకు buggy2 గా పిలువబడే ఒక ఫైల్ ఇస్తుంది. కాబట్టి చిన్న లో, గణగణమని ద్వని చేయు సంగ్రాహకుడి. చేయి మేము మరింత ఉపయోగించి మేము కేవలం ఒక వినియోగదారు అనుకూలమైన సాధనం మరియు మరింత అది మొదలవుతుంది ఎందుకంటే మా సడలించడం. మరియు మేము చివరగా, 0 తిరిగి. ప్రస్తుతం, కేవలం ఎందుకంటే, కాని మేము ఆ భాగం టీసింగ్ ప్రారంభిస్తాము నేడు మరియు బుధవారం. ఈ ఏ ఏ ప్రశ్నలు? Yeah? ప్రేక్షకులు: [వినబడని] అక్కడ కోట్స్ లో ls? డేవిడ్ J. మలన్: OK. నేను నాకు కొన్ని మ్యాజిక్ చేస్తున్న కోట్స్ లో టైప్ చేసిన ls, తెర వెనుక బగ్ను పరిష్కరించుటకు. మేము మీరు అనేక చెప్పడం చేసిన నేను, మర్చిపోయాను ఏమి చర్చా వేదికల, - మేము ఈ ఇప్పుడు చేస్తాను - సుడో yum-y నవీకరణ appliance50. అయ్యో, కుడి స్పెల్లింగ్ ఆ మార్పు. కాబట్టి ఉపకరణం ఒక ఆపరేటింగ్ సిస్టమ్ వలె ఉంటుంది. ఇది Fedora అని ఈ ఆపరేటింగ్ సిస్టమ్ రన్ అన్నారు. ఇప్పుడు ఎందుకంటే నా నిదానమైన ఇంటర్నెట్ కనెక్షన్ యొక్క, నేను మీరు నిజంగా అది hosed. మేము లో చేయడానికి మీరు చెప్పండి, కాబట్టి సుడో yum update అమలు సమస్య సెట్, ముఖ్యంగా ఆటోమేటిక్ అప్డేట్లను నడుస్తున్న వంటిది Mac OS లేదా Windows లో. మరియు ప్రారంభంలో ఈ నడుస్తున్న కారణం ఎందుకంటే మేము ఉపకరణం రూపొందించినవారు, నేను, సమస్య సమితి గందరగోళంలో, మరియు నేను అనుకోకుండా మీ అన్ని కార్యక్రమాల కనపడేటట్లు చేసింది మీరు చూసి లేదు ఎందుకు నల్లటి తెరపై బ్లాక్, ఇది అప్రమేయంగా. కానీ ఉపకరణం యొక్క తాజా వెర్షన్ ఈ నవీకరణ పరిష్కరిస్తుంది. నేను ఇంటర్నెట్ తర్వాత నేను విరామ సమయంలో ఆ పరిష్కరించడానికి ఉంటాం కనెక్టివిటీ. కాబట్టి కోట్లు కేవలం చాలా తెలివిగా, నా తప్పు దాక్కున్నాడు స్పష్టంగా. ఇతర ప్రశ్నలు? అవును? ప్రేక్షకులు: తయారు ఎక్కడ నుండి వస్తుంది? [వినబడని] డేవిడ్ J. మలన్: మంచి ప్రశ్న. తయారు ఎక్కడ నుండి వస్తుంది? ఇది చాలా ఏళ్ల ఉనికిలో ఒక Linux కార్యక్రమం, పొడవుగా ఉంది CS50 ముందు. మరియు అది Fedora వంటి ఆపరేటింగ్ సిస్టమ్ తో వస్తుంది. ఇది CS50 లైబ్రరీ నుండి రాదు. నిజానికి, CS50 లైబ్రరీ నుండి వచ్చిన మాత్రమే విషయాలు ఇప్పటివరకు, మేము చూసిన ఆ, GetString, GetInt, అన్ని ఉన్నాయి ఆ పనులను పొందండి మరియు పదం స్ట్రింగ్, మరియు కొన్ని కొంతవరకు, bool పదం. మేము CS50 ప్రవేశిస్తాడు కానీ మేము ఆ వేరుగా బాధించటం చేస్తాము ఉపకరణం కూడా. కాబట్టి అవును, ఇక్కడ ఒక ప్రశ్న మరింత. ప్రేక్షకులు: మీరు బగ్గీ తయారు ఆపై చెప్పినప్పుడు, ఎలా కంప్యూటర్ [వినబడని] తెలుసా? డేవిడ్ J. మలన్: మంచి ప్రశ్న. కాబట్టి మీరు అమలు చేసినప్పుడు buggy1 తయారు లేదా buggy2 తయారు, ఎలా తెలిసిన రాబడుతుంది? మీరు buggy1 తయారు టైప్ చేస్తే అప్రమేయంగా, ఒక కోసం లుక్స్ తయారు ఫైలు buggy1.c అని. అది, తగిన గణగణమని ద్వని చేయు ఆదేశాలను అమలు తద్వారా a.out అని డిఫాల్ట్ అవుట్పుట్ ఫైల్ భర్తీ. నిజానికి, మేము ఏమి విషయంలో చూస్తే, ఏ - యొక్క ఈ విడిచి తెలియజేయండి. మేము నిజంగా చేస్తున్న ఏమి విషయంలో చూస్తే,, buggy2 తయారు ఇది తాజాగా ఇప్పటికే. కాబట్టి, నాకు RM ఆదేశం తొలగించడానికి కార్యక్రమం నేను ముందు రాశారు. Y-E-S నేను తొలగించాలని నిర్ధారించడానికి టైప్. నేను ఇప్పుడు తయారు చేస్తే, ఇది చాలా సుదీర్ఘ లైన్ లో గమనించవచ్చు ఈ చివరి విషయం ఇక్కడ,-o buggy2 ఉంది. పూర్తి చేయడానికి చేస్తున్న వరకు, మాట్లాడటానికి, ఆ వాదన అక్కడ ఉన్న గణగణమని ద్వని చేయు, కాబట్టి నన్ను నేను టైప్ లేని. All right, కాబట్టి పరిపాలన యొక్క శీఘ్ర జంట ప్రకటనలు. కాబట్టి విభాగాల కోసం, ఇది అధికారికంగా ఈ వస్తున్న ప్రారంభమైంది ఆదివారం, మీరు ఎల్లప్పుడూ ఉంటే, తీసుకుని చెయ్యవచ్చును మీరు ఒక, ఒక ల్యాప్టాప్ ఉన్నాయి. మీరు ఒక ల్యాప్టాప్ లేకపోతే, ద్వారా నాకు చేరుకోవడానికి లేదు నాకు ఒక ఇమెయిల్ తొలగించాడు. మరియు మేము ఒక వర్క్ఫ్లో కనిపెడతాడు. ఏ సాధారణంగా మీరు విభాగంలో చూడగలరు వారు భాగంగా ఉన్నట్లు ఉంది సంభావిత, పార్ట్ చేతులు ఆన్. మేము ప్రత్యేకంగా ప్రశ్నలు యొక్క విభాగం భాగంగా ఉపయోగించండి కొన్ని నడవడానికి వారం యొక్క సమస్య సెట్, ఉపన్యాసం నుండి సంభావిత విషయం. మరియు ఆ ప్రస్తుత సమస్య సెట్ లో అంతే. మరియు మేము కూడా కొన్నిసార్లు, కొన్ని ప్రయోగాత్మక చర్యలు ప్రవేశిస్తాడు చేస్తాము వీటిలో కొన్నిసార్లు యొక్క, సమర్పించబడుతుంది అవసరం ఇది రెడీ. ఉదాహరణకు, ఈ మొదటి వారంలో, అవి కేవలం వంటి అర్థం చేస్తున్నారు సన్నాహక వ్యాయామం. మరియు మీరు ఆ సమస్యలను ఆ నిజంగా అని చూడగలరు. వారు అవసరం లేదు చాలా చిన్న అని అర్థం, కానీ మీరు అవసరం లేని రాయడానికి చిన్నవిషయం కార్యక్రమాలు తాము మరియు ఉత్తేజకరమైన కానీ మంచి అవకాశాలను ఒక సౌలభ్యం లో, క్రొత్త ఫంక్షన్లు, సిన్టాక్సుతో సాధన మీ సహ విద్యార్థులను కొన్ని కలిగి ఉన్న విభాగం ప్రదర్శించడానికి మీ TF అదే. మరియు మనం కాలక్రమంలో చేస్తాను, CS50 Spaces అనే ఒక పరికరాన్ని ఉపయోగిస్తారు అనగా బదులుగా కేవలం CS50 ఉపకరణం ఉపయోగించి, మీరు చేస్తాము మీరు చేయగలరు పేరు బదులుగా, ఒక బ్రౌజర్ లో ఒక వెబ్ పేజీకి వెళ్ళండి విభాగం సమయంలో బ్రౌజర్ విండోలో కోడ్ రాయడానికి. మీరు నిలిపివేస్తే ఆపై, మీ బోధన తోటి అప్పుడు చూపుతుంది మీరు మీ బ్రౌజర్ లో మీ తెరపై టైప్ చేస్తున్నప్పుడు ఉండే వస్తువు లేదా అజ్ఞాతంగా లేదో తరగతి ముందు వద్ద విండో అప్, బహిరంగంగా, తద్వారా అతను లేదా ఆమె అప్పటి ద్వారా నడిచే మీ సహ విద్యార్థులను మీరు ఏమి, మీరు బాగా ఏమి లేదు. మరియు తిరిగి, మిగిలిన ఈ అన్ని చక్కగా అజ్ఞాతమైంది చేయవచ్చు హామీ ఇచ్చారు. కానీ ఎక్కువ చక్కటి అవకాశం ఉంటుంది ఉపన్యాసం లాగ కంటే ప్రభావవంతమైన అనుమతిస్తుంది. అదే సమయంలో, మేము ఈ విషయాలు సూపర్ అని ఉంటుంది ఐచ్ఛిక, కానీ లో అందరికీ ఉండే విభాగాలు, తరగతి, తద్వారా మీరు మరింత సమిష్టిగా చేయవచ్చు సమస్య ఒక సెట్. ఇక్కడ షెడ్యూల్ ఉంది. ఇది cs50.net వద్ద హోమ్ పోస్ట్. హ్యాకర్-నిర్దిష్ట అక్కడ మేము గమనించండి ఒక రేపు మధ్యాహ్నం. మరియు మేము ఒక రోజు మరియు ఒక రేపు చిత్రం ఆ పోస్ట్ చేస్తాము 24 గంటల్లో ఆన్లైన్. మీరు, ఈ కాలంలో ఏ చేయలేరు చేస్తే ఆందోళన లేదు. మరియు తిరిగి, షెడ్యూల్ cs50.net వద్ద ఇప్పుడు ఆన్లైన్. స్వయంగా విభాగీకరణ పరంగా, మీరు ఒక సంపాదించిన వుండాలి మీరు కనుగొనడానికి కోర్సు యొక్క హోమ్ పేజీకి వెళ్ళండి సూచించే ఇమెయిల్ మీ విభాగాన్ని. జీవితం మార్చబడింది మరియు మీరు మీ విభాగాన్ని మార్చడానికి ఉంటే, ఒక సమస్య. అదే URL, cs50.net/section, ఏక తిరిగి వెళ్ళు, మీరు కనుక మరియు మీరు ఇలాంటి ఫారం పూర్తి చేస్తాము అప్పుడు మీ ప్రాధాన్యతలను ఇస్తాయి. మరియు మేము ఏమి వారం యొక్క ముగింపు ద్వారా అనుసరిస్తాము వసతి. గత వారం, మేము CS50 చర్చించండి ఉపయోగించి ప్రతిపాదించారు గుర్తుచేసుకున్నారు ఉపన్యాసంలో కోర్సు యొక్క చర్చ సాధనం. కాబట్టి మేము అడిగిన మరియు ఆ 40 ప్రశ్నలు కలిగి ఉపన్యాసం సమయంలో సమాధానం. కనుక ఇది బాగా పని అనిపించింది, కాబట్టి మేము చేస్తాము దీన్ని ప్రయత్నిస్తున్న. , ఉపన్యాసం సమయంలో, మీరు సౌకర్యవంతమైన పెంపకం లేకపోతే మీ చేతి, ఒక సమస్య. Cs50.net/discuss వెళ్ళండి, అక్కడ పోస్ట్, మరియు మా బోధన ఒకటి సభ్యులు ఎలక్ట్రానిక్ అది సమాధానం లేదా లేవనేత్తుతాము గాని వారి ఆధారపడి, గోవా అజ్ఞాతంగా మీ తరపున చేతి ప్రశ్న యొక్క స్వభావం మీద. మరియు ఫీడ్బ్యాక్ పరంగా, సాధారణంగా psets ఉంటుంది ఒక వారం లోపల తిరిగి. విభాగాలు సాధించడానికి ఇది కొంత సమయం పడుతుంది కాబట్టి సమతౌల్య, మొదటి pset, 0 మరియు 1, కొద్దిగా ఉంటుంది విషయాలు స్థిరపడాలని వంటి ఆలస్యం. కానీ ఉండడానికి వచ్చిన వారాల్లో ఆ కోసం వేచి. All right, కాబట్టి నా తీవ్రమైన ఉంచబడింది తెలియజేయండి ఒక క్షణం వాయిస్. కాబట్టి ఈ వాస్తవానికి అని ఒక ఆసక్తికరమైన వాతావరణము ఇతర అన్ని విషయాలను ఈ చర్చ కలిగి క్యాంపస్ సంబంధిత ఇందుకు న జరగబోతోంది. కానీ CS50 ఖచ్చితంగా ఈ ప్రత్యేక దాని చరిత్ర ఉంది అనేక ఈ కోర్సు ప్రతి సంవత్సరం మాదిరిగా ఈ అంశం, సంవత్సరాల, Ad-బోర్డ్ తరగతి సుమారు 3%. ఈ ఇటీవల సంవత్సరం, 2011, CS50 35 విద్యార్ధులు Ad-ఎక్కారు. ఇది నేను అనుకుంటున్నాను, స్పష్టత లేకపోవటం కాదు. కోర్సు యొక్క సిలబస్ లో, ఒక పేజీ ఉంది రియలైజ్ రేఖలు పేరు వివరిస్తూ ప్రకటన. అదే ప్రకటన ప్రతి ఒక మీద పునరావృతం అవుతుంది సమస్య పేజీ ఒక అమర్చుతుంది. అందువలన, నాకు మనం ఈ రోజు గురించి ఈ రద్దు చేయడంతో వారిని. మరియు మేము వివిధ విషయాలను ప్రయత్నించాము. మరియు మనం నేడు అని ఆలోచనను కేవలం సమయాన్ని వెచ్చించండి ఉంది వాస్తవానికి పైకి వచ్చిన గత కొన్ని సందర్బాలలో చూడండి. కాకుండా నిజంగా, ఈ వంటి డర్టీ చిన్న సీక్రెట్స్ ఉంచడానికి మేము కనుగొన్నాము ఏమి విద్యార్థులు చేసిన మరియు ఎలా అభిప్రాయపడుతున్నారు అది నిజంగా విస్తృతమైన ప్రేరణ కోసం ఏమిటి కూడా ఈ సంభాషణ కలిగి. అన్నారు తో కాబట్టి, లైన్ ముఖ్యంగా ఈ - సిలబస్ ప్రకారం, మీరు స్వాగతం, మీరు, ప్రోత్సహించింది లేదు సహ విద్యార్థులను మాట్లాడండి. ఈ సహకార కలిగి మొత్తం ప్రయోజనం ఉంది ఆఫీసు Annenberg లో గంటల ప్రోత్సహిస్తూ ప్రజలు చివరి ప్రాజెక్టు కలసి పని. నిజానికి రాయడానికి సమయం వచ్చినప్పుడు కానీ లైన్ గీస్తారు మీ అంతిమ పరిష్కారం. నకిలీ కోడ్ మాట్లాడటం, పూర్తిగా జరిమానా, ఇంగ్లీష్ లో మాట్లాడుతూ పూర్తిగా జరిమానా. వాటిని చూసి వీలు ఒక క్లాస్మేట్ మీ pset ఇమెయిల్ చేతులు టైప్ జరుగుతూ స్క్రీన్, మార్గం ద్వారా అలాగే. ప్రత్యేక మార్గాలు సిలబస్ చూడాల్సి డు. కానీ ఈ దురదృష్టవశాత్తు ఒక ఎంత చిత్రాన్ని చిత్రించటానికి రియాలిటీ, వెబ్సైట్లు అక్కడ ఉన్నాయి గుర్తించారని ఆ ఈ తరగతి మరియు అనేక ఇతర తరగతుల నుంచి SOLUTIONS ఉన్నాయి. మీరు లేదా మీరు కొన్ని 3% ఈ ఉందని తెలిసిన వాస్తవం మేము ఈ ఉందని తెలిసిన అర్థం. వెబ్సైట్లు మీరు ఈ ఉన్నారనే వాస్తవం నిజానికి మీ సమస్య సెట్లు చేయడానికి ఎవరైనా చెల్లించవచ్చు - ఈ ఉంది గత సంవత్సరం వరకు వచ్చిన ఒక వాస్తవ సందర్భంలో. ఈ odesk.com అనే వెబ్సైట్ ఉంది. మరియు టిమ్ పోస్ట్ చేసిన ఇక్కడ వ్యక్తి యొక్క పేరు ఈ వెబ్ సైట్ లో తన pset 7 చేయడానికి ఎవరైనా అడిగే ఈ కేసులో. Well, odesk.com చాలా Google-చేయవచ్చు, మరియు మేము చాలా ఉన్నాయి ను చాలా మంచి. ఇక్కడ కూడా సైట్లు ఉన్నాయి - మరియు ఈ ఒక బదులుగా యొక్క దారుణమైన, స్పష్టముగా. [నవ్వు] డేవిడ్ J. మలన్: ఈ సైట్ గురించి ఫన్నీ విషయం ఉంటే మీరు గురించి చదవండి పేజీ, వారు వారి కార్పొరేట్ గురించి మాట్లాడేందుకు సంస్కృతి మరియు ఎలా వినియోగదారుల సేవా సంఖ్య వారి-ఒకటి మీ పదవులు పొందడానికి నిర్ధారించుకోండి ప్రాధాన్యత, సమయం మారింది. కానీ అన్ని తీవ్రత లో, మళ్ళీ, నిజానికి ఈ సైట్లు ఉనికిలో కూడా మేము గుర్తించడం, యొక్క జ్ఞానంగల ఉంటాయి సైట్ల యొక్క ఈ రకాల. మరియు మీరు ఏమి ఒక భావాన్ని సాధారణంగా ఈ ఏర్పాటు తీసుకుంటుంది, మేము సాధారణంగా గొప్ప మోసాలు లేదు ప్రజలు భారీ స్థాయిలో ఎలాంటి సహకరించే, కానీ ఉంటాయి మీరు కలిగి ఉన్న ఇది, బలహీనమైన ఈ అర్ధరాత్రి క్షణాలు యొక్క ఏమి ఎక్కువ AM 4:00, మీ అయిపోయిన, మరియు మీరు మీరే అనుకుంటున్నాను, మంచిది, నన్ను నా పరిశీలించి తెలియజేయండి రూమ్మేట్ లేదా నా స్నేహితుడు కోడ్ లేదా ఇష్టపడుతున్నారు. మరియు ఈ యొక్క వ్యక్తీకరణలు దురదృష్టవశాత్తు విద్యార్థి కలిగి ఈ మరియు స్టూడెంట్ B సమర్పిస్తోంది వంటి ఒక సమర్పించడం ఏదో ఒక కంప్యూటర్ లో ఈ వంటి ఏదో, ఇది ఖచ్చితంగా, సైన్స్ తరగతి, కంప్యూటర్ శాస్త్రవేత్తలు ఆశ్చర్యకరమైన సులభం సాఫ్ట్వేర్ తో గుర్తించడం. మీరు విధమైన చేసినట్లు ఈ, మరొక సాధారణ సమాహారం లో ఉండవచ్చు మాట్లాడుతూ, ఒకరి కలిసి పనిచేస్తుంది ఇంగ్లీష్, బాగా, pseudocode. కానీ నిజానికి సమర్పించడానికి సమయాన్ని వస్తుంది, మరియు psets కేవలం ఇమెయిల్ లేదా డ్రాప్బాక్స్ లేదా వంటి ద్వారా మార్పిడి జరుగుతుంది. కానీ ఈ అని తక్కువ స్పష్టం చేసేందుకు ప్రయత్నం ఏం జరిగిందని, అప్పుడు ఈ సమర్పించిన ఏమి ఉంది. ఈ కూడా యాత్ర వరకు చక్కగా వ్రాసిన ముక్కలు కాదు మేము నిజంగా గుర్తించడం వలన సాఫ్ట్వేర్ వంటి విషయాలను ఈ రకాల. నిజానికి మనం చెయ్యవలసింది అన్ని పోల్చి రన్ సాఫ్ట్వేర్ గత సంవత్సరం యొక్క అన్ని వ్యతిరేకంగా ఈ ఏడాది సమర్పణలు సమర్పణలు ప్రతిదీ వ్యతిరేకంగా మేము కనిపించే అక్కడ ప్రతి జాబ్ వెబ్సైట్ వ్యతిరేకంగా ఇంటర్నెట్,. అన్ని చాలా ఆటోమేట్. కాబట్టి మేము 97% గొప్ప మాదిరిగానే నిజంగా ఈ చేసే నిజంగా ఈ మరియు ఇతర వారి asses ఆఫ్ పనిచేస్తున్నారు తరగతులు మరియు ఆ ప్రయత్నం అన్ని పెట్టటం తద్వారా పని వారు చివరికి submit వారి స్వంత ఉంది. నేను యుగాలకు న వెళ్ళవచ్చు. ఇవి గత ఏడాది కేసులు కొన్ని ఉన్నాయి. కొన్ని విద్యార్థులు, pset 2 కోసం సమంగా ఈ ఫైళ్లను సమర్పించిన pset 3, pset 4, pset 5, pset 6, pset 9. ఈ సందర్భంలో, ఈ క్విజ్ 0 మరియు గత సంవత్సరంలో, రెండు ఉంది విద్యార్థులు అనేక మధ్య సమంగా ఈ వాక్యం సమర్పించిన ఇతరులు, "రకం యొక్క అభ్యర్థన -" డాట్, డాట్, డాట్. కాబట్టి కూడా 600 యొక్క ఒక తరగతి లో మేము ఈ గుర్తించి లేదు న క్విజ్ సమర్పించారు. కాబట్టి చిన్న లో, ఈ - స్పష్టముగా, నేను ఈ రకమైన కలిగి ద్వేషం సంభాషణ - కాని ఇది నిజంగా ఒక సమాలోచన ప్రయత్నం ఈ సంవత్సరం ఆ సంఖ్య డౌన్ డ్రైవ్ చేయడానికి. ఎందుకంటే మేము చెప్పడానికి కూడా విషయాలను ఈ రకాల ప్రతి సంవత్సరం, నేను కొన్ని, దానిపై dwelled నేరం రియాలిటీ అనుకుంటున్నాను సాధారణ కంటే ఎక్కువ సెకన్లు మరియు నిజానికి ఎత్తిచూపారు ఏ కనీసం, ఒక పెద్ద ఒప్పందం కాదు, EH, వంటి కనిపిస్తుంది అని ఈ ప్రత్యేక సందర్భంలో తిరిగి అనుకుంటున్నాను, రెండు మాదిరిగానే మీరే మరియు ఇక్కడ మీ సహ విద్యార్థులను కు. మీరు ఇంత వంటి ఏవైనా ప్రశ్నలు అయితే పేరు లైన్ ఉంది, కేవలం వ్యక్తిగతంగా నాకు చేరుకోవడానికి దయచేసి. కానీ సమాధానం పూర్తిగా వద్ద నొక్కి, ఎల్లప్పుడూ ఉంటుంది చివరి నిమిషంలో, ఆలస్యంగా రోజు నగదు. లేదా ఏ చివరి రోజులు చేయడంలో విషయం ఉంటే, నిజాయితీగా, వ్యక్తిగతంగా నాకు ఇమెయిల్ చేయండి. మేము ఏదో కనిపెడతాడు. దయచేసి ప్రమాదం హార్వర్డ్ వద్ద మీ సమయం ఉంచవద్దు. ఇప్పుడు, మనం మానసిక స్థితి తేలిక భావించాను, నేను తదుపరి స్లయిడ్ ఈ చేర్చారు. [నవ్వు] డేవిడ్ J. మలన్: ఈ వెబ్ సైట్ గొప్పది. నేను ఒక చిన్న పరధ్యానంలో వచ్చింది. ఈ ఒక ఉంది. మరియు ఈ ఒక అద్భుతం. చేసేటప్పుడు సరే, అర్ధరాత్రి ఆ కిట్టెన్ భావిస్తారు ఆ నిర్ణయాలు. All right, కాబట్టి తిరిగి సరదాగా మరియు తక్కువ తీవ్రమైన అంశం, వంటి పరిస్థితులు. All right, కాబట్టి మేము ఈ గురించి క్లుప్తంగా మాట్లాడారు. ఈ బహుశా చాలా తెలిసిన ఏదో ఒకటి ఉంటుంది స్క్రాచ్ ప్రపంచం. మరియు స్క్రాచ్ ప్రపంచంలో, మేము ఈ అవసరం రోడ్డు FORKS తయారు వెళ్ళండి. గాని ఈ లేదా ఇక్కడ లేదా ఈ ఇతర పనిని. మరియు మేము దీన్ని చేయాలనుకుంటున్నారా చేసినప్పుడు, మేము ఈ ఉంటే, C లో ఇప్పుడు, ఉపయోగించవచ్చు ఇంకా నిర్మిస్తారు. మరియు ఇక్కడ మేము బూలియన్ భావాలు ఉన్నాయి. ఉదాహరణకు, ఇక్కడ బూలియన్ భావాలు, మేము లేదా వాటిని కలిపి, మేము ఈ పరిస్థితిని కోణంలో ఆ పరిస్థితి. మేము మీరు కోణంలో కలిసి, వాటిని చేయవచ్చు, ఈ పరిస్థితి మరియు పరిస్థితులను తనిఖీ. మరియు ఇక్కడ మేము కాదు, ఇప్పుడు ఒక స్విచ్ ప్రకటన కలిగి పరిస్థితులు కొన్ని రకాల కు సమానంగా ఉంటుంది కాని అది మాకు ఇంకా వేరే వేరే ఉంటే సమానం, అయితే, అయితే, అనుమతిస్తుంది వాటిని కేసు ద్వారా కేసు లెక్కించడం ద్వారా, మరియు వంటి కేసు ద్వారా కేసు ద్వారా. కనుక, అలాంటి చివరిసారి చూసింది. మరియు తర్వాత మేము ఉచ్చులు వంటి వాటిని మీద తాకడం ప్రారంభించింది. మేము ఒక క్షణం క్రితం ఈ ఒకటి చూసింది. కానీ ఈ ఇతర మళ్ళీ వెతికినా నిర్మాణాలు ఉన్నాయి. ఉదాహరణకు, ఈ ఒక ఇక్కడ. కాబట్టి (పరిస్థితి), మళ్ళీ, మళ్ళీ ఈ విషయం విధంగా. కాబట్టి ప్రాథమికంగా, ఈ మధ్య వివిధ ఉంది ఇక్కడ లూప్ మరియు ఈ సమయంలో లూప్? లూప్ మరియు ఈ సమయంలో లూప్ ఈ. Yeah? ఆ ఏమిటి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: గుడ్. కాబట్టి లూప్ పరిస్థితికి, అదే స్పష్టంగా లేదు మరింత సింటాక్స్. ఈ ప్రారంభ ఉంది, ఈ నవీకరణ ఉంది. ఒక సమయంలో లూప్ లో, ఈ పరిస్థితి కేవలం ఉంది. కనుక ఇది కోసం వర్సెస్ డౌన్ pared ఒక లిటిల్ తెలుస్తుంది లూప్, ఇది మేము కలిగి వేరియబుల్స్ అనుకుంటే అర్థం మరియు మేము మీరు incrementation కలిగి, మేము నిజంగా అవసరం ఈ విషయం మేమే ఏమి. నాలో ముందుకు వెళ్లి gedit ప్రారంభం అనుమతిస్తాయి. నాకు ఉపకరణం కు మారేలా లెట్. మరియు లెట్స్ కేవలం ఒక శీఘ్ర చిన్న ఉదాహరణ చేయండి ఇతర నుండి ఈ యొక్క ఒక వేరుగా. మరియు ఇక్కడ నా మనస్సు యొక్క వెనుక, నేను ఒక విషయం చెప్పాలి. నేను ప్రత్యేకంగా పేరు టిమ్ పేర్కొన్నారు. టిమ్ ఒక విద్యార్థి చేయడానికి కనుగొనేందుకు చేయడానికి ప్రయత్నించిన వాస్తవానికి ఎవరైనా ఉంది వారికి వారి హోంవర్క్. మేము ఆ ప్రత్యేక విభాగంలో ఏ టిమ్ వచ్చింది. నేను ఒక విద్యార్థి వెల్లడి గురైనప్పటికీ ఆ, తెలుసుకుంటారు, ఇది ఒక విద్యార్థి కాదు. ఇది పనులను ఇంటర్నెట్ మీద యాదృచ్చిక వ్యక్తి ప్రాక్సీ గత ఏడాది ద్వారా. కాబట్టి మేము కూడా గుర్తించారు. ఇక్కడ ఈ సందర్భంలో, నాకు ముందుకు తెలియజేయండి మరియు ఒక కొత్త ఫైల్ అప్ తెరవండి. ఫైలు, న్యూ. ఈ ఇక్కడ నాకు ఒక టాబ్ ఇస్తుంది. నాకు ముందుకు వెళ్లి, సేవ్ లెట్ loop.c. నాకు వెళ్ళి సేవ్ క్లిక్ చేయండి. మరియు దిగువకు ఇక్కడ, యొక్క ముందుకు వెళ్లి రాయడం ప్రారంభిద్దాం # ఉన్నాయి. నాకు సైన్ జూమ్ లెట్ ఇప్పుడు మేము Int ప్రధాన (తప్ప) చేస్తాను. I <; నౌ (Int i = 0 నాకు ముందుకు వెళ్లి తెలియజేసేలా OH, 10; i + +). ఇప్పుడు నేను ముందుకు మరియు స్టార్ ప్రింట్ చెయ్యాలి వెళుతున్న నేను మునుపటి చేశాడు. మరియు తర్వాత ఈ కార్యక్రమం చివరిలో, మేము వెళుతున్నాం కేవలం నా ప్రాంప్ట్, ఒక కొత్త లైన్ ప్రింట్ అన్ని దారుణంగా కనిపించడం లేదు. 0 తిరిగి. పదము సరైన కనిపిస్తుంది? ఇప్పటివరకు. కాబట్టి యొక్క చూసేలా. నా టెర్మినల్ విండో వెళ్ళండి, నాకు దూరంగా తెలియజేయండి. నేను ఈ అనే కారణం, నాకు ముందుకు వెళ్లి లూప్ అమలు తెలియజేయండి విషయం loop.c. కాబట్టి లూప్ చేయండి. OK కంపైల్ తెలుస్తోంది. నాకు లూప్ అమలు, మరియు ఇప్పుడు ఎంటర్ లెట్. మరియు అది 10 నక్షత్రాలు ముద్రించిన తెలుస్తోంది. కాబట్టి ఒక సమయంలో లూప్ మార్చు మరియు చూద్దాం సమస్యలు మేము యాత్ర పైగా రకాల. బదులుగా ఈ యొక్క నేను ఉన్నప్పుడు నన్ను ఇక్కడ వెళ్ళి అని పిలవబడు 10 కంటే తక్కువ - నాకు లూప్ వదిలించుకోవటం తెలియజేయండి. OK, కాబట్టి మేము ఇప్పటికే సమస్యలను జంట. కాబట్టి పరిస్థితి అదే, కాని నేను స్పష్టంగా లేదు నేను ప్రారంభ. నేను incrementation లేదు am. నేను ప్రయత్నించినప్పుడు సో వాట్ కంపైలర్ అవకాశం చెప్పు ఉండాలి ఈ కార్యక్రమం కంపైల్? Yeah? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: గుడ్. కనుక ఇది ప్రకటించనివారు వంటి ఏదో చెప్పడానికి జరగబోతోంది - ఈ లో కేసు, నేను వేరియబుల్. నిజానికి, ప్రకటించనివారు ఐడెంటిఫైయర్ నేను యొక్క ఉపయోగించండి. కాబట్టి ఈ PHP వంటి భాషలను విరుద్ధంగా ఉంది మరియు పైథాన్ మరియు రూబీ, ఇది మీకు కొంత, తెలిసిన కావచ్చు మీరు వేరియబుల్స్ వాడండి చూస్తూ ఉంటాము చెయ్యవచ్చు విల్లీ-nilly మరియు వాటిని ప్రకటించారు గురించి ఆందోళన స్పష్టంగా ఎప్పుడూ. సి లో మరియు జావా మరియు C వంటి భాషలను + +, మీరు ఉండాలి స్పష్టమైన సూపర్. మీరు నేను అనే వేరియబుల్ కావాలా, మీరు నాకు చెప్పడం కలిగి వేరియబుల్ ఏ విధమైన ఉంది. కాబట్టి మేము ఈ క్రింది పరిష్కరించడానికి చూడాలని. నేను ఇక్కడ వెళ్ళి Int టైప్ చేయాలి వెళుతున్న; కాబట్టి, నేను అనే వేరియబుల్ నిర్ధారించారు. ఇప్పుడు నేను ఒక అడుగు దాటవేయబడింది చేసిన. నేను ఖచ్చితంగా ఇది initialized లేదు చేసిన, కానీ లెట్స్ ఆ వద్ద ఉంటే కనీసం సంస్థల్లో గణగణమని ద్వని చేయు స్టాప్ ఫిర్యాదు. కాబట్టి నాకు ఈ కార్యక్రమం రీమేక్ తెలియజేయండి. All right, ఇప్పుడు అది కేవలం ఫిర్యాదు యొక్క విభిన్న కారణం చేత. "ఇక్కడ ఉపయోగించినప్పుడు వేరియబుల్ 'నేను' అవినియోగిత ఉంది." All right, కాబట్టి ఆ అందమైన స్పష్టమైన ఉంది. Initialized ఒక విలువ దానిని సమానంగా చేయడం అని అర్థం. మరియు మేము 0 సమానం నాకు ప్రయత్నించండి అనుమతించే పూర్తి చెయ్యలేదు. ఇప్పుడు మళ్ళీ ప్రయత్నించండి మరియు తిరిగి అమలు గణగణమని ద్వని చేయు తెలియజేయండి. ఈ సమయంలో సంకలనం. మరియు నేను దానిని రన్ ఉన్నాను. కానీ పెద్ద పాత అనంతమైన లూప్, నేను చేసిన ఎందుకంటే ప్రారంభ, నేను పరిస్థితి చేసిన, కానీ నేను ఎన్నడూ లేని incrementation ఎలాంటి. కాబట్టి నేను incrementation చేయగలరు? నేను కలిగి వెళుతున్న వంటి Well, కొంత లూప్ లో, భావం ఎందుకంటే చాలా మొదటి వంటి లూప్ యొక్క లోపల అది ఏమి తో వంటి మళ్ళీ వెతికినా నిర్మాణాలు చేయడం వలన వారం యొక్క ఉదాహరణలు, సాక్స్, స్వీయ లెక్కింపు తో, మేము వచ్చింది చాలా చివరలో ఏదో, తర్వాత లైన్ కు తిరిగి వెళ్ళడానికి ఇష్టం. నేను ముందుకు వెళ్లి లేకపోతే ఈ i + + ఇక్కడ? అయినా ఈ సంకలనం కాదు లెట్. ఇప్పటికే నన్ను పట్టుకోండి. ఇక్కడ తప్పు ఏమిటి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: సో అది ఖచ్చితంగా Int కాదు. ఇది నేను. మరియు ముందు వంటి వంకర జంట కలుపులు, ఇండెంటేషన్ని సరిపోదు. కాబట్టి ఇప్పుడు నేను ఈ నిర్మాణం చేసారు. నేను 10 కంటే తక్కువ అందువలన, ఒక నక్షత్రం ప్రింట్ అప్పుడు నేను పెంచడం. మరియు విధంగా ఒక లూప్ రచనలు మీరు హిట్ అయిన వెంటనే ఆ సమయంలో ఈ సందర్భంలో లైన్ 10 వలె కనిపిస్తుంది లూప్ దిగువన, ఇది పంక్తి 6 వెళ్ళడానికి జరగబోతోంది సమయంలో పరిస్థితి మళ్లీ తనిఖీ చేయబడుతుంది. ఇంకా 10 కంటే తక్కువ ఉంటే, మేము పంక్తులు 8 చేయండి మరియు మీరు అప్పుడు 9, అప్పుడు మేము 10 హిట్ చేస్తాము, మరియు 6 తిరిగి వెళ్లి, మళ్లీ మరియు మళ్ళీ, మళ్ళీ, మళ్ళీ, కాబట్టి నేను 10 కంటే తక్కువగా ఉంటుంది. కాబట్టి లెట్స్ తిరిగి అమలు ఇక్కడ తయారు. సరే, మేము సరే సంకలనం చేసిన. నాకు మళ్ళీ అమలు లూప్ లెట్. ఇప్పుడు ఇది నిజానికి పని ఉంది. ఇక్కడ pluses మరియు minuses కాబట్టి? Well, ఇప్పటివరకు వాస్తవానికి PLO యొక్క మొత్తం అక్కడ కాదు - కాబట్టి అందమైన. All right, ఒక ఉంది - AH, ఒక ప్రమాదంలో ఉంది. All right, కాబట్టి యొక్క లూప్ తిరిగి వదలి వేస్తారు. వారు సూపర్ స్పష్టమైన ఉన్నారు కనుక అలా ఉచ్చులు కోసం nice ఉంటాయి. మరియు వారు రాయడానికి కొద్దిగా clunky ఉన్నప్పటికీ, ఇది చాలా శక్తివంతమైన మరియు మీరు అనుమతిస్తుంది ఒకేసారి విషయాలు. ఉచ్చులు విలువ యొక్క పెద్ద మొత్తం కలిగి ఉంటాయి లేదు కేవలం మేము మరింత పనిని నేను ఇంకా, ఎందుకంటే అది భావిస్తాడు. మేము ఇక్కడ, ప్రారంభ అప్ ఉంచాలి ఇక్కడ డౌన్ నవీకరించండి మరియు మేము ఆ చేయాలని గుర్తుంచుకోండి. కాబట్టి మేము అయితే ఉచ్చులు వాస్తవానికి అప్పిచ్చు ఆ సమయంలో చూస్తారు తాము కేవలం వివిధ సందర్భాల్లో, విభిన్న డేటా జాబితాలు మరియు హాష్ పట్టికలు వంటి నిర్మాణాలు, విషయాలు మేము చూస్తారు మధ్య సెమిస్టర్. కానీ ఇప్పుడు కోసం, పిలిచే ఈ మూడవ రకం అక్కడ తెలిసిన ఒక డో- లూప్ అయితే. మరియు మేము ఈ క్లుప్తంగా చూసిన. మరియు ఈ pset 1 సూపర్ సహాయకారిగా ఉండవచ్చు. మీరు ఏదో ఒకటి మరియు మీరు ఏదైనా సమయం తనిఖీ ఉంటే యూజర్ సహకరించింది, మరియు వారు కాదు, మళ్ళీ దాన్ని ఒక చేయండి- లూప్ తర్కం ఆ రకమైన కూడా ఇస్తుంది అయితే. ఇక్కడ పై నుండి క్రింద వరకు క్రమం సూచిస్తుంది ఎందుకంటే, సాహిత్యపరంగా దీన్ని అర్థం లేదు. మళ్లీ మళ్లీ ఇది, ఏ కావచ్చు? దీనికి తర్వాత కాల్ GetInt లేదా GetString మరియు అర్థం GetInt లేదా GetString విలువ తనిఖీ తరువాత పదాన్ని యూజర్ వద్ద వారు అడిగి ద్వారా సహకారం లేదు ఉంటే మళ్ళీ, మళ్ళీ, మళ్ళీ. మీరు ఒకసారి చేయాలని ఎక్కడ అప్పుడు కొన్ని పరిస్థితులను తనిఖీ. కాబట్టి యొక్క ఈ ప్రయత్నించండి తెలియజేయండి. నాకు నిజంగా ఒక డో-సమయంలో లూప్ ఇప్పుడు ఈ మార్పు లెట్. నేను ముందుకు వెళ్లి ఈ క్రింది వాటిని వెళుతున్న. కాబట్టి ఈ క్రింది వాటిని. తెలియజేసేలా యొక్క Int i = GetInt (); కానీ మొదటి వినియోగదారు చెప్పనివ్వండి ఏమి. కొద్దిగా విభిన్న ఈ సమయంలో. "నాకు ఒక పూర్ణాంకానికి ఇవ్వండి". కాబట్టి కోసం printf ఉపయోగిస్తాము. ఇప్పుడు నేను ఇక్కడ డౌన్ వెళ్ళి వెళుతున్న మరియు నేను దీన్ని వెళుతున్న నేను ఉన్నప్పుడు, కంటే ఎక్కువ, యొక్క అని పిలవబడు - యొక్క చూసేలా, ఐ, కంటే తక్కువ 0, యొక్క అని పిలవబడు, లేదా ఐ 10 కంటే ఎక్కువ. ఇతర మాటలలో, నేను, 1 నుండి 9 వరకు అనేక కావలసిన ఏకపక్ష. నేను ఇక్కడ ఒక మిశ్రమ బూలియన్ వ్యక్తీకరణ ఉపయోగించి నేను నేను, 10 కంటే తక్కువ కంటే 0 లేదా ఎక్కువ నిర్ధారించుకోండి దీనిలో కేసు నేను మళ్ళీ ఇక్కడ ఈ లూప్ చేస్తుంది. మరలా, దీన్ని - నేను ఉన్నప్పుడు కంటే తక్కువ 0 లేదా నేను 10 కంటే ఎక్కువగా ఉంటుంది. కాబట్టి ఇప్పుడు యొక్క ముందుకు వెళ్లి ఆ పని చేసిన తర్వాత మనం. ఒక శీఘ్ర తెలివి చెక్ తెలియజేసేలా యొక్క. printf (i, "ధన్యవాదాలు, నేను% d ఉంది"). కాబట్టి ఈ సాధారణ ప్రోగ్రామ్, ఒక పూర్ణాంకానికి యూజర్ అడుగుతుంది అది కొన్ని శ్రేణి, 1 9 కలుపుకొని, లోపల ఖచ్చితంగా చేస్తుంది మరియు తర్వాత వాటిని గుర్తు వారు కేవలం వినియోగదారుని ధన్యవాదాలు కొంచెం తెలివి చెక్ వంటి, లో టైప్. కానీ ఈ ఉద్దేశించినట్లుగా పని లేదో యొక్క చూసేలా. నాకు ఇక్కడ తల క్రిందికి వెళ్ళి లూప్ తయారు తిరిగి అమలు లెట్. అయ్యో. "అస్పష్టమైన గుర్తింపు 'నేను' యొక్క ఉపయోగించు". ఆ వింత ఉంది. మనం ఆ పరిష్కారం ఆలోచన. అదే లక్షణం కాని వివిధ కోడ్. Yeah? ప్రేక్షకులు: [వినబడని] రెండు లోపల, మేము కలిగి [వినబడని]. డేవిడ్ J. మలన్: ఖచ్చితంగా. కాబట్టి ఈ వాస్తవానికి స్కోప్ తెలిసిన ఒక విషయం కి దారి తీస్తుంది. ఇది C, మళ్ళీ, అది నిజంగా అక్షరాలా మిమ్మల్ని తీసుకెళ్లే అవుతుంది. మీరు ఈ వంటి ఏదో ఒకటి ఉంటే మీరు ఒక పూర్ణాంకానికి డిక్లేర్ పేరు మరియు తర్వాత ఇది కొన్ని లెక్కించాల్సి, కానీ మీరు ఒక యొక్క లోపల ఏమి కర్లీ జంట కలుపులు జత, ఏ సి చేస్తుంది ఇది ఊహిస్తున్న మీరు నేను మనుగడ వంటి లోపల తెలిసినవి 32 బిట్స్ కావలసిన పంక్తులు సందర్భంలో ఆ గిరజాల జంట కలుపులు సందర్భంలో, 9 ద్వారా 6. నేను డిక్లేర్డ్, మరియు కేటాయించిన ఒక లైన్ 8 లో విలువ, కానీ వెంటనే మీరు వెలుపల పొందేవరకు కర్లీ కలుపు క్రింద లైన్ 9, నేను లేదు పరిధిని, మాట్లాడటానికి. S-C-O-P-E. ఇది కుడి సందర్భంలో గడువు ముగిసిన. కాబట్టి ఇప్పుడు అక్కడ నాకు, కాబట్టి మేము కూడా అయితే దీని యొక్క అన్ని వద్ద ప్రకటించింది. కాబట్టి ఈ వంటి ఏదో కోసం అప్పుడు పరిష్కారము, ఏది ఉంటే కారణం, నేను వంకర జంట కలుపులు లోపల ప్రకటించింది అని ఇది స్పష్టంగా చెడు? ఇక్కడ? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును. కాబట్టి మేము బయట ప్రారంభించడం చెయ్యవచ్చు. నాలో ముందుకు వెళ్లి ప్రకటన భాగాలు చేయటం తొలగించండి తెలియజేయండి నేను రకాన్ని, మరియు నాకు ఇక్కడ దానిని తెలియజేసేలా. కాబట్టి లైన్ 5 లో, అది ఇప్పుడు "నాకు ఒక పూర్ణాంకానికి ఇవ్వండి." అన్నారు నేను కాల్. లైన్ 9 లో గమనించండి, నేను దీన్ని చేయాలనుకుంటున్నారా లేదు, ఎందుకంటే నేను ఇప్పటికే 32 బిట్స్ ఉంటాయి. నేను ఒక కంప్యూటర్ కోరవలసి లేదు వివిధ 32 బిట్స్. నేను ఆ అదే 32 బిట్స్ ఉపయోగించాలనుకుంటున్నాను. ఇప్పుడు నేను లైన్ 5 లో ప్రకటించింది ఎందుకంటే, ఇది సక్రమం యొక్క లైన్ 11 మరియు 12 లైన్ లో ఉపయోగించడానికి. కాబట్టి నాకు ఈ మళ్ళీ కంపైల్ చెయ్యండి ప్రయత్నించండి మరియు చూడటానికి గణగణమని ద్వని చేయు ఆపి ఉంటే పదాన్ని. లూప్ చేయండి. కాబట్టి ఇప్పుడు దాని విధులను "పరిపూర్ణ ప్రకటన 'GetInt' C99 లో చెల్లనిది. "ఆ ఏమిటి? Yeah? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును. కాబట్టి ఇప్పుడు నేను నిజంగా GetInt ఉపయోగించి కాబట్టి, ఈ ఏదో కాదు C. ఈ CS50 నుండి వచ్చింది ఆ కేవలం వస్తుంది. కాబట్టి మేము ఇక్కడ ఈ అవసరం. నాకు ప్రాంప్ట్ డౌన్ తిరిగి వెళ్ళడానికి వీలు ఇక్కడ మరియు తయారు తిరిగి అమలు. సరే, చివరకు. ఇప్పుడు మేము ఆ మరియు ఇతర లోపం పరిష్కారం చేసిన. నాకు ఇప్పుడు లూప్ అమలు మరియు ఏమి చూసేలా. "నాకు ఒక పూర్ణాంకానికి ఇవ్వండి." నేను 11 ఇస్తాము. నేను -1 ఇస్తాము. నేను foo ఇస్తాము. నేను 5 ఇస్తాము. ఇప్పుడు అది నిజంగా పనిచేస్తుంది. కానీ ప్రాంప్ట్ ఇక్కడ ఒక కారణం మారింది. ఎందుకు ఈ సార్లు మళ్ళీ కాని నాకు ఒక ఇవ్వడం అని పేర్కొన్నారు మిగిలిన మూడు సార్లు Int? ఎందుకు ఆ ప్రవర్తన భిన్నంగా ఉంటుంది? ప్రేక్షకులు: ఇది ఒక స్ట్రింగ్ ఇచ్చారు. డేవిడ్ J. మలన్: క్షమించండి? ప్రేక్షకులు: మీరు ఒక స్ట్రింగ్ ఇచ్చారు. డేవిడ్ J. మలన్: అవును. కాబట్టి మేము, ఈ మూడవ ప్రయత్నంలో ఒక స్ట్రింగ్ ఇచ్చారు నేను foo టైప్ చేసినప్పుడు. Foo సమూహము. ఇది స్పష్టంగా Int కాదు. మరియు CS50 GetInt అమలు చేసింది విధంగా అని మేము ఏదో అయితే తనిఖీ లేదు 10 కంటే తక్కువ కంటే 0 లేదా ఎక్కువ మీరు కోసం, ఎలా మేము ముందుగానే తెలుసు ఎందుకంటే ఏ విధమైన మీకు కావలసిన Int? కానీ మేము తక్కువ కనీసం, మీరు యూజర్ లేదు తనిఖీ చేయవచ్చు పూర్ణాంకం టైప్? మరియు వారు లేకపోతే, మేము "మళ్ళీ" టైప్ చేసి యూజర్ అరుస్తుంటారు తెర. కాబట్టి ఇప్పుడు మేము మళ్ళీ వెతికినా ఒక ప్రోగ్రామ్ను. సరే. ఇప్పుడు, ఈ యొక్క మంచి నిర్మాణం యొక్క విధమైన ఉంది? కాబట్టి ఈ విషయాలు కొద్దిగా దారుణంగా పొందడానికి ప్రారంభం ఎక్కడ ఉంది మీరు ఇక్కడ ఒక వేరియబుల్ అప్ ప్రకటించాలని గుర్తు పెట్టుకోవాలి వాస్తవం మీరు కొన్ని లోపలి అది ను ఉపయోగించడానికి కర్లీ జంట కలుపులు మరియు వెలుపల. కానీ ఈ మొదటి వద్ద ఒక చిన్న గుప్తమైన కనిపిస్తోంది కూడా గ్లాన్స్, కేవలం మళ్లీ సాధారణ తర్కం గుర్తుంచుకోవాలి. అది ఒక ఫంక్షన్ లేదా అని, సి లో ఏదైనా ఉపయోగించడానికి అది ఒక వేరియబుల్, మీరు ఒక ఫంక్షన్ అయితే దాన్ని చేర్చడానికి కలిగి కొన్ని లైబ్రరీలో, లేదా మీరు ప్రకటించాలని అవసరం. కానీ ఇప్పుడు మీరు నిజాన్ని అదనపు జాగ్రత్త వహించండి అవసరమైన మీరు కుడి స్కోప్ లో ప్రకటించారు చేస్తున్నారు. మీరు కుండలీకరణాలు లోపలి చాలా కటినంగా ఉంచారు లేదు. కాబట్టి నాకు నిజంగా వెనక్కి తీసుకుని తెలియజేయండి. మేము ముందు ఉదాహరణకు మా తిరిగి వెళ్లి, నేను వెళ్ళి ఉంటే తిరిగి Int కోసం, Int i = 0; i <10; i + +, మరియు నేను ఈ వంటి printf నక్షత్రాలు,, ఆపై దగ్గరగా బ్రాకెట్, మరియు ఇప్పుడు ఏమి printf నేను ఇప్పుడు - నేను ప్రయత్నించినప్పుడు అదే తర్కం ప్రకారం, ఏమి జరుగుతుంది ఈ కార్యక్రమం కంపైల్? ప్రేక్షకులు: చెల్లని ఐడెంటిఫైయర్. డేవిడ్ J. మలన్: సో అది మరొక చెల్లని ఐడెంటిఫైయర్ యొక్క, ప్రకటించనివారు ఐడెంటిఫైయర్. ఇప్పుడు, కారణం ఒక చిన్న విభిన్నమైనది. ఇక్కడ స్పష్టంగా లేదు వంకర జంట కలుపులు, కానీ అదే ఆలోచన, స్కోప్ అదే కథ వర్తిస్తుంది. మీరు ఒక లోపలి నేను వంటి వేరియబుల్ డిక్లేర్డ్ ఉంటే లూప్, మీరు స్పష్టంగా వంకర వ్రాయలేదు కూడా జంట కలుపులు, ఇప్పటికీ అక్కడ గా మానసికంగా వాటిలో భావించే లో కేసు నేను లూప్ యొక్క మాత్రమే చెల్లుబాటు అయ్యే లోపల ఉంది. మీరు దీనిలో, తర్వాత లైన్ ను ఒకసారి ఇది చెల్లదు ఈ సందర్భంలో ఇప్పుడు 10. కాబట్టి పరిధిని మరియు వంటి కొన్ని మాత్రమే సమస్యలు. All right, ఏ ప్రశ్నలు? All right, ఈ, ఒక చిన్నవిషయం చిన్న ప్రోగ్రామ్ యొక్క రకం కేవలం చిన్న తారలు ప్రచురణ. కానీ మీరు ఇక్కడ ఈ పాట గుర్తు ఉంటే యొక్క చూసేలా. ఈ కిడ్స్ పాడగలడా ఒక అద్భుతమైన బాధించే పాట పాఠశాల బస్సు మరియు ఇష్టపడుతున్నారు. కాని దాని గురించి మంచిది, ఈ cyclicity కలిగి ఉంది అనగా అది "గోడ మీద బీర్ 99 సీసాలు యొక్క బీరు యొక్క 99 సీసాలు. ఒక టేక్ డౌన్ చుట్టూ పాస్, న 98 సీసాలు బీర్ గోడ. "అప్పుడు పాట తర్వాత, అప్పుడు, 96 97 పునరావృత్తం 95, అప్పుడు 94, అన్ని మార్గం మీరు నిజంగా వస్తే 0 క్రిందికి ఆ చాలా బస్సులో. కాబట్టి ఈ ఎందుకంటే, ఉపకరణాన్ని క్రమం ఒక nice కార్యక్రమం నా దేవుడు, మీరు కేవలం కొన్ని ఈ అమలు అని లైన్స్ ఆఫ్ కోడ్, మీరు ఈ మొత్తం సాహిత్యం అవుట్ ఉమ్మి కాలేదు చాలా త్వరగా పాట. కానీ ఆవిధంగా మేము ఇప్పుడు కొన్ని మినహా బాధించటం ప్రారంభించవచ్చు ఈ ప్రాథమిక మళ్ళీ వెతికినా నిర్మాణాలు మరియు ఇప్పుడు కూడా యొక్క మనం వ్రాసే పనులను పరిచయం, విలువలు తిరిగి మేము చుట్టూ వెళ్ళే. కానీ మొదటి, ఎందుకు మేము ముందుకు వెళ్లి, మా ఐదు నిమిషం లేదు ఇక్కడ బ్రేక్? మరియు మేము తిరిగి వచ్చినప్పుడు, మేము ఈ పాట పాడే కనిపిస్తుంది. All right, కాబట్టి మేము తిరిగి ఉంటాయి. మరియు మనం ఇప్పుడు ఈ పాట పాడే యున్నది, నేను అర్థం programmatically, కాని మాటలతో. కాబట్టి ఇక్కడ ఈ ఒకటి అమలు ఇది beer1.c కలిగి ముఖ్యంగా పాట. మరియు కేవలం ఆ తెలియని కోసం, స్పష్టం ఏ ఈ దానిలా, నాకు ముందుకు వీలు ఉంది మరియు Enter, beer1 చేయండి. ఇప్పుడు నాకు beer1 అమలు అనుమతిస్తాయి, మరియు మేము చూస్తారు - ఎన్ని సీసాలు బీరు యొక్క ఉంటుంది? పాట చెప్పారు అని నేను, 99 టైప్ చేస్తాము. నమోదు చేయండి. ఇప్పుడు మేము ద్వారా స్క్రోల్ చేయండి - అయ్యో - మేము ఈ అన్ని ద్వారా స్క్రోల్ చేయండి, మేము చూస్తారు ఆ ఈ నిజానికి మొత్తం పాట పాడే లేదు. ఒక నిమిషం ఆగండి. నా స్క్రోలు బార్ గందరగోళంలో ఒక లిటిల్. యొక్క పెద్ద విండో ఉపయోగించడానికి అనుమతిస్తున్నట్లు. Beer1, 99 కాబట్టి, అక్కడ మేము వెళ్ళి. కాబట్టి ఇక్కడ బాగా వేగంగా పాడిన మొత్తం పాట కలిగి అది మాకు ద్వారా ఉండేవి కంటే కంప్యూటర్. ఇక్కడ, అయితే, చక్రీయ స్వభావం గమనించండి. ఇది 99, అప్పుడు 99, అప్పుడు "ఒక రాసుకోదగిన, అది పాస్ చెప్పారు చుట్టూ, "తర్వాత 98. ఇప్పుడు మళ్ళీ మళ్ళీ పునరావృతం. కాబట్టి ఈ వాస్తవానికి రకమైన కోసం ఒక సంపూర్ణ అవకాశం నిర్మించేందుకు మళ్ళీ వెతికినా. నేను ఇక్కడ ఒక మలుపులో కటింగ్ రకం కాబట్టి గమనించండి. నేను గోడ మీద "బీర్ 98 సీసాలు మాట్లాడుతూ నేను ప్రకటనలో, 97 గోడ మీద బీర్ సీసాలు, "మరియు కేవలం కాబట్టి మేము బీర్ ఒకటి సీసాలు ను, నేను లేని ఆంగ్ల వ్యాకరణం గురించి ఆందోళన. కానీ మేము ఒక ఉంటే యొక్క కొద్దిగా ఈ పరిష్కరిస్తాము పరిస్థితి, బహుశా. ఈ సంఖ్య ఏక ఉంటే, ముందుకు వెళ్ళి, "బాటిల్" అని బహువచనం ఉంది లేకపోతే ఉంటే, "సీసాలు" అని. కానీ ఇప్పుడు నేను పూర్తిగా ఆ మలుపులో కటింగ్ నేను. కాబట్టి మేము ఇక్కడ మేం ఏమి చూద్దాం. కాబట్టి మేము ఎగువన కొన్ని వ్యాఖ్యలు పొందారు. నేను, ఈ రెండు లైబ్రరీలు కలుపుతున్నాను మేము సాధారణంగా ఉన్నాను. ఇప్పుడు నాకు మొదటి క్రిందికి స్క్రోల్ అనుమతిస్తుంది కోడ్ యొక్క నిజమైన పంక్తులు. లైన్ 17 ప్రధాన కిక్స్ ఆఫ్. లైన్ 21 మరియు 20 ఎన్ని సీసాలు బీర్ ఉంటుంది ఉంది? మరియు నేను GetInt కాల్. ఇప్పుడు నేను ఒక పవిత్రత చెక్ ఒక బిట్ కలిగి ఉంటాయి. కాబట్టి ఈ మేము ఇప్పుడు కు స్వీకరించేందుకు ప్రారంభిస్తాము ఒక సదస్సు అత్యంత కఠినమైనది యూజర్ యొక్క తనిఖీ. కొన్ని సమయాల్లో మీరు మళ్ళీ ప్రాంప్ట్ చేయకూడదని మళ్లీ మళ్లీ. జరిమానా, అప్ యూజర్ మరలు ఉంటే మరియు సహకారం లేదు. క్విట్ మరియు వాటిని పరిష్కరించేందుకు లేదు. అందువలన, నేను ఇక్కడ ఏమి చేస్తున్నానో నాకు ఉంది. N 1 కంటే తక్కువ ఉంటే, నేను, వినియోగదారు మీద అరుస్తుంటారు వెళుతున్న "క్షమించండి, ఆ అస్సలు అర్ధమే లేదు." మరియు తర్వాత నేను వెళుతున్న ఏకపక్ష 1 తిరిగి. మరలా, ఇది ఉపయోగిస్తారు పొందడానికి సదస్సు. ఇప్పుడు కోసం, విశ్వాసం భావించారు. అయితే ఇప్పటి వరకు, మేము ఎల్లప్పుడూ ఎందుకంటే, 0 తిరిగి చేసిన మేము 0 సూచిస్తుంది ఏమి తిరిగి చెప్పారు చేసిన? ప్రేక్షకులు: విజయవంతం. డేవిడ్ J. మలన్: సక్సెస్, అన్ని అని. కాబట్టి ఇప్పుడు మేము చివరకు గురించి ఆలోచించటం మొదలు పెడుతున్నారు ఆ కాని విజయాలు - - ఇతర పదాలు, మూల కేసులు, లోపం పరిస్థితుల్లో ఇప్పుడు నేను ఒక అనంతం సరఫరా, లేదా కనీసం నాలుగు బిలియన్ నా కార్యక్రమాలు తప్పు వెళ్ళే అవకాశం విషయాలు. మరియు నేను వాటిని వ్యక్తి సంఖ్యలు కేటాయించి ప్రారంభించవచ్చు. ఇప్పుడు, సాధారణంగా ఇది తిరిగి సంతృప్తి పరుస్తుంది 0 కంటే ఇతర ఏదైనా. కాబట్టి మేము కేవలం ప్రస్తుతం 1 తిరిగి చూడాలని. కానీ 1 తిరిగి కారణం వెంటనే మీకు తిరిగి విధంగా ఉంటుంది 1, ప్రోగ్రామ్ యొక్క మిగిలిన ఏమి అనుకుంటారో? ఇది ఆపుతుంది. అంతే. నేను 1 తిరిగి నేను వాస్తవం సమర్థవంతంగా ఉంటుంది ఈ ప్రోగ్రామ్ యొక్క అమలు షార్ట్ సర్యూట్కు తద్వారా లైన్ 27 క్రింద ఏమీ అమలు కొనసాగుతుంది. వెంటనే ప్రధాన పునరాగమనం, అది ఉంది. యూజర్ ఒకవేళ హక్కు, కాబట్టి సహకారం మరియు మేము లైన్ 30 చేరుకోవడానికి వారు ఒక చట్టబద్ధమైన సంఖ్య టైప్ ఎందుకంటే, ఇక్కడ నా ఉంది ఈ పాట యొక్క అమలు. నేను మొదటి కేవలం, ఒక NEWLINE పాత్రను ప్రింట్ సౌందర్యం. నేను ఇప్పుడు లూప్ ఒక ఉంటాయి. నేను ఒక బిట్ లో పనులను నేను గమనించే ఒక వేరే దిశలో యొక్క. నేను కంటే తక్కువ ఏమి లేదు, నేను + + ఏమి లేదు. నేను బదులుగా సమానంగా సెట్, ఒక వేరియబుల్ నేను ప్రారంభించడం చెప్పగలదు n, వినియోగదారు టైప్ సంఖ్య, ఆ విధంగా, ఈ క్రింది వాటిని నేను 0 కంటే ఎక్కువ కాలం, ఆపై i - ఒకసారి మీరు ఈ లూప్ యొక్క ఒక పునరుక్తి పూర్తి చేసిన. కాబట్టి మేము అలాగే లూప్ ఒక ఉపయోగించి డౌన్ పరిగణించవచ్చు. ఇప్పుడు, ఈ printf, ఒక విషయాన్ని ఇప్పుడు చాలా చక్కని వారం రోజులు ఉంటుంది. కాబట్టి print "గోడ మీద బీర్% d సీసాలు." ముద్రించు "% d బీరు సీసాలు యొక్క. "", ఒక టేక్ డౌన్ చుట్టూ పాస్. "ముద్రణ "గోడపై బీర్% d సీసాలు." కాబట్టి ఇప్పటికీ% d, కానీ వాదన printf మారుతుంది ఆ గమనిస్తారు. నేను 99 చెప్పాలనుకోవడం ఎందుకంటే కామా తర్వాత, నేను, నేను కలిగి ఉంటాయి. నేను 99 చెప్పాలనుకోవడం ఎందుకంటే ఈ కామా తర్వాత, నేను, నేను కలిగి ఉంటాయి. ఈ కామా తర్వాత, నేను కలిగి - 1, నేను 98 చెప్పాలనుకోవడం ఎందుకంటే ఈ మొదటి మళ్ళా, మొదలగునవి. ఇప్పుడు డౌన్ ఇక్కడ, నేను కొన్ని స్టుపిడ్ చిన్న వ్యాఖ్య ఉంది. ఆపై లైన్ 42, నేను అధిక కన్వెన్షన్ ద్వారా 0 తిరిగి ఆ ప్రతిదీ సరే. నేను goofed సో వాట్ ఉంటే? ఇక్కడ ఒక సాధారణ తప్పు ఏమిటి కావచ్చు? నేను అనుకోకుండా బాగా చెప్పారు ఉంటే సరే, నేను లెక్కించడానికి ఏమి అనుకుంటున్నారు 0 క్రిందికి, నేను గోడ మీద బీర్ 0 సీసాలు అనుకుంటున్నారా? నేను నేను కంటే ఎక్కువ లేదా 0 సమానంగా ఉంటుంది. నేను మళ్ళీ కంపైల్ చెయ్యండి నేను ఇప్పుడు చూసే లక్షణం అని ఏమి beer1 మరియు అమలు? ప్రేక్షకులు: ప్రతికూల. డేవిడ్ J. మలన్: అవును, అది ప్రతికూల వెళ్ళి చేసుకొనును. ఇది ఆఫ్ తరువాత ఒకటి లోపం, ఒక అద్భుతమైన సాధారణ తప్పు చేస్తుంది. లెట్ యొక్క వాస్తవానికి టెర్మినల్ విండో తిరిగి వెళ్ళి దాన్ని ఇక్కడ, కాబట్టి మేము ఒక సమయంలో మరింత చూడగలరు. , బీరు యొక్క 99 సీసాలు ఇవ్వండి. క్లోజ్, కాని మేము చాలా దూరం కాబట్టి కొద్దిగా ఎప్పుడూ జరిగింది. మేము ఇప్పుడు హిట్ ఆ, చాలా దూరం డౌన్ పాట పాడారు రుణ సంఖ్య. కనుక ఇది చాలా పని లేదు. All right, కాబట్టి మేము సులభంగా పరిష్కరించవచ్చు అని తిరిగి వెళ్ళడం ద్వారా దానిని ఒకప్పుడు. కానీ కొన్ని అవకాశాల కోసం ఇప్పుడు ఏమి ఉన్నాయి అభివృద్ధి? Well, నాకు beer2.c తెరిచి ఇక్కడ స్క్రోల్ డౌన్ తెలపండి మరియు ఒక పడుతుంది ఈ వెర్షన్ చూడండి. వాట్ వివిధ వంటి మీకు జంప్స్ మొదటి విషయం ఇక్కడ ఈ వెర్షన్ లో? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును, కాబట్టి no more నేను, అది సంభవించింది ఎందుకంటే నాకు మీరు ఏమి, నేను నాకు అప్పుడు n యూజర్ అడగడం, మరియు నాకు తెలుసు n నేను సమాన సెట్, మరియు అప్పుడు నేను మారుతున్న, అయితే నాకు ఎప్పటికి తాకడం n మళ్ళీ. సో వాట్ హెక్ మరొక 32 పెడుతోంది మీరు పాయింట్ ఉంది బిట్స్ నేను వేరే వేరియబుల్ కలిగి కేవలం ఆ నేను అని? కాబట్టి ఈ సందర్భంలో, నేను విధమైన గుర్తింపు అనవసరమైన డిజైన్ ఫీచర్. N 0 కన్నా ఎక్కువ అయితే ఇప్పుడు చెప్పడానికి వెళుతున్న, వెళ్ళి ముందుకు మరియు printf ఒక n దాటారు అదే పాట ప్రింట్ రెండవ వాదన, మరియు n - డౌన్ ఇక్కడ రెండవ వాదన వంటి 1. మరియు ఈ లూప్ యొక్క ప్రతి పునరావృతం న, ముందుకు మరియు కేవలం వెళ్లి తరుగుదల n కూడా. ఇప్పుడు, క్రియాశీలంగా, ఈ కార్యక్రమం సారూప్యంగా ఉండాలని అన్నారు. నేను 99 లో టైప్ చేస్తే, n 99 మొదలవుతుంది. నేను తరుగుదల, తరుగుదల, తరుగుదల, తరుగుదల. నేను బీర్ ఒకటి సీసా "వరకు క్రిందికి వెళుతున్న గోడ, బీర్ బాటిల్ ఒక. ఒక టేక్ డౌన్ చుట్టూ పాస్. నేను గోడ మీద బీర్ 0 సీసాలు. "ముగింపు, ఎందుకంటే పరిస్థితి సరైన పొందండి. ఇది 0 కన్నా ఎక్కువ ఉంది. నేను ఈ తప్పు లేదు. కాబట్టి ఏ వెర్షన్ ఒకటి లేదా రెండు వెర్షన్, బాగా? నేను రెండు కోసం murmurings కొంత విన్నారు. ఎందుకు రెండు? ఆ ఏమిటి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఓహ్, ఓకే. కనుక ఇది వెర్షన్ లో, 0 క్రింద వెళ్ళి, కాని గుర్తు చేస్తుంది అసలు సరైన వెర్షన్ గాని 0 క్రింద వెళ్ళలేదు. కాబట్టి ఈ సరైన వెర్షన్ అని గుర్తుంచుకోండి. కాబట్టి కనీసం రెండు సంస్కరణలతో పోల్చి చూద్దాం. వెర్షన్ అనుకూలంగా ఒక వాదన ఏమిటి రెండు, mmm, మంచి? Yeah? ప్రేక్షకులు: ఇది తక్కువ ప్రదేశాన్ని ఉపయోగించుకుంటుంది. డేవిడ్ J. మలన్: సరే, అది కుడి తక్కువ ప్రదేశాన్ని ఉపయోగించుకుంటుంది? వెర్షన్ ఒక 32 N కోసం బిట్స్ మరియు వేరొక ఉపయోగిస్తారు అయితే నేను కోసం 32 బిట్స్. సంచిక రెండు మాత్రమే n కోసం 32 బిట్లను ఉపయోగిస్తున్నట్లయితే, తద్వారా ఒక ప్లస్ ఉంది. ఇతర ఆలోచనలు? ఎవరైనా ఒక అనుకూలంగా వాదిస్తారు అనుకుంటుంది? Yeah? ప్రేక్షకులు: మీరు n కోసం కోడ్ యొక్క అదనపు లైన్ ఉపయోగించాలి -. డేవిడ్ J. మలన్: సరే, ఖచ్చితంగా. కాబట్టి ఆ ఫెయిర్ యొక్క. కనీసం నాకు, ఈ సో - నేను ఇది నిజానికి ఒక చిన్న messier భావించి నిజానికి అనే నేను ఒక నా తర్కం యొక్క అన్ని టూకీగా యొక్క క్రమం కాదు లూప్ వీలయినంత లూప్ అందమైన లైన్. ఇక్కడ, నేను రకమైన ఈ n న టాక్ ఉంటుంది - లూప్ చివరిలో, ఎందుకంటే అది తార్కికంగా అవసరం. కానీ రకమైన నాకు తప్పుగా రుద్దుకున్నాడు, అది కేవలం ఎందుకంటే , అయినప్పటికీ, ఇక్కడ యొక్క తర్కం నుండి ప్రత్యేక తెలుస్తోంది మళ్ళీ, అది అవసరం. ఇతర ఆలోచనలు? Yeah? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును. మీరు బదులుగా సో వాట్, పాట చివరిలో, కోరుకున్నారు మళ్ళీ పాట యొక్క పేరు ముద్రించాలా? "బీర్ 99 సీసాలు ప్లే ధన్యవాదాలు" వలె, లేదా ఏదో ఆ వంటి వెర్రి? కానీ పాయింట్, మీరు అసలు విలువ యాక్సెస్ ఉన్నాడు. మీరు ప్రతి న n పరివర్తనం లేదా మార్చారు వాస్తవం మళ్ళా మరియు అందువలన అసలు విలువ నాశనం మీరు చివరిలో అలా ఇవ్వలేదు. ఇప్పుడు, నిస్సందేహంగా, మేము స్పష్టంగా చేయాలనుకుంటున్నారా లేదు ఈ కార్యక్రమంలో. కాబట్టి ఎవరు పట్టించుకుంటారు? కానీ చాలా చెల్లుబాటు అయ్యే పాయింట్. మరియు నిజాయితీగా ఉండటానికి, ఎవరూ నిజంగా ఉంది ఇక్కడే సమాధానం. వారు రెండు సమానంగా సరైన ఉన్నారు. నేను గాని మార్గం ఒప్పించాడు చేయవచ్చు. నేను సాధారణంగా, ఒక మంచి సూత్రం ఉంది, అని చెబుతాను మీరు కొన్ని విలువ యూజర్ అడిగారు మరియు మీరు ఒక వేరియబుల్ నిల్వ క్రమీకరించు సూత్రం యొక్క n వంటి దానిని బహుశా మంచి ఆ చుట్టూ ఉంచడానికి. మరియు ఏ డేటా మీకు మళ్ళీ మళ్ళీ పరివర్తనం చెందడానికి మీరు కేవలం, మీరే ఆ వేరియబుల్ కాపీని ఇచ్చే మీరు అసలు ప్రాప్తి. మీరు 32 మరింత బిట్స్ గడుపుతున్నారు, కానీ నిజానికి ఈ ఉంది కంప్యూటర్, RAM యొక్క రెండు గిగాబైట్ల ఈ రోజుల్లో ఇష్టం ఉంది మరియు మేము 32 బిట్స్ మీద quibbling చేస్తున్నారు? రియల్లీ ఇటువంటి పెద్ద ఒప్పందంలో. మరియు ఒక సగం ప్రదర్శన లేదా ఇక్కడ ఈ పరికరం, న RAM యొక్క గిగాబైట్, 64 బిట్స్ వర్సెస్ 32 బిట్స్ ఇటువంటి పెద్ద ఒప్పందంలో. ఖచ్చితంగా నేడు, అది పరిమాణం ఎక్కువగా విధంగా చేస్తాడు కార్యక్రమం యొక్క, ఇది వందల అవతరిస్తుంది లు, లేదా కొన్ని మెగాబైట్ల, ఈ రోజుల్లో. కాబట్టి తగినంత ఆందోళనలు, ఎవరూ సరైన సమాధానం. కానీ కనీసం ఆ మొదలు అని ఆలోచనలు ఉన్నాయి మీ మనస్సు ద్వారా వెళ్ళాలి? Pset 0 లో, మేము నిజంగా మాత్రమే అంచనా అయినప్పటికీ ఎందుకంటే సరి, లేదా కనీసం వివిధ దోషాలు disclaiming మేము ముందుకు మీరు, ఎదుర్కొంది ఉండవచ్చు, నమూనా మరొక కీ కారక మాత్రం రెండు కోడ్ వ్రాసే మరియు మా కోడ్ మూల్యాంకనం. కాబట్టి కనీసం ఈ వంటి వాటిని భావిస్తున్నారు ఇస్తాయి. మరియు కేవలం ఏదో పనిచేస్తుంది కాబట్టి, ఇది బావుంది కాదు అది బాగా రూపకల్పన యొక్క అర్ధం కాదు. ఆ బోధన సభ్యులు విషయాలు ఒకటి మరియు సమస్య సెట్లు మాకు సమయంలో భాగంగా బాధించటం సహాయం చేస్తుంది. Well, గురించి, ఇక్కడ చెప్పడానికి ఈ వెర్షన్ యొక్క ఏమి చెయ్యాలా? నాకు ఒక క్షణం లో ఇక్కడ ఒక చిన్న సెక్సీ ఏదో ఒకటి లెట్. మొదటి ఈ వదిలించుకోవటం తెలియజేయండి. ఇప్పుడు యొక్క ఈ వ్యాకరణ సమస్యను పరిష్కరించడానికి అనుమతిస్తాయి. కాబట్టి ఈ సంస్కరణలో, నేను వ్యాకరణం పరిష్కరించడానికి కావలసిన కాబట్టి, కాకుండా కేవలం parenthetical s "సీసా" వంటి, సే లేదా "సీసాలు" - నేను ఆ మూలన కట్ చేయకూడదని - నేను కూడా గతికంగా పదం "సీసాలు" ముద్రించాలా కావలసిన తద్వారా నేడు ఈ% s placeholders ఉపయోగించి లేదా "సీసా". నేను షరతులతో నేను యొక్క విలువ ఏమిటి తనిఖీ చేయాలి. ఇది 1 ఉంది ఉంటే, నేను "సీసా" చెప్పాలనుకోవడం, మరియు ఇది ఏదైనా ఉంటే ఇంకా, నేను "సీసాలు" చెప్పాలనుకోవడం. కాబట్టి దీన్ని ప్రయత్నించండి. నేను == 1 చేస్తే, అప్పుడు నాకు ముందుకు వెళ్లి డిక్లేర్ తెలియజేయండి - నేను ఒక స్ట్రింగ్ అవసరం, కాబట్టి ఇది ఎందుకంటే, నాకు స్ట్రింగ్ S1 తెలియజేసేలా మొదటి స్ట్రింగ్ నేను ఇప్పుడు పట్టించుకోనట్లు. నేను "సీసా" అని వెళుతున్న. ఆపై, స్ట్రింగ్, యొక్క చూసేలా S2 - మరియు నేను ఒక క్షణం లో వెళుతున్న నేను ఎక్కడ వివరించడానికి ఉంటుంది - "సీసాలు." కాబట్టి ఈ పాట, మేము ఉంటుంది, గుర్తుచేసుకున్నారు సమర్థవంతమైన విషయాలు, రెండు వేర్వేరు పదాలు ముద్రించడానికి. మేము ఇక్కడ తిరిగి చూడాలని అలా అయితే మేము వచ్చినప్పుడు, ఆ గమనించి ఇక్కడ ఈ ఉదాహరణ, "గోడ మీద బీర్ రెండు సీసాలు, బీరు రెండు సీసాలు, ఒక రాసుకోదగిన, నేను అనుకుంటున్నాను, "అది చుట్టూ పాస్ ఈ నాలుగో లైన్ ఇప్పటి "బీర్ బాటిల్ ఒక చెప్పడానికి గోడ సీసాలు "లేదా". నేను నిర్ణయించుకోవాలి కాబట్టి, నేను చెప్పాలనుకోవడం లేదు " "సీసా"? నేను,, ఏకపక్ష చెప్పడానికి అన్ని కుడి వెళుతున్న ఇప్పుడు నేను వేరియబుల్ అని S1, స్ట్రింగ్ డిక్లేర్ వెళుతున్న ఒకటి, ఇక్కడ మరియు ఇక్కడ కూడా ప్లగ్ పరుచుట కొరకు ఆ పదాలు ఎల్లప్పుడూ సమానంగా ఉంటాయి, కనుక కారణంగా పాట యొక్క స్వభావం. మరియు నేను కావలసినట్లు పద S2 కాల్ వెళుతున్న చివరికి ఇక్కడ డౌన్ కనిపిస్తాయి. ఇప్పుడు, వాచ్యంగా, 100 లో 99 సార్లు, అది చేస్తాడు 3 బహువచనం ఎందుకంటే, ఇటువంటి సందర్భాల్లో రెండు అదే, 2 బహువచనం, 4 బహువచనం. కానీ ఈ మూలలో సందర్భంలో, మనం ఎక్కడ 2 ను మరియు తరువాత 1, లేదా కూడా 1 ఆపై 0, నేను ఈ తర్కం అవసరం. కాబట్టి తేవడంలో నా కోడ్ లో కొంత సమయం ఖర్చు ఉంటుంది. నేను దీన్ని అయితే, "బాటిల్" సమానంగా సెట్ S1 తర్వాత, నేను == 1 ఉంటే మరియు "సీసాలు", సమానంగా S2 ఈ 1 కోసం కావచ్చు సీసా, మరియు ఈ 0 సీసాలు అవుతుంది. మరియు ఇక్కడ ఈ, ఈ ఏమి ప్రాతినిధ్యం లేదు? జస్ట్ స్పష్టతను. ఇది ఒక వ్యాఖ్య ఉంది. కాబట్టి మీరు ఒకే లైన్ వ్యాఖ్యలు కలిగి ఉండటం మీరు అర్థం ఈ వంటి మీ కోడ్ మీరే, కానీ మరొక సాధారణ చేయవచ్చు ఉదాహరణ కూడా అని మీరు సూపర్ చిన్న పదబంధాన్ని ఉంటే ఆ మీరే ఉంచాలి కావలసిన మరియు ఉంచండి కేవలం చదవదగ్గ యొక్క అది కుడి కోడ్ లైన్ చివరిలో, మీరు చెయ్యగలరు పూర్తిగా ఈ వంటి ఏదో ఒకటి. కాబట్టి ఇప్పుడు నేను ఇలా చేస్తే? నేను 1 సమానం కాదు ఎల్స్ ఉంటే. కాబట్టి బ్యాంగ్ సమానం - ఆశ్చర్యార్థకం పాయింట్ "బాంగ్" అంటారు. = 1 బ్యాంగ్ కాబట్టి. నేను 1 సమానం కాదు చేస్తే, నేను బదులుగా ఏమి అనుకుంటున్నారు? Well, నేను ఏమి కావాలి అనుకుంటుంది మొదటి పదం? కాబట్టి స్ట్రింగ్ 1, బహువచనం సీసాలు కోసం "సీసాలు" ఉండాలి మరియు ఈ ఇప్పుడు, అలాగే బహువచనం "సీసాలు" ఉంటుంది. ఈ నిజానికి మాకు గెట్స్ ఉంటే మేము చూస్తారు మేము వెళ్ళి చోట. నేను ఇక్కడ స్క్రోల్ డౌన్ చేస్తే ఇప్పుడు, నేను పూరించే చేస్తున్నాను అని గుర్తించలేకపోతే నేను, కానీ S1 మాత్రమే. నేను మరియు S1 లో పూరించే చేస్తున్నాను. మరియు దిగువకు ఇక్కడ, నేను అదే ఇది, 1 మైనస్ ఉన్నాను ముందు, కాని S2. ఇతర మాటలలో, నేను ఆధారంగా మార్చడం ఆంగ్ల పదం మీరు ఈ తర్కం మీద. ఇప్పుడు, ఈ కోడ్ లో కొన్ని సమస్యలు ఇప్పటికే ఉంది. ఇక్కడ గేటు ఇప్పటికే ఏమి పారిపోతాడు? Yeah? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఖచ్చితంగా. నేను ఇప్పటికే స్కోప్ పాఠం భంగం చేసిన. నేను S1 మరియు S2 డిక్లేర్డ్ చేసిన, కానీ నేను లోపలి చేశాను అవును, ఈ కోడ్ అప్ పని చేస్తుంది అంటే వంకర జంట కలుపులు, లైన్ 42 వరకు, కానీ వెంటనే నేను లైన్ 43 హిట్, అంచనా ఏ ఉనికిలో? S1 లేదా S2 కానీ - Well, స్కోప్ లో ఇకపై ఏమి అనుకుంటారో. కాబట్టి మేము దీన్ని పరిష్కరించడానికి ఉంటుంది. నాలో ప్రకటనలు తొలగించండి తెలియజేయండి. నేను ఇక్కడ వేరియబుల్ పేర్లు వదిలి ఈ తొలగిస్తాము మరియు ఇక్కడ ఈ తొలగించండి. ఏ లైన్స్ లో నేను నిజంగా ఈ విషయాలు డిక్లేర్ చేయాలి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును, కాబట్టి బహుశా కుడివైపు అప్ ఇక్కడ, 33-ish. స్ట్రింగ్ S2 అప్పుడు స్ట్రింగ్ S1 కాబట్టి మరియు. మరియు అది అవుతుంది, నేను ఈ చేయవచ్చు. మీరు ఒకే రకమైన రెండు వేరియబుల్స్ డిక్లేర్ ఉంటే, మీరు నిజానికి కామాతో ఉపయోగించడానికి మరియు చేసే C. అన్ని లో కుడివైపు కాబట్టి ఇప్పుడు నేను రెండు వేరియబుల్స్ ఉన్నాయి - S1 మరియు S2. నేను ఈ వారిని విలువలు కేటాయించి నేను ఇక్కడ పరిస్థితులు, లేదా ఇక్కడ. మరియు నేను క్రింద వాటిని ఉపయోగించి వెబ్. ఎంత మంచి ఈ ఇప్పుడు పని అన్నారు? సరే, ఇంకా కొంచెం బగ్గీ, కానీ కనీసం చూడండి లెట్స్ ఎంతవరకు మేము సంపాదించిన చేసిన. నాలో ముందుకు వెళ్లి beer3 తయారు చేద్దాము. ఈ beer3 ఉంది? YEP, ఈ beer3 ఉంది. ఇప్పుడు నాకు ముందుకు వెళ్లి beer3 అమలు అనుమతిస్తాయి. 399 99. మేము బహుశా అవి చాలా భాగం దాటవేయవచ్చు. మరియు డౌన్ ఇక్కడ, ఆ దృష్టి. "గోడపై బీర్ ఒకటి సీసా, బీరు యొక్క ఒక సీసా, పడుతుంది క్రిందికి, గోడ మీద, బీర్ 0 సీసాలు చుట్టూ పాస్. " కానీ నేను పరిష్కారం కేవలం సగం మాత్రమే మీ ఆకర్షించబడ్డాయి చేస్తున్నాను. రకం ఇక్కడ చిత్తు చేశాడు. కాబట్టి నేను సమానం అయినప్పుడు మూలలో కేసులు ఉత్పన్నమయ్యే తెలుస్తోంది ఏమి రెండు విలువలు? ప్రేక్షకులు: 2, 1. డేవిడ్ J. మలన్: 2 మరియు 1. ఇది 1 1 మరియు కాదు. ఇది నిజంగా ఈ పాట కేవలం ఈ చివరి రెండు చరణాలు ఉంది. నేను బదులుగా ఏమి అనుకుంటున్నారు? నేను నేను == 1 ఉంటే, అక్కడ కేసు క్యాచ్ కనిపిస్తుంది అప్పుడు మొదటి పదం "సీసా", కానీ రెండవ పదం "సీసాలు" ఉంది. కానీ ఇక్కడ నేను ఈ == 2 అని మార్చడానికి కావలసిన. ఈ సందర్భంలో ఉంటే, నేను ఏమి అనుకుంటున్నారు మొదటి పదం అని? ప్రేక్షకులు: "సీసాలకు". డేవిడ్ J. మలన్: రెండు సీసాలు కోసం "సీసాలకు". మరియు ఇక్కడ ఈ పదం ఉండాలి - ప్రేక్షకులు: "బాటిల్". డేవిడ్ J. మలన్: "బాటిల్", ఏకవచనం. All right, యొక్క, దూరంగా ఇక్కడ పైగా తిరిగి వీడలేదు, తయారు మళ్ళీ అమలు తిరిగి అమలు beer3, రకం మళ్లీ 99. సరే, "విభజన లోపంగా (ముడి వేసారు)." నేను ఏం తప్పు చేసాను? ప్రేక్షకులు: మీరు ఒక విలువను లేదు [వినబడని]. డేవిడ్ J. మలన్: Ah, అద్భుతమైన పాయింట్. All right, ఇక్కడ ఏమి జరిగింది? విభజన లోపంగా కాబట్టి, మరియు మేము నిజంగా చూడండి చూడాలని ఈ కొద్ది భవిష్యత్తులో సార్లు, ఉద్దేశపూర్వకంగా. కానీ ఇప్పుడు కోసం, ఈ వాస్తవానికి అర్థం ఏమిటి? విభజన లోపంగా దాదాపు ఎల్లప్పుడూ మీరు అర్థం ఏదో మీ కంప్యూటర్ మెమొరీ, RAM ను యాక్సెస్ చేసేందుకు ప్రయత్నించారు, మీరు నిజంగా అడిగారు లేదు మీరు స్వంతం కాని, ఆ కోసం ఆపరేటింగ్ సిస్టమ్. కాబట్టి ఈ విషయంలో, ఇది నేను చేసిన ఏ గమనించి నా తర్కం లో బలహీనంగా. నేను 1 సమానం నేను S1 మరియు S2 విలువ కేటాయించిన చేశారు. నేను 2 సమానం నేను కూడా ఆ చేసిన. కానీ నేను అనంతమైన లో చేయలేదు అవకాశాల - ముఖ్యంగా, 3 లేదా 4 లేదా డాట్, డాట్, డాట్, 99. కాబట్టి ఈ ఒక పరిష్కారాన్ని కేవలం లెట్స్ ఉంటుంది ఒక else పరిస్థితిని. నాకు ఇక్కడ వెళ్ళి S1 సమానం అని పిలవబడు - అది ఇక్కడ ఉండాలి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఎందుకంటే సాధారణ సందర్భంలో "సీసాలకు", అది కేవలం అదే విషయం. కాబట్టి కోట్, unquote, "సీసాలు." సమానం కాబట్టి బహువచనం కోసం సీసాలు, మరియు పైకి ఇక్కడ, బహువచనం సీసాలు కోసం. సరే, ఇప్పుడు, నా టెర్మినల్ విండోకు తిరిగి వెళ్ళి తెలపండి మళ్ళీ కంపైల్ చెయ్యండి, అది మళ్ళీ అమలు. 99. Whew. మరియు శీఘ్ర తెలివి చెక్ చేయండి చూద్దాం. సాంకేతికంగా, మేము నిర్ధారించడానికి ఈ అన్ని చదవాలనుకుంటున్న భావిస్తున్న వారు సరైన, కానీ చూద్దాం యొక్క తెలిసిన అపరాధులైన కనీసం. 3 సీసాలు, 2 సీసాలు, 2 సీసాలు, 1 సీసా, 1 సీసా, 0 సీసాలు. మేము కనీసం ఇప్పుడు కోసం స్థిర కనిపిస్తుంది. కానీ ఇక్కడ క్యాచ్ ఏమి ఒక దేవుడు భయంకర మెస్ ఈ ఉంది కేవలం ఒక పెద్ద పరిష్కరించడానికి ఒక పాత్ర వ్యాకరణ వివరాలు. నేను ఈ మూలలో కట్ ఒక కారణం రకం ఉంది ముందు ఉంటుంది అది కేవలం పూర్తిగా బాధించే ఎందుకంటే ఈ చాలా కోడ్ వ్రాయండి. కానీ కొద్దిగా మరింత లలితమైన మార్గాలున్నాయి అని అవుతుంది ఖచ్చితమైన ఇదే వ్యక్తం. మరియు మేము ఈ విధంగా చేయవచ్చు. నాకు ఒక క్షణం తెరపై ఈ వదిలి లెట్ మరియు ఒక టెర్నరీ ఆపరేటర్లు గా పిలుస్తారు ఏదో పరిచయం. ఈ మనం అర్ధం ఒక ఒక లైనర్ రకం మా వంటి వాగ్దానం కొద్దిగా sexier, నివసిస్తున్నారు. నేను ఈ క్రింది విధంగా చేయ బోతున్నాను. నాకు S1 అనే స్ట్రింగ్ ఇవ్వండి, నాకు తెలియజేయండి అది ఈ క్రింది కేటాయించండి. (I == 1)? "సీసా", లేకపోతే "సీసాలు". S2 స్ట్రింగ్ (i == 2) గెట్స్? "సీసా", లేకపోతే "సీసాలు". ఇక్కడ తేడా ఏమిటి అప్పుడు? కోడ్ యొక్క ఈ రెండు పంక్తులు నేను, వాదిస్తారు చెయ్యవచ్చు ఈ మొత్తం మెస్ స్థానంలో. నేను దాన్ని రకమైన నాకు రుద్దుకున్నాడు వలన, దానిని మెస్ కాల్ అది కోడ్ చాలా పంక్తులు అని తప్పుగా. తప్పు లేదు. ఇది చెడు డిజైన్ కాదు. వలెనే, ఈ ఖచ్చితంగా సరైన మరియు సంపూర్ణ ఉత్తమంగా ఉంటుంది. మీరు మీరే వ్యక్తీకరించడానికి అయితే కోడింగ్ దుర్భరమైన గెట్స్ మళ్ళీ, మళ్ళీ, మళ్ళీ ఒక నిరాడంబరమైన ప్రత్యేకంగా డామన్ ఈ వంటి దృష్టాంతంలో. కాబట్టి సి ఈ వంటి కొన్ని సత్వరమార్గాలు ఉన్నాయి. కాబట్టి ఇది తప్పనిసరిగా S1 అనే స్ట్రింగ్ డిక్లేర్ చెప్పడం మరియు ఈ విలువ లేదా నేను == ఉంటే ఈ విలువ గాని అది కేటాయించి - క్షమించాలి, నేను మరింత స్పష్టంగా ఈ చెప్పాలి. ఒక వేరియబుల్ S1 డిక్లేర్ ఈ నిజమైతే ఈ లెక్కించాల్సి. లేకపోతే, ఈ లెక్కించాల్సి. కాబట్టి ఇతర మాటలలో, ఈ యొక్క ఒక లైన్ మార్గం విధమైన ఉంది అయితే వేరే చెప్పడం కానీ మార్గం వెంట ఒక కార్య చేయడం. నేను 1 ఉంటే కాబట్టి, అప్పుడు ముందుకు వెళ్లి ఈ "సీసా" కాల్. మరియు అప్పుడు మిగిలిన ఈ, అది "సీసాలు" కాల్. ఇంతలో, S2, నేను 2 సమానం మేము నిర్ణయించుకోవాలి ఆ రెండవ పదం, మేము చేస్తాము "సీసా" కు S2 సెట్. లేకపోతే, "సీసాలు" కు సెట్. ఏ ఈ నేను ఈ గుండా వెళ్లి, అన్ని తొలగించగలరు ఇప్పుడు అర్థం కోడ్ యొక్క ఆ పంక్తులు. నేను ఉన్నప్పుడు, కొంతవరకు హాస్యాస్పదమైన, ఈ ప్రస్తుతం sexier, అది శైలీకృత సెన్స్ ఆఫ్ విధమైన లో sexier ఉంది. క్రియాశీలంగా, ఈ కోడ్ వాస్తవానికి అన్నారు వాస్తవం ఖచ్చితమైన ఇదే. మరియు ఇది మొదటి వద్ద గుప్తమైన కొద్దిగా చూడండి ఉండవచ్చు అయినప్పటికీ గ్లాన్స్, మేము ముందు ఈ నిర్మాణం చూడలేదు చేసిన ఎందుకంటే, నేను మీరు ఇది చివరకు మరింత చేస్తాడు వాదిస్తారు రీడబుల్ మరియు మనం మానవులు క్రమం చేయడానికి చాలా సులభం ఇప్పుడు మీరు చదువుకోవచ్చు ఎందుకంటే, అర్థం ఒక లైన్ కోడ్ అన్ని. ఇది ఒక పేరు ఈ ఉంది, ఒకవేళ ఇంకా ఆత్మ సమానంగా ఉంది పరిస్థితి మరియు తర్వాత ఈ ఉంటే లోపల ఏమి ఉంది మరియు ఈ ఇంకా లోపల ఏమి ఉంది. కానీ మేము చాలా అందంగా చేయవచ్చు. ఇప్పుడు నా టెర్మినల్ తిరిగి వెళ్ళడానికి, అన్ని తొలగించిన చేసిన ఆ రేఖల మరియు కేవలం ఆ రెండు భర్తీ, మళ్ళీ కంపైల్ చెయ్యండి, 99 తో బీర్ తిరిగి అమలు సీసాలు, ఆ నోటీసు నా వ్యాకరణం ఇప్పటికీ, నిజానికి, సరైన ఉంది. మరలా, ప్రారంభించడానికి ఏదో. బీరు యొక్క 2 సీసాలు, బీరు యొక్క 1 సీసా. బాగా ఉంది. అవును. సో అక్కడ మేము మరింత క్లుప్తమైన పరిష్కారం ఉంది. కూడా ఈ సో మీరు, సి మరింత సౌకర్యవంతమైన లేదు పొందేవరకు కానీ, మొదటి pset లేదా రెండవ అవసరం ఈ నిర్మాణాలను మాకు ఎప్పుడూ పనులు అనుమతిస్తుంది గుర్తించలేరు మరింత అందంగా. ఇప్పుడు ఇక్కడ ఒక ఇతర పనిని చూద్దాం. నాకు ముందుకు వెళ్లి return1.c ప్రారంభం లెట్. ఇప్పుడు విధంగా మరొక సమస్యను పరిష్కరించడానికి ప్రారంభిద్దాం మరింత అధునాతన కోడ్ రాయడానికి అనుమతిస్తుంది. ఇక్కడ దీని ప్రయోజనం జీవితంలో సాధారణ చిన్న కార్యక్రమం విలువలు పెంచడం ఉంది. మరియు వాస్తవానికి, యొక్క ఒక అడుగు వెనక్కు తీసుకుందాం. నాకు మానవీయంగా మనం. నాకు ప్రధాన (తప్ప) ఉన్నాయి మరియు Int తెలియజేసేలా. మరియు నాకు ఈ increment.c కాల్ తెలియజేయండి. నేను ఏమి అనుకుంటున్నారు? నేను ముందుకు వెళ్లి ఏదో వంటి చెప్పడానికి వెళుతున్న - మేము సంఖ్యలు అదే కాల్ చేస్తుంది - Int x. కాబట్టి Int x 2 గెట్స్; printf x% d, న్యూ లైన్ x. నేను ఇప్పుడు ఫాస్ట్, కానీ తెలిసిన విషయం యొక్క విధమైన టైప్ చేస్తున్నానని. అప్పుడు నేను x + + చేయ బోతున్నాను. అప్పుడు నేను మళ్ళీ అదే వాక్యం ప్రింట్ వెళుతున్న. మరియు తర్వాత నేను కార్యక్రమం నిష్క్రమించాలి 0 తిరిగి వెళుతున్న. All right, కాబట్టి ఈ ప్రోగ్రామ్ ఇంక్రిమెంట్ ఒక సంఖ్య. ఇది మొదటి అది అప్పటి 2 ఏదో ప్రారంభించడం వెళ్లి, మరియు అది పెంచడం మరియు మళ్లీ ప్రింట్ వెళ్ళడం జరుగుతుంది. కాబట్టి లెట్స్, చాలా సులభమైన కార్యక్రమం పెంపు అమలు. కానీ అలా, నేను క్యూబ్ విలువ చేయదలిచిన ఇప్పుడు అనుకుందాం కొంతవరకు అనియత ఏదో. నేను నిజానికి x ఇది క్యూబ్ గెట్స్ చేయాలనుకుంటున్నారా. నేను POW ఫంక్షన్ అని ఏమి వాడవచ్చు కానీ నేను లేదు ఆ ఇంకా తెలుసుకుని. నేను ఈ పాత ఫ్యాషన్ విధంగా చేయ బోతున్నాను. x సార్లు ఈ x సార్లు x సార్లు x సమానం. నేను మళ్ళీ ద్వారా అది గుణించడం, విలువ cubing నేను మళ్లీ మళ్లీ, తద్వారా మేము అధికారాన్ని పొందుతారు ఈ సందర్భంలో 3 యొక్క. కాబట్టి ఇప్పుడు నేను ప్రింట్ ఉండాలి సంఖ్యలు మేము చూస్తారు వంటి, ఉండాలి ఇక్కడ - పెంపు తయారు, కాబట్టి ఇది నిజానికి నిజంగా పెంచడం కాదు ఇకపై, కాని మేము ఒంటరిగా పేరు చెప్పను - అప్పుడు 2 మరియు 8. ఇప్పుడు మేము శుద్ధీకరణ అవకాశం ప్రారంభం కలిగి ఇక్కడ, అనగా అనేక గుణించడం ఈ cubing విషయం స్వయంగా ద్వారా కూడా ఈ అనుకుని కేవలం కావచ్చు ఉపయోగకరమైన ఎవరైనా నిర్ణయించుకుంది అనే విధిగా కలిగి సంవత్సరాల క్రితం - మీకు తెలిసిన, రకం ఉపయోగకరంగా యొక్క మాకు ఒకటి డౌన్ కూర్చుని మరియు printf కాబట్టి మిగిలిన ప్రపంచ అది ఉపయోగించే వ్రాస్తూ, ఎందుకు మేము డౌన్ కూర్చుని క్యూబ్ అనే ఫంక్షన్ వ్రాయవద్దు మాకు ఈ cubing చేస్తుంది కాబట్టి మేము మాన్యువల్గా లేదు ఆ ఇక్కడ విలువలు cubing భావన అమలు? ఒక చిన్న ఉదాహరణ కాబట్టి, కానీ యొక్క ముందుకు వెళ్లి ఉపయోగించడానికి మీరు ఈ ఒక వంటి మా సొంత ఫంక్షన్ రాయడానికి అవకాశం. కాబట్టి ఇప్పటివరకు, మేము మాత్రమే ప్రధాన ఉపయోగించి, మరియు మేము ఇతర ఉపయోగించి ప్రజల విధులు, కాని మేము మా స్వంత వ్రాయలేదు. కాబట్టి ఇక్కడ వెళ్ళండి. నేను ముందుకు వెళ్లి క్యూబ్ అనే ఫంక్షన్ రాయడానికి వెళుతున్న. మరియు నేను దానిని ఒక ఇన్పుట్ తీసుకుని కలిగి వెళుతున్న. దాని ఇన్పుట్ పూర్ణాంకాలు అన్నారు. మరియు అది ఉండబోతుంది? ఇది Int అవుట్పుట్ ప్రకటించాలని జరగబోతోంది = ఇన్పుట్ సార్లు ఇన్పుట్ టైమ్స్ ఇన్పుట్. అది ఆ అవుట్పుట్ తిరిగి వెళుతున్న. మరియు నేను ఇప్పుడు ప్రత్యేక ఉండాలి. ఈ ఫంక్షన్ ఒక పూర్ణాంకానికి తిరిగి అన్నారు. ఇక్కడ మీరు మీ స్వంత విధులు రాయడానికి కావలసిన ఎలా ఉంది. మీరు ముందుగా మీ పేరు ఏమిటి నిర్ణయించుకుంటారు ఫంక్షన్ మాత్రం. మరియు సాధారణంగా, వివరణ ఏదో మంచి, కాబట్టి నేను చేస్తాము ఇది క్యూబ్ కాల్. అప్పుడు మీరు దానిని తిరిగి ఏమి పేర్కొనాలి, ఏది దాని అవుట్పుట్ మాత్రం. మరియు మేము ఇంకా అనేక ఎంపికలు లేదు. Int, చార్, ఫ్లోట్, bool, స్ట్రింగ్. నేను కోరుకున్న ఎందుకంటే ఇప్పుడు నేను ఒక Int కొనసాగించు వెళుతున్న పూర్ణాంకం తిరిగి. అప్పుడు మీరు దాని ఇన్పుట్లను, ఉంటే ఏమి పేర్కొనాలి. మరియు క్యూబ్ ఒక వాదన తీసుకుంటే, మధ్య ఏదో పడుతుంది బ్రాకెట్లు మీరు ఆ వాదన ఒక పేరు ఇవ్వాల్సి ఉంటుంది కాబట్టి మీరు అమలు లేదా రాస్తున్నాం వంటి మీరు ఏదో కాల్ చేయవచ్చు ఈ ఫంక్షన్, మరియు మీరు ఒక రకం, ఇవ్వాల్సి ఉంటుంది ఈ లో కేసు Int అని అన్నారు. కాబట్టి చిన్న లో, క్యూబ్ పూర్ణాంకం కనిపించే విధి ఇన్పుట్ మరియు తిరిగి ఉత్పత్తి వంటి పూర్ణాంకం వంటి. కాబట్టి ఆ ఇన్పుట్ తో ఏమి చేస్తుంది? Well, లైన్ 14 లో, నేను ఒక వేరియబుల్ అని అవుట్పుట్, మరియు నేను ఇది విలువ, ఇన్పుట్ సార్లు ఇన్పుట్ సార్లు ఇన్పుట్ కేటాయించండి. మరియు నేను అవుట్పుట్ తిరిగి. కాబట్టి నేను ఈ ఉపయోగించగలను? నేను లైన్ లో ఈ హైలైట్ అక్షరాలు మార్పు లేదు 7, మీరు అనుకుంటున్నారు చేయడానికి? ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: అవును, x యొక్క కాబట్టి క్యూబ్. కాబట్టి x అది కొన్ని విలువ కలిగి అంటే ఒక వేరియబుల్, ఉంది. అదృష్టవశాత్తూ, అది రకం పూర్ణాంకం యొక్క ఉంటుంది. X ఒక పూర్ణాంకానికి ఎందుకంటే, ఆ నేను క్యూబ్ లో పాస్ దీని అర్థం. నేను విలువ x విలువ భర్తీ నేను కూడా క్యూబ్ x యొక్క, మీరు, ఇప్పటివరకు ఏ సమయంలో కేసు ఉంది సమాన సైన్ మరియు కోడ్ ఒక లైన్, కుడివైపున అంశాలు ఉన్నాయని అమలు అవుతుంది మరియు తరువాత కేటాయించిన అవుతుంది ఎడమవైపు విలువ. కాబట్టి క్రియల క్రమం మేము ఆశిస్తున్నాము అని ఉంది. ఈ సో పని చేస్తుంది? Well, నేను ఇక్కడ కోల్పోండి. నా టెర్మినల్ విండో తెరుచుకుంటుంది లెట్. నాకు ఎంటర్ పెంపు ఉందని లెట్. ఫంక్షన్ 'క్యూబ్' యొక్క "పరిపూర్ణమైన ప్రకటనలో చెల్లదు ఇది వంటి C99. "జనాంతికంగా, C99 భాష సి సూచిస్తుంది 1999 లో నిర్వచించిన, ఏ వెర్షన్ కంటే ఒక నవీకరణ నుంచి అసలు ఒక నవీకరణ ఇది 1989. కాబట్టి అన్ని సాధనాలు మాత్రమే. కాబట్టి ఆ "పరిపూర్ణ ప్రకటన యొక్క అర్థం ఏమిటి ఫంక్షన్ 'క్యూబ్' చెల్లనిది? "ఇది ఇక్కడ ఉన్నారు. ఇది పంక్తి 12 లో కుడి ఉంది. ప్రేక్షకులు: [వినబడని]. డేవిడ్ J. మలన్: ఆ ఏమిటి? ప్రేక్షకులు: ఇది ముందు కాదు. డేవిడ్ J. మలన్: ఇది ముందు కాదు. కాబట్టి ఈ విషయం ఉంది. సి రకం స్టుపిడ్ యొక్క, లేదా C కంపైలర్సును స్టుపిడ్ యొక్క రకమైన ఉన్నాయి. వారు నిజంగా మీరు వాటిని చేయడానికి చెప్పండి ఏమి. మరియు వారు ముఖ్యంగా, మాత్రమే, దిగువన మీ కోడ్ టాప్ చదవండి ఎడమ. కంపైలర్, గణగణమని ద్వని చేయు, మీ కోడ్ చదవడానికి అయితే, లైన్ 1, అది ఈ ఎలా చేయాలో సంఖ్యలు. ఓహ్, ఇక్కడ ప్రధాన వస్తుంది. సరే, నాకు ముందుకు వెళ్లి ఒక వేరియబుల్ x డిక్లేర్ తెలియజేయండి. నాకు ఏదో ప్రింట్ లెట్. లైన్ 7, హెక్ క్యూబ్ ఏమిటి? ఇది stdio.h లో ప్రకటించింది కాదు. నేను ఏమి చేయాలి సంఖ్య ఆలోచన ఉంది C. తో రాదు. కాబట్టి గణగణమని ద్వని చేయు కేవలం బెయిల్స్ మరియు ఆ లోపం సందేశాన్ని వదిలేసి. కాబట్టి మేము రెండు మార్గాలు ఈ పరిష్కరిస్తాము. మేము ఘనం కేవలం పేరు తరలించడం ద్వారా ఏమి గణగణమని ద్వని చేయు బోధించడానికి ప్రకటన. నేను కట్ మరియు ప్రధాన పైన అది అతికించారు. ఇప్పుడు ప్రధాన మొదటి లేదు కనుక, ఇది గుర్తించలేరు ఇప్పటికీ సిద్ధంగా అమలు. ప్రధాన ప్రధాన ఉంది. ఇది డిఫాల్ట్ పేరు ఉంది. ఇది ఒక ఫైల్ లో ఉన్న ఇది పట్టింపు లేదు. నేను ఉపయోగించే ముందు కనీసం ఇప్పుడు గణగణమని ద్వని చేయు క్యూబ్ కనిపించింది. కాబట్టి గణగణమని ద్వని చేయు ఇప్పుడు సంతోషముగా ఉంటే యొక్క చూసేలా. పెంపు చేయండి, అది ఈ సమయంలో కంపైల్ లేదు. నాకు పెంపు అమలు అయ్యేలా అనుమతించండి. నిజానికి, ఇది పని తెలుస్తోంది. ఇప్పుడు, మీరు చివరకు పేరు దృశ్యాలతో అప్ రావచ్చు ప్రతి ఫంక్షన్ ఉంచాలి సాధ్యమయ్యే కాదు ప్రతి ఇతర ఫంక్షన్ పై. మీరు, వాస్తవానికి ఈ అనంతమైన లూప్ ఇరుక్కోవటం పొందుతారు ఈ వ్యక్తి ఇక్కడ కానీ ఈ చేయాలనుకుంటున్నారు పేరు గై అక్కడ ఉండాలి. కాబట్టి ఆ ఎల్లప్పుడూ పని లేదు. కాబట్టి కృతజ్ఞతగా, సి మరింత చక్కని పరిష్కారం ఉంది. ఇది నేను ఎక్కడ ఈ వెనుక ఉంచు వెళుతున్న, కనుక నేను ఒక నియమం వలె, ఇష్టపడతారు, ప్రధాన ఎల్లప్పుడు ఎగువన, ఎందుకంటే అది చూడటానికి కేవలం మంచిది ఈ కార్యక్రమం అప్రమేయంగా చేస్తుంది. మరియు నేను ఏ ఇక్కడ చేయ బోతున్నాను అని ఏమి డిక్లేర్ ఉంది ఒక నమూనా. నేను అక్షరాలా నా క్యూబ్ ఫంక్షన్ తిరిగి డిక్లేర్ వెళుతున్న కాపీ మరియు పేస్ట్. అసలైన, ఆ వాచ్యంగా కాదు. కాబట్టి అక్షరాలా లైన్ 15 కాపీ మరియు పేస్ట్ అప్ లైన్ 6 పై. ఇది ఈ ముగుస్తుంది ఏ లైన్ పట్టింపు లేదు. ఇది పంక్తి 4 న నిర్మాణము. కానీ ముందు ప్రధాన ఉండాలి లేదు. కానీ తేడా గమనించవచ్చు. ఒక సెమికోలన్ తో లైన్ 4 ముగుస్తుంది, ఇది hey అర్థం గణగణమని ద్వని చేయు, ఒక ఫంక్షన్ ఉంది అది నా పదం పడుతుంది ఒక పూర్ణాంకానికి తీసుకుని ఒక పూర్ణాంకానికి తిరిగి ఆ క్యూబ్ అనే. కాని దాన్ని ఇంకా నేను మీకు చెప్తాను చెప్పేవాడు కాదు. జస్ట్ నేను చివరికి మీరు చెప్పడం హామీ తెలుసు. నిజానికి, ఇప్పుడు ఈ క్రింద డౌన్ అని సరైందే. కాబట్టి ఈ ఎగువన ఎందుకంటే అప్పుడు, సాధారణంగా మంచి ఉంది మీ ఫైలు, మీరు, శీఘ్ర, ఒక లైన్ ఆఫ్ గలగల చేయవచ్చు ప్రతి, మీ ఫంక్షన్ల పేర్లు ఏమిటో, ఏమి వారి ఇన్పుట్లను వాటి ప్రతిఫలములు ఏమిటో ఉన్నాయి. మరియు మరింత స్పష్టమైన ఉంటుంది, ఇన్పుట్ సాధారణంగా వాదన అర్థం లేదా పారామితి, పర్యాయపదంగా. అవుట్పుట్ అది ఏమి చేస్తుంది, తిరిగి విలువ అర్థం తిరిగి నాకు చేయి. ఇక్కడ ఈ సందర్భంలో, క్యూబ్ ఎగువన ప్రకటించింది, కానీ చేయబడింది అమలు నిర్వచించబడింది, లేకపోతే దిగువన, తెలిసిన. కాబట్టి ఇప్పుడు యొక్క ఇక్కడ తిరిగి వెళ్ళి, ఈ తిరిగి అమలు అనుమతిస్తాయి. కాబట్టి ఇప్పుడు మళ్ళీ అమలు పెంపు, నాకు ముందుకు వెళ్లి తయారు తిరిగి అమలు అనుమతిస్తాయి. మరియు అది ఇప్పుడు బాగా పని తెలుస్తోంది. కాబట్టి ఇప్పుడు మేము లాగ అవుట్ ముందుకు వెళ్లి కారణం చేయవచ్చు ఈ నాలుగో వెర్షన్ లోకి బీర్ ఉదాహరణ. కాబట్టి నాకు ఇక్కడ స్క్రోల్ డౌన్ తెలపండి. నేను రకమైన ఇప్పుడు గుండె ఈ పాఠం పట్టింది గమనిస్తారు. నేను మళ్ళీ అదే పద్యము singing మరియు వాస్తవం మళ్ళీ, మళ్ళీ, పాట అదే కోరస్ లైన్, భావించారు నేను ఒక ఫంక్షన్ కారణం అని లేనట్లుగా? నిజానికి, ఈ ప్రేరణలు ఒకటి ఉండాలి. ప్రపంచంలో ఎవరో ఉంటుంది వాస్తవం కాకుండా ఒక ఘనం ఫంక్షన్ను ఉపయోగించడానికి - ఏదో అవుట్ ఫ్యాక్టర్ మరియు మీ వ్రాసే మంచి కారణం ఉంది స్వంత అనుకూల చర్య - కోడ్ యొక్క ఒక భాగం కేవలం చేస్తుంది మీ ప్రోగ్రామ్ లో ఉంటే మీరు రకమైన ఒక ఇవ్వాలని ఆ సంభావిత భావన పేరు - ఈ సందర్భంలో, కోరస్ వంటి - అప్పుడు మీరు అదేవిధంగా ప్రత్యేక ఫంక్షన్ ఆ వ్రాయగలవు. మీరు ప్రధాన ప్రతిదీ రాయడానికి లేదు కేవలం ఉంటే అది వేరు మరియు ఒక పేరు ఇవ్వడం క్లీనర్ భావిస్తాడు. ఇక్కడ ఈ సందర్భంలో, నేను పైన ఒక వ్యాఖ్య మేము గుర్తించాము కేవలం గురించి పాడాడు ఈ ఫంక్షన్ సీసాల పేర్కొన్న సంఖ్యలు. నేను ఈ కాల్ లేదు ఇక్కడ గమనించండి విషయాలు ఇన్పుట్ మరియు అవుట్పుట్. నిజానికి, ఈ సమయంలో నేను సీసా నా ఇన్పుట్ బి అని. మరియు ఇక్కడ గమనించవచ్చు, శూన్యమైన వాటిని సూచిస్తుంది? ఆ బృంద - ప్రేక్షకులు: ఇది తిరిగి లేదు. డేవిడ్ J. మలన్: ఒక విలువను తిరిగి లేదు. నిజానికి, ఫంక్షన్స్ విలువలు తిరిగి లేదు. వారు ఏదో ఒకటి కేవలం చేయవచ్చు. వారు ఇతర ప్రభావాలను గా పిలుస్తున్నారు కలిగి ఈ లో కేసు కేవలం తెరపై ప్రింటింగ్ యొక్క మొత్తం బంచ్ ఉంది. ఇక్కడ ఈ కోడ్, నేను మాటప్రకారము నుండి దొంగిలించింది గమనించి మునుపటి ఉదాహరణ. మాత్రమే తేడా బదులుగా నా వంటి వాడి నేను ఉంటుంది వేరియబుల్, నేను ఇప్పుడు నా వేరియబుల్ వంటి బి ఉపయోగించి వెబ్. నేను డౌన్ ఇక్కడ బి కలిగి, నేను క్రింద ఇక్కడ బి కలిగి, నేను బి కలిగి ఇక్కడ డౌన్ 1 మైనస్. కానీ కోడ్ అదే ఉంది. కానీ మేము ఈ ఉపయోగించవచ్చు ఎలా ఇప్పుడు మీరు చూపించడానికి, లెట్ మి గో ముందుకు మరియు వాస్తవానికి లూప్ ఒక అని ఈ మార్చండి. (i; i> n Int i = n -) కోసం. కాబట్టి మా మునుపటి ఉదాహరణ నుండి దొంగిలించబడిన చేసిన. గతంలో, అది నేను ఆరంభిస్తారు ఆ లైన్ 37 లో ఉంది ఈ బాధించే పాట పాడటం. కానీ బదులుగా, నేను ఇప్పుడు నేను యొక్క బృందగానాన్ని కాల్ వెళుతున్న. పూర్తయింది. కాబట్టి ఇప్పుడు ఈ లూప్ యొక్క ప్రతి మళ్ళా లో, ఈ ఇతర కాల్ నేను వ్రాయుటకు జరిగిన ఫంక్షన్, కోరస్,. ఇది సంవత్సరాల క్రితం ఎవరో వ్రాయబడలేదు. కానీ బృందగానం, అదే సమయంలో, ముద్రించడానికి printf ఉపయోగిస్తుంది ఈ నాలుగు మార్గాల. కానీ నేను మళ్ళీ మళ్ళీ కోరస్ కాల్ చేస్తున్నాను వాస్తవం లూప్ నేను చాలా చివరిలో, పొందండి వెళుతున్న అర్థం నేను ఇప్పటివరకు కలిగి ఖచ్చితమైన పాట. కాబట్టి చిన్న లో, ఇప్పుడు నా కోడ్ వద్ద తిరిగి చూస్తే, అయినప్పటికీ క్రియాశీలంగా ఈ సమానం, ఇది అని గుర్తించలేకపోతే మరింత పఠన పొందుటకు మొదలుపెడుతున్నారు. నేను ఖచ్చితంగా తెలియదు ఎలా GetInt అమలు చేయబడుతుంది. స్పష్టముగా, నేను కోరస్ అమలు ఎలా తెలియదు. కానీ నాకు పట్టింపు లేదు. ఇప్పుడు నేను యొక్క క్రమం ఎందుకంటే నేను, మనిషి, పట్టించుకోను ఈ టాప్ నుండి దిగువ. మరియు విధులు వారు ప్రకారం నామకరణం ఎందుకంటే ఏమి, నా కోడ్ పెరుగుతున్న చదవగలిగే ఉంది. మరియు మా కార్యక్రమాలు మరింత క్లిష్టంగా వంటి - సెమిస్టర్ చివరి నాటికి, మీరు పంక్తులు వందల రాయడం వస్తుంది PHP మరియు JavaScript మరియు వంటి వంటి భాషలను కోడ్ - మీరు ట్రాక్ యొక్క కంటే చాలా సులభంగా ఉండే పొందుతారు మీరు చేసిన ఏ. మరియు మీరు ప్రారంభించిన స్నేహితులతో సహకరించే లేదా భాగస్వాములు లేదా సహచరులు, మీరు మరింత వ్రాయడానికి చేయగలరు ఈ ప్రాథమిక వ్యాయామం మొదలుపెడుతూ భారీ కార్యక్రమాలు నిర్మాణ ఇటుకలు. అన్నారు కలిగిన, మనం ఒక రోజు కాల్ లేదు? మరియు మేము బుధవారం మీరు చూస్తారు. [అప్లాజ్]