[Powered by Google Translate] డేవిడ్ J. మలన్: అన్ని కుడి, ఈ CS50 మరియు ఈ ఉంది వీక్ 1 చివరకు, కాబట్టి అధ్యయనం కార్డులు మొత్తం లో మరియు మీరు ఈ సంవత్సరం కలిగి సహ విద్యార్థులను 745 ఉంది. మరియు మేము కోర్సులో మీరు పలు కలిగి ఆశ్చర్యపోయారు చేస్తున్నారు ఈ సెమిస్టర్, కానీ ఈ కోర్సు కాబట్టి పెద్ద అయినప్పటికీ, ఇలాంటి శుక్రవారం భోజనము వంటి ఈ థింగ్స్ గుర్తించలేరు ఆఫీస్ అవర్స్, 15-వ్యక్తి విభాగాలను, మొదలైనవి ఆ నిజంగా ఈ మరింత సన్నిహిత సృష్టించడానికి ఉద్దేశించినవి పర్యావరణం. కాబట్టి మేము ఇక్కడ, ఒకసారి లేదా రెండుసార్లు వారం సేకరించడానికి ఉన్నప్పటికీ శాండర్స్, ఈ కోర్సు మీ అనుభవం చాలా తెలుసు చాలా మీ సహచరుల పాటు పై చేతులు-ఉంటుంది మరియు సిబ్బంది. కాబట్టి ఇక్కడ 2012 పతనం, వెళ్ళండి. కాబట్టి మేము ఒక గమనిక న ముగిసింది చివరిసారి రీకాల్ సంఖ్యల ప్రాతినిధ్యాన్ని గురించి మాట్లాడటం imprecision. మరియు మేము లో, జరిగిన వైఫల్యాల ఒక చూశారు అది అపార్ధం వచ్చిన వాస్తవ ప్రపంచంలో, ఎలా కంప్యూటర్లు పని. Well, నేడు మేము ఆ ఆలోచనలు మరో సందర్శించండి చేస్తాము అలాగే CS50 క్లయింట్ యొక్క మా చర్చ కొనసాగుతుంది మరియు సి మరియు ఈ కార్యక్రమం ఎంతో అర్థం. కానీ మొదటి, సుడిగాలి ప్రకటనలు కేవలం ఒక జంట. విభాగాలు ఈ ఆదివారం ప్రారంభం, మరియు మొదటి వారంలో ఎప్పుడూ ఉంది వేగంగా మొదలు bit, మేము కేవలం కాబట్టి మీ విభాగాన్ని రూపాలు. మేము ఇప్పుడు, బోధన సభ్యులు, ఇప్పుడు అదే చేస్తున్నా వారు వారి షెడ్యూల్ తెలిసిన, ద్వారా, మేము లక్ష్యంగా చేస్తున్న కాబట్టి శనివారం ఉదయం, మీ విభాగాన్ని తో మిమ్మల్ని కు అప్పగించిన మరియు TF. వారు తదుపరి రోజు ప్రారంభిస్తాము అని గుర్తించిన తరువాత ఆదివారం లేదా సోమవారం లేదా మంగళవారం. ఉత్పన్నమవుతున్నాయి మరియు అప్పుడు మేము విభాగం మార్పులు వసతి ఉంటుంది రోజులు వచ్చిన. Office గంటల అదే సమయంలో,, మళ్ళీ, ఈ రాత్రి, 11 8 PM, ఉన్నాయి Annenberg, అదే రేపు రాత్రి వంటి. సమస్య సెట్లు సాధారణంగా గురవారం వలన అయినప్పటికీ మధ్యాహ్నం, మీరు ఖర్చు చేయడానికి ఐదు చివరి రోజుల వరకు కలిగి తెలుసుకుంటారు గురవారం కార్యాలయం గంటల అందుకే లభ్యత ఉంటే ఆ చివరి రోజులు ఒక నగదు మరియు, తద్వారా, submit శుక్రవారం ఏదో. నాకు మధ్య, స్క్రాచ్ సరదాగా ఉంది ఆ సూచించనివ్వండి మరింత తక్కువ కీలక సమస్య సెట్లు. మరియు నేను, వ్యూహాత్మకంగా, ఆ చివరి రోజులు వేల్లాడుతారు చేస్తుంది జీవిత విధంగా పొందడానికి మొదలవుతుంది తరువాత సెమిస్టర్ లో కోసం మిడ్టర్మలు మరియు ఇతర తరగతులు తో. సమస్య సెట్ 1, అదే సమయంలో, కోర్సు యొక్క పోస్ట్ చేయబడుతుంది వెబ్ సైట్ ఈ శుక్రవారం, వంటి కోర్సు యొక్క నడక వద్ద ఉంటుంది వీడియో ద్వారా, ఇది శుక్రవారం 2.30 PM చిత్రీకరించారు ఉంటుంది తరువాత రోజు ద్వారా ఆన్లైన్లో పోస్ట్. కాబట్టి మేము సోమవారం ముగిసింది. వాస్తవానికి, ఒక ఇక్కడ గమనించండి - నేను కోరుకుంటున్నాను. ఎందుకంటే తరగతులు - సాండర్స్ సరిగ్గా అప్పిచ్చు లేదు ఎందుకంటే స్వయంగా సాధారణం Q & A తిరిగి ముందుకు భయంకరమైన బాగా, మేము ఉన్నాము అనగా, ఒక చిన్న కొత్త ఈ సంవత్సరం ఏదో ప్రయత్నించండి వెళ్లి మీరు మీ చేతిని పైకెత్తడం సౌకర్యవంతమైన లేదు లేదా మీరు బదులుగా ఈ వంటి గదిలో మీ చేయి పైకెత్తడం జరగదు, మేము టీచింగ్ సభ్యులు మరియు CA ల కొన్ని చూడాలని ఉపన్యాసం సమయంలో cs50.net/discuss కావలి. నేను పూర్తిగా ఎందుకంటే మీరు ఒక ప్రశ్న అయితే ఏదో లేదా మీరు గురించి అస్పష్టంగా కొన్ని గురించి ఆసక్తిగా విషయం, అక్కడ అది పోస్ట్ చెయ్యండి. ప్రసంగం యొక్క ఒక లేబుల్ తో ట్యాగ్ మరియు మేము మా వంతు కృషి చేస్తాము నేడు మరియు తరువాత వారం - we'll ఈ ప్రయత్నించండి - ఇది హాకీ గాని ఎలక్ట్రానిక్, ఆన్లైన్, లేదా అది మేము చేయాలి అనుకుని నిజంగా, మూకుమ్మడిగా టీచింగ్ సహచరులలో ఒక దానిని అది చిరునామా లేదా CA ల చేయి పైకెత్తడం మరియు అడుగుతాము మీ తరపున అజ్ఞాతంగా. కాబట్టి మేము ఈ ప్రయత్నించండి మరియు ఎంత చక్కగా ఈ చిత్రాలను చూడడానికి ఇస్తాము. కానీ, అన్ని ద్వారా, మీరు ఇష్టపడితే వంటి చేతులు పెంచడానికి కొనసాగుతుంది. గత మనం 10% లేదా పదో వంతు లో, కాదు అని తెలుస్తుంది మీరు చాలా సంవత్సరాల క్రితం నేర్పించేవారు వంటి నిజానికి, 0.1,. ఈ వంటి విలువ, నిజం ఉంది. కానీ ఆ కుడి, పూర్తిగా నిజం కాదు? మీరు ఉంటే, కంప్యూటర్లు వస్తే ఈ చెర కలిగి ఒక పరిమిత మెమొరీ మొత్తం, RAM, లేదా ఎక్కువ ప్రత్యేకంగా బిట్స్ బాగా, ఒక పరిమిత సంఖ్య మాత్రమే ఉంది విషయాలను మీరు సూచిస్తుంది. ఉదాహరణకు, మేము సంఖ్య సున్నా, మరియు మేము మీరు , ఎనిమిది బిట్స్ ను ఉపయోగించి, బైనరీ లో సూచిస్తాయి ఒక బిట్, మళ్ళీ, ఒక సున్నా లేదా ఒక ఒకటి, మేము వాటిని 00000000 గా సూచిస్తాయి. మరియు ఒక చిన్న అనవసరంగా వాచాల ఉంది. జస్ట్, వాస్తవ ప్రపంచంలో దశాంశ వ్యవస్థలో ఇష్టం సాధారణంగా, మీరు సంఖ్య 123 రాయడానికి మీరు అనుకుంటే, మేము మానవులు బహుశా, అయినప్పటికీ 00000123 వ్రాయవద్దు క్రియాశీలంగా, ఖచ్చితమైన సంఖ్య ఆ. మేము కేవలం మాట్లాడటానికి, ప్రముఖ సున్నాలు డ్రాప్. బైనరీ, మేము అదే చేయవచ్చు. బైనరీ మరియు సున్నా, సున్నా మరియు బైనరీ కేవలం సున్నా. మీరు ఒక బిట్ అవసరం. కానీ ప్రపంచంలో కొలత మళ్లీ అతి సాధారణంగా యూనిట్ కంప్యూటింగ్ యొక్క బైట్లు, ఎనిమిది బిట్స్ ఉంది. కేవలం ఒక బిట్, అందంగా పనికిరాని ఎందుకంటే. ఎనిమిది బిట్స్ భయంకరమైన ఉపయోగకరం కాదు, కాని ఇది ఇంకా కొలత ఒక యూనిట్ కంటే ఉపయోగకరమైన. ఎనిమిది బిట్స్ తో, మేము సాధారణంగా బైనరీ ప్రాతినిధ్యం చేస్తాము. కాబట్టి ఇక్కడ వంటి, అప్పుడు సంఖ్యలు సున్నా, ఒక, రెండు, మరియు నేట్ గత బుధవారం మా వీడియో లో చేసిన, మేము కొనసాగించవచ్చు ఎనిమిది వరకు ఏడు వరకు లెక్కింపు. మరియు తర్వాత మేము మరింత బిట్స్ ఉపయోగిస్తే, మేము అనంతం వరకు పరిగణించవచ్చు. మీరు మాత్రమే ఈ బిట్స్ ఒక పరిమిత సంఖ్య అయితే, వంటి ఉంది కూడా ఏ కంప్యూటర్ వ్యవస్థలో కేసు లేదా క్షిపణి వ్యవస్థ, బాగా, నిజంగా మీరు మాత్రమే కలిగి ఖచ్చితత్వము యొక్క పరిమిత మొత్తం. మీరు, 0.1 వంటి ప్రాతినిధ్యం సంఖ్య మీరు అనుకుంటే, కంప్యూటర్ ఎంచుకొని ఎంచుకోవడానికి కలిగి ఉంది. మరియు అది మాత్రమే అది సంఖ్యలు ఒక పరిమిత సంఖ్య కలిగి ఉంటే సూచిస్తాయి, దగ్గరగా మీకు 0.1 వచ్చారు, కానీ అది కాదు తప్పనిసరిగా మీకు కావలసిన సరిగ్గా విలువ ఇస్తాయి. మరియు ఇది, కేవలం కంప్యూటర్ల సవాళ్లు ఒకటి హుడ్ కింద, కృతజ్ఞతగా. మేము సెమిస్టర్ లో దూరంగా తరలించడానికి, ఈ దిగువ స్థాయి వివరాలు తక్కువ ఆసక్తికరమైన మారింది, కానీ ఖచ్చితంగా ఈ ఆలోచనల అప్లికేషన్ కొన్ని వాస్తవమైన ప్రపంచ ఉండవచ్చు శాఖల. ఒక బిట్ సరదాగా ఉంటుంది. ఎలా మీరు చాలా అద్భుతమైన సినిమా ఆఫీస్ స్పేస్ చూసిన? మీరు కలిగి ఉంటే, మీ అనధికారిక యొక్క వారం హోంవర్క్. కానీ ఆఫీస్ స్పేస్ లో, ఆ చిత్రం లో సభ్యులు పడుతుంది ఖచ్చితంగా ఈ ఆలోచన యొక్క ప్రయోజనం, కానీ వారు నిజానికి దొంగిలించారు మీరు చూపించే మరొక చిత్రం నుండి కూడా ముందు సంవత్సరాలు, చూసిన. నాలో మీరు ఈ ట్రైలర్ కొన్ని సెకన్ల నుంచి కల్పించడానికి అనుమతిస్తాయి ఈ అద్భుతమైన సినిమా మరియు ఈ చాలా ఉంది విద్యాపరంగా సంబంధిత. [చలన చిత్రం నాటకాలు] అసలైన నేను ప్రోత్సహించారు చేస్తున్నాను. నేను రిప్ ఒక వైరస్ ప్రోగ్రామ్ ఆ పెద్ద సమయాన్ని ఉంచండి. సరే, ఎలా పనిచేస్తుంది? ఆసక్తి ఉన్న ఒక బ్యాంకు లావాదేవీ ఉంది ప్రతి సమయం కంప్యూటెడ్, వేల ఒక రోజు ఉన్నాయి, కంప్యూటర్ ముగుస్తుంది ఒక శాతం ఈ భిన్నాలు తో. కానీ నేను అక్రమ ఏమీ వెళ్ళడం లేదు. అక్రమ? సమీర్, ఈ అమెరికా ఉంది. మీరు దేవుని ప్రమాణ ఉంటుంది. ఎవరూ దీని గురించి తెలుసు కాని మాకు, అన్ని కుడి? ఉంటే కుటుంబ సభ్యులు, ఏ స్నేహితులు, ఎవరూ. [వినబడని]. మనిషి, నేను గాని ఎవరికీ లేదు, ఆందోళన చెందకండి. [చలన చిత్రం ముగుస్తుంది] All right, కాబట్టి నేను చాలా కంటే ఈ చిత్రం మంచి దొరకలేదు వారు ఇక్కడ ప్రజలు, కానీ ఏ పరిస్థితిలో అయినా, వైరస్ సృష్టించడానికి ప్రయత్నిస్తున్నప్పుడు - మరియు చిత్రాలలో, ఎప్పుడైనా వారు, ఏదో ఒక వైరస్ కాల్ భావిస్తున్న నిజానికి సాధారణంగా వైరస్ కాదు. ఇది కేవలం ఎవరైనా ఏదో ఒకటి రాశారు ఒక కార్యక్రమం. మరియు ఈ సందర్భంలో, అబ్బాయిలు ఒక ప్రోగ్రామ్ను రాయడం ప్రయత్నిస్తున్న ఆ Innotech యొక్క అనే వారి సంస్థ యొక్క ప్రయోజనం పట్టింది కంప్యూటింగ్ వ్యవస్థలో చాలా వస్తే కంప్యూటర్లు కూడా అది చెయ్యవచ్చు అవసరం లేదు, డబ్బు వస్తుంది ఖచ్చితంగా డబ్బు సూచిస్తాయి. మీరు, మీ బ్యాంకు ఖాతాలో $ 0.10 ఉండవచ్చు కాబట్టి అయినప్పటికీ 0.10, అలాగే, కంప్యూటర్ నిజానికి మీరు అని అనిపిస్తోంది ఉండవచ్చు మీ బ్యాంకు ఖాతాలో ఈ అనేక సెంట్లు. కాబట్టి ఏమి ఈ కుర్రాళ్ళు చేయడానికి ఆశపడు - మరియు వారు ఆలోచన దొంగిలించి, అది ఎక్కడ, సూపర్మ్యాన్ III నుండి అవుతుంది రిచర్డ్ ప్రయర్ అదే - అవి చాలా ఉన్నాయి వెనుకంజలో అన్ని తీసుకోవాలని కోరుకొని ఆ రచన కార్యక్రమాలు సంఖ్యలు, చిన్న, చిన్న, చిన్న భిన్నాలు అన్ని నాణేలు, మరియు తద్వారా ఆ ఆఫ్ siphoning మానవులు కేవలం ఆలోచన, OH, అది కేవలం $ 0.10, కానీ ఆ యొక్క అన్ని వెనుకంజలో సంఖ్యలు చివరకు వరకు జోడించవచ్చు. ఒక అద్భుతమైన ఆలోచన కాబట్టి ఆ లో హాస్యాస్పదంగా ఎగసిపడింది ముఖ్యంగా చిత్రం. కానీ వాస్తవిక ప్రపంచంలో కూడా చాలా సంబంధించి ఉన్నాయి విషయాలను ఈ రకాల సూచనలు. మరియు కారణాలలో ఒకటి కంప్యూటర్ రంగంలో ప్రవేశిస్తాడు కు సైన్స్, మళ్ళీ, కాని దాని అన్వయం ఉంది ఇంజనీరింగ్ శాస్త్రాలు ఒంటరిగా, కానీ కు ఇతర రంగాలలో కూడా. కాబట్టి ఈ తప్పు వెళ్ళే ఏమి తక్కువ ఉల్లాసభరితమైన లాగా ఉంది, కానీ విషయానికి వస్తే ఇది నేను అనుకుంటున్నాను, కూడా చాలా కన్ను ప్రారంభ యొక్క ఎలా సర్వవ్యాపియైన టెక్నాలజీస్ వంటి అర్థం చేసుకోవడంలో కంప్యూటర్లు మరియు ప్రోగ్రామింగ్ లేదా ఈ రోజుల్లో సాఫ్ట్వేర్ రూపంలో. కాబట్టి ఈ తదుపరి క్లిప్, కేవలం ఆరు నిమిషాల ఉంది కొనసాగుతుంది మేము చివరిసారి వదిలి, కానీ మాకు కొద్దిగా చూడటానికి అనుమతిస్తుంది ఈ సమస్యల అటువంటి ఒక వద్ద మరింత లోతుగా. నాకు మేము వదిలి పేరు చేయడానికి ముందుకు దాటవేయి లెట్ ఇది ఇక్కడే ఉంది. మరియు మేము ఇక్కడ ఆరు నిమిషాలు, రెండు భాగంగా రెండు ఉన్నాయి. [ఆడించడానికి] ఆధునిక రాకెట్ సాంకేతిక చుట్టుముట్టాయి. 1991 లో, మొదటి గల్ఫ్ యుద్ధం ప్రారంభమైంది, పాట్రియాట్ క్షిపణి ఇదే రకమైన అనుభవించిన నంబర్ మార్పిడి సమస్య. ఫలితంగా, 20 మంది, 20 అమెరికా సైనికులు, హత్య భావించారు పాట్రియాట్, ఎప్పుడు, గురించి 100 ఇతరులు గాయపడ్డారు ఇన్కమింగ్ Scuds రక్షణగా, ఒక క్షిపణి దాడి విఫలమైంది. ఇరాక్ ఆక్రమణ చేసినప్పుడు కువైట్ మరియు అమెరికా ఒక ఎడారి ప్రారంభించింది ప్రారంభ 1991 లో తుఫాను, పాట్రియాట్ క్షిపణి బ్యాటరీలు ఉన్నాయి ఇరాక్ నుండి సౌదీ అరేబియా మరియు ఇజ్రాయెల్ రక్షణ తరలి వేగంగా ఎగిరిపోవు క్షిపణి దాడులు. పాట్రియాట్, ఒక సంయుక్త మధ్య శ్రేణి ఉపరితలం నుంచి గాలి వ్యవస్థ రేథియాన్ కంపెనీ తయారు చేసింది. పాట్రియాట్ ఇంటర్సెప్టర్ యొక్క పరిమాణం, అది గురించి సుమారు 20 అడుగుల మరియు దాని గురించి 2,000 పౌండ్ల బరువు ఉంటుంది. మరియు దాని గురించి ఒక వార్హెడ్ తీసుకువెళుతుంది - నేను సుమారు అని 150 పౌండ్లు. మరియు వార్హెడ్ కూడా కలిగి ఉండే అధిక పేలుడు ఉంది దాని చుట్టూ శకలాలు. వార్హెడ్ యొక్క కేసింగ్ buckshot ప్రవర్తిస్తాయి రూపొందించబడింది. క్షిపణులను CONTAINER నాలుగు తీసుకుని ఉంటాయి ఒక సెమీ ట్రైలర్ ద్వారా రవాణా. పాట్రియాట్ వ్యతిరేక క్షిపణి వ్యవస్థ కనీసం వెనక్కు ఇప్పుడు 20 సంవత్సరాల. ఇది నిజానికి ఒక వాయు రక్షణ క్షిపణి వంటి రూపొందించబడింది మొదటి గల్ఫ్ యుద్ధం లో, శత్రువు విమానాలు డౌన్ షూట్. ఆ యుద్ధం పాటు వచ్చినప్పుడు, ఆర్మీ షూట్ దాన్ని ఉపయోగించండి అనుకున్నారు Scuds, కాదు విమానాలు డౌన్. ఎయిర్ ఫోర్స్ ఇరాక్ చాలా సమస్య కాదు, కానీ సైన్యం Scuds ఆందోళన చెందాడు. కాబట్టి వారు పాట్రియాట్ అప్గ్రేడ్ ప్రయత్నించారు. మాక్ 5 వద్ద ప్రయాణిస్తున్న ఒక శత్రువు క్షిపణి వెళుతున్న అంతరాయం తగినంత సవాలే కు. కానీ పాట్రియాట్ సేవకు తరలించారు సమయంలో, సైన్యం వారి చేసిన ఒక ఇరాకీ మార్పు గురించి అవగాహన లేదు హిట్ దాదాపు అసాధ్యం Scuds. ఏమి జరిగింది అని Scuds ఉంది రాబోయే అస్థిర ఉన్నారు. వారు wobbling చేశారు. ఈ కారణం 600 పొందడానికి, ఇరాకీలు ఉంది ఒక 300 కిలోమీటర్ల పరిధిలో క్షిపణి యొక్క కిలోమీటర్ల అవ్ట్, పట్టింది ముందు వార్హెడ్ యొక్క బరువు అవుట్ మరియు వార్హెడ్ తేలికైన చేసింది. కాబట్టి ఇప్పుడు పాట్రియాట్ వేగంగా ఎగిరిపోవు వద్ద వచ్చి ప్రయత్నిస్తున్న, మరియు అనేక యొక్క సమయం, సమయం అధిక సంఖ్యలో అది చేస్తాను కేవలం వేగంగా ఎగిరిపోవు ద్వారా ఫ్లై. పాట్రియాట్ సిస్టమ్ ఆపరేటర్లు పాట్రియాట్ గుర్తించారు ఒకసారి దాని లక్ష్యం తప్పిన, వారు పాట్రియాట్ వార్హెడ్ విస్ఫోటనం. సాధ్యం మరణాలు అరికట్టేందుకు ఆ అనుమతి ఇచ్చారు భూమి తగ్గుతుందని. అంటే, ఆకాశంలో పెద్ద ఫైర్బాల్స్ వంటి, అనేక మంది ప్రజలు చూసిన ఉంది మరియు వేగంగా ఎగిరిపోవు వార్హెడ్లతో యొక్క అడ్డుకోవటాన్ని వంటి తప్పుగా. రాత్రి ఆకాశంలో, పేట్రియాట్స్ కనిపించిన, అయితే విజయవంతంగా నాశనం Scuds, దాహ్రాన్ వద్ద, లేదని స్పష్టం దాని పనితీరు గురించి తప్పు. , పాట్రియాట్ యొక్క రాడార్ వ్యవస్థ ఒక ట్రాక్ ఉన్నాయి కోల్పోయింది వేగంగా ఎగిరిపోవు ఇన్కమింగ్ మరియు వలన ప్రారంభం కాలేదు ఒక సాఫ్ట్వేర్ దోషం. ఇది మొదటి కనుగొన్న ఇజ్రాయిలీ అని ఇక సిస్టమ్, అధిక సమయం వ్యత్యాసం మారింది, న వ్యవస్థ యొక్క కంప్యూటర్ ఇమిడి గడియారం కారణంగా. రెండు వారాల దాహ్రాన్, లో విషాదం ముందు ఇజ్రాయిల్ రక్షణ శాఖ నివేదించింది సిస్టమ్ సమయం కోల్పోయింది. పరుగు గురించి ఎనిమిది గంటల తర్వాత, వారు గమనించాడు సిస్టమ్ పరిగెట్టడం తక్కువ ఖచ్చితమైన మారింది. రక్షణ శాఖ అన్ని చెబుతూ స్పందించారు పాట్రియాట్ బ్యాటరీలు వ్యవస్థలు వదిలి కు ఎక్కువ కాలం లో. వారు చాలా కాలం ఏమి చెప్పారో ఎప్పుడూ - 8 గంటలు, 10 గంటలు, 1,000 గంటల. ఎవరూ తెలుసు. పాట్రియాట్ బ్యాటరీ దాహ్రాన్ వద్ద బర్రక్స్ లో బ్రిటీష్వారి మరియు దాని దోషపూరిత అంతర్గత గడియారం మీద 100 గంటల న జరిగింది ఫిబ్రవరి రాత్రి 25. ఇది రెండవ పదవ సుమారు ఒక ఖచ్చితమైన సమయం ట్రాక్. ఇప్పుడు రెండవ పదవ ఒక ఆసక్తికరమైన సంఖ్య ఎందుకంటే అది అంటే, సరిగ్గా, బైనరీ వ్యక్తం సాధ్యం కాదు అది ఏ లో సరిగ్గా వ్యక్తం సాధ్యం కాదు ఆధునిక డిజిటల్ కంప్యూటర్. విశ్వసించుటకు కష్టం. కానీ ఒక ఉదాహరణగా ఈ ఉపయోగించవచ్చు. యొక్క ప్రథమ మూడవ తీసుకుందాం. ఒక మూడవ ఖచ్చితంగా దశాంశ వ్యక్తం సాధ్యం కాదు. ఒక మూడవ 0,333 అనంతం కోసం జరుగుతోంది. దశాంశ ఖచ్చితమైన ఖచ్చితత్వంతో అలా మార్గం ఉంది. ఖచ్చితంగా జరిగిన సమస్య అదే రకంగా పాట్రియాట్. ఇక సిస్టమ్ దారుణంగా సమయంలో లోపం మారింది, నడిచింది. ఆపరేషన్ 100 గంటల తర్వాత, సమయంలో లోపం మాత్రమే రెండవ గురించి మూడవ. కానీ మాక్ 5 వద్ద ప్రయాణిస్తున్న ఒక క్షిపణి లక్ష్యంగా పరంగా, దాని పై 600 మీటర్ల ట్రాకింగ్ ఎర్రర్ ఫలితంగా. ఇది దాహ్రాన్ వద్ద సైనికులు తీవ్రమైన లోపం ఉంటుంది. ఏమి జరిగింది ఒక వేగంగా ఎగిరిపోవు ప్రయోగ ఉంది ముందస్తు హెచ్చరిక ద్వారా కనుగొనబడింది ఉపగ్రహాలు మరియు వారు వేగంగా ఎగిరిపోవు వారి వస్తున్న అని నాకు తెలుసు సాధారణ దిశలో. అది రాబోయే అక్కడ వారు తెలియదు. ఇది పాట్రియాట్ యొక్క రాడార్ భాగం వరకు ఇప్పుడు ట్రాక్ గుర్తించడం మరియు ఉంచడానికి వ్యవస్థ, దాహ్రాన్ డిఫెండింగ్, ఇన్కమింగ్ శత్రువు క్షిపణి. రాడార్ చాలా స్మార్ట్ ఉంది. మీరు నిజంగా అప్పుడు వేగంగా ఎగిరిపోవు స్థానం ట్రాక్ మరియు ఉంటుంది అది బహుశా తదుపరి సమయంలో ఉంటుంది అంచనా రాడార్ ఒక పల్స్ పంపింది. ఆ శ్రేణి గేట్ అని పిలిచేవారు. అప్పుడు, ఒకసారి పాట్రియాట్ తగిన సమయం వెళ్ళడానికి దాటింది నిర్ణయిస్తుంది వెనుకకు మరియు ఈ కనిపెట్టిన తరువాత స్థానాన్ని తనిఖీ వస్తువు, అది తిరిగి వెళతాడు. కాబట్టి అది తిరిగి తప్పు స్థానంలో వెళ్లినప్పుడు, అది ఏ చూస్తాడు వస్తువు, ఏ వస్తువు ఉంది నిర్ణయిస్తాడు. ఇది ఒక తప్పుడు గుర్తింపును మరియు ట్రాక్ పడిపోతుంది. ఇన్కమింగ్ వేగంగా ఎగిరిపోవు రాడార్ తెర నుంచి అదృశ్యమయ్యారు. మరియు సెకన్ల తరువాత, అది బ్యారక్స్ లోకి స్లామ్డ్. వేగంగా ఎగిరిపోవు 28 హత్య మరియు సమయంలో తొలగించారు గత ఒకటి మొదటి గల్ఫ్ యుద్ధం. దురదృష్టవశాత్తు, నవీకరించబడింది సాఫ్ట్వేర్ దాహ్రాన్ వచ్చి తరువాతి రోజు. మరియు సాఫ్ట్వేర్ దోషం ఒక అధ్యాయం ముగింపు, స్థిరంగా జరిగింది పాట్రియాట్ క్షిపణి యొక్క సమస్యాత్మక చరిత్ర. PATRIOT నిజానికి "ఫేజ్డ్ ఎరే ట్రాకింగ్ ఒక అక్రానిమ్ టార్గెట్ ఇంటర్సెప్ట్. " చెప్పుకోదగ్గ యొక్క హక్కు, కాబట్టి ఎక్కువ భాదాకరమైన ఫలితం ఈ ప్రపంచంలో అర్థం చేసుకుంటున్నారు. మరియు takeaway, నిజంగా, సినిమా నుండి అని SOLUTION మీ క్షిపణి రక్షణ వ్యవస్థ పునఃప్రారంభించిన జరిగినది ఒక సమయంలో ప్రతి ఒకసారి. మరియు మరలా, ఈ కోర్సు యొక్క లక్ష్యాలలో ఒకటి, కచ్చితంగా ఈ అనువర్తనాలను కంటే మరింత వినయపూర్వకమైన స్థాయిలో, ఉంది మీరు గురించి వెళ్ళండి ఎలా నిజంగా ఓపెన్ అందరి కళ్ళు తయారీ యంత్రాలు ఏమి మీరు వాటిని చేయాలనుకుంటున్నారా మరియు ఎలా మీరు వెళ్ళండి మార్గం వెంట దీన్ని చేసేటప్పుడు గురించి, ఆ సరిగ్గా చేయడం అలాగే, సొంపుగా, మొదలగునవి. కాబట్టి నేడు, ఈ యొక్క మరింత కొద్దిగా ప్రవేశిస్తాడు లెట్స్, కానీ కాబట్టి మేము ముఖ్యంగా తక్కువ కోసం, చాలా వేగంగా వెళ్ళి లేదు మేము యొక్క ఆసక్తి నిలుపుకోగలవు సౌకర్యవంతమైన, కానీ కాబట్టి ఆ మరింత సౌకర్యవంతమైన, ఒక బిట్ తో ప్రారంభం కేవలం త్వరగా లెట్స్ ఈ ఆలోచనలు కొన్ని పునశ్చరణ యొక్క. మీరు ఉంటే మళ్ళీ, వ్యక్తి లేదా ఆన్లైన్ రెండు, దూరంగా అడగండి ప్రశ్నలు కాబట్టి మేము ఒకే పేజీలో అందరూ ఉంచుకోవచ్చు. కాబట్టి CS50 ఉపకరణం, తిరిగి శీఘ్ర దశ, ఉంది మీ సొంత మాటలలో లో ఏం? ఆ పదాలను ఇంకా ఉండవచ్చు ఏ ఆలోచన ఉంటే అది సరే. [వినబడని] సరే, ఒక యూనివర్సల్ ఇంటర్ఫేస్ - మేము అన్ని పంచుకునే. ఖచ్చితంగా. కాబట్టి మేము, ఉదాహరణకు, కొన్ని వెళ్ళడానికి మీరు తెలియజేయగలరా వెబ్ సైట్, Mac OS కోసం ఈ సాఫ్ట్వేర్ డౌన్లోడ్. లో కాన్ఫిగర్, Windows కోసం ఈ సాఫ్ట్వేర్ డౌన్లోడ్ ఈ విధంగా ఆ. అయితే వాస్తవికత మేము అసంఖ్యాకంగా సాంకేతిక ఆకస్మికంగా తర్వాత సమస్యలు మద్దతు. మరియు కూడా ఈ రోజుల్లో, సర్వర్ వైపు అంతేగానీ ఎక్కువ, కంప్యూటింగ్ ప్రపంచంలో, ముఖ్యంగా ఇది వస్తుంది వెబ్ అభివృద్ధి మరియు వెబ్ ఆధారిత అప్లికేషన్, వాస్తవానికి తరచూ Unix లేదా Linux కంప్యూటర్ల మీద, వంటి వ్యతిరేకంగా Macs లేదా Windows PC లు. కాబట్టి చేయబడనపుడు మధ్య, అప్పుడు, ఈ విషయం ఉపయోగించి యొక్క అని CS50 ఉపకరణం మేము ఒకే వాతావరణంలో ఉంటుంది ఉంది. కాబట్టి ప్రతి ఒక్కరూ ఒకే పేజీలో ఏ హార్డ్వేర్ మీరు ఉన్నా యొక్క తో క్యాంపస్ వచ్చింది కానీ ఖచ్చితంగా లో dabbling ఉంటుంది మీరు వైపు ఉపయోగించి వస్తుంది అదే పర్యావరణం సెమిస్టర్ చివరి అదే వెబ్ అభివృద్ధి, అలాగే లో వాటి వాస్తవ ప్రపంచ అనువర్తనాల కోసం భవిష్యత్తు. ఎక్కువ concretely, CS50 ఉపకరణం యొక్క ఉచిత భాగం మీరు మరొక ఆపరేటింగ్ సిస్టమ్ రన్ అనుమతించే సాఫ్ట్వేర్, Linux, ఈ సందర్భంలో, మీ స్వంత కంప్యూటర్ లో, ఒక విండో లో. ఇప్పుడు మీరు ఉపకరణం డౌన్లోడ్ కాదు. మీరు ఉపకరణం ప్లే లేదా అమలు చేయడానికి ఇది ఒక కార్యక్రమంలో అవసరం. మరియు సాఫ్ట్వేర్ యొక్క భాగాన్ని సాధారణంగా అంటారు హైపర్విజర్. Hypervisors, VMware వంటి ఉత్పత్తులను రూపంలో వర్చువల్ బాక్స్, ఇతనిని. సంస్థలు అన్ని రకాల సాఫ్ట్ వేర్, ఉచిత రెండు తయారు మరియు ఇలానే, వాణిజ్య. మీరు సమస్య లో చూస్తారు ఏమి సెట్ 1 ఎలా సూచనల ఉంటాయి ఉచిత సాఫ్ట్వేర్ పొందటానికి ఇది తో CS50 ఉపకరణం అమలు. మరియు ఒకసారి మీరు, మీరు, మీ Mac లేదా PC లో ఒక విండో లో, ఉంటుంది లేదు చాలా ఈ వలె కనిపించే ఒక డెస్క్టాప్ పర్యావరణం, పేరు అది ఒక Start మెనూ వంటి విషయం ఉంది దిగువ ఎడమ చేతి మూలలో. ఇది ఎడమ లో, ఒక Home ఫోల్డర్, లేదా Home డైరెక్టరీ ఉంది అక్కడ, ఒక చెత్త, మరియు మొదలైనవి. కనుక మేము వెళ్ళి వంటి అవసరమైన వివరాలు వేరుగా బాధించటం చేస్తాము. కానీ ఇప్పుడు C. ప్రవేశిస్తాడు కు ప్రారంభిద్దాం కాబట్టి సి ఆత్మ లో మాదిరిగా, ఈ ప్రోగ్రామింగ్ భాష స్క్రాచ్, కానీ చాలా తక్కువ గ్రాఫికల్, కానీ చిత్రంగా, చాలా మీరు దానిని అవగాహన పొందడానికి ఒకసారి మరింత శక్తివంతమైన. కాబట్టి సి లో, మేము ఇది సోర్స్ కోడ్ రాయడం ద్వారా ప్రోగ్రాములను వ్రాయటానికి సాక్స్ పోలి ఈ ఆంగ్ల సింటాక్స్ను, మేము మిమ్మల్ని అనుమతించే చివరిసారి అని ప్రదర్శన అయితే, చాలా ఖచ్చితంగా మీరే వ్యక్తం arcanely, కంప్యూటర్కు. కాబట్టి మీరు నిజంగా ఉత్పత్తి సాఫ్ట్వేర్ ఏ విధమైన అవసరం మా ఆధారంగా, C వంటి భాషలో ప్రోగ్రాములను వ్రాయటానికి ఇది సోమవారం సంభాషణ? [వినబడని] OK, మీరు ఒక టెక్స్ట్ ఎడిటర్ అవసరం. మీరు ఏ ప్రత్యేక సాఫ్ట్వేర్ అవసరం లేదు కేవలంగా ప్రోగ్రాములను వ్రాయటానికి ఇది. మీరు Windows న నోట్ప్యాడ్లో వంటి టెక్స్ట్ ఎడిటర్, అవసరం Mac లో TextEdit, లేదా ప్రపంచంలో gedit అని ఏదో, మేము ఇక్కడ ఉపయోగించండి ఇది Linux,. మరియు ఆ ప్రోగ్రాములను వ్రాయటానికి ఇది, ఇది. కానీ రచన సమీకరణం యొక్క ఏకైక సగం ఉంది. అప్పుడు మీరు వాటిని అమలు చేయాలి. కానీ ప్రోగ్రామ్లను అమలు చేయడానికి - మీరు సోర్స్ కోడ్ అమలు కాదు. బదులుగా మీరు మొదటి దానికి ఏమి ఉంటుంది? అవును. డేవిడ్ J. మలన్: మీరు అవసరం ఇది కంపైల్. మరియు ఎవరో, సోర్స్ కోడ్ కంపైల్ అర్థం - [వినబడని] డేవిడ్ J. మలన్: ఖచ్చితంగా. సున్నాలు మరియు వాటిని దానిని అనువదిస్తోంది. మాకు అన్ని ఈ రోజుల్లో, CPU లు కలిగి కంప్యూటర్లు, ఎందుకంటే దాదాపు ఇవన్నీ Intel అనే సంస్థ ద్వారా, మరియు ఇంటెల్ ఇన్సైడ్, మీ యొక్క ఈ మెదడు లోపల ఉంది అంటే CPU అని పిలిచే కంప్యూటర్,. మరియు ఆ మెదడు చేసే అంశాల్లో ఒకటిగా ఇది తెలుసు, ఉంది సున్నాలు మరియు వాటిని క్రమాలు అర్థం ఎలా. ఇది బిట్స్ నమూనా అదనంగా సూచిస్తుంది ఏమి తెలుసు ఏమి నమూనా, వ్యవకలనాల సూచిస్తుంది ఏమి నమూనా యొక్క బిట్స్ ప్రింటింగ్, మరియు వినిపించే ధ్వని సృష్టించడం సూచిస్తాయి. కాబట్టి చిన్న లో, ఆపరేటింగ్ సిస్టమ్ కలిసి CPU, ఇది CPU పై నడుస్తుంది సాఫ్ట్వేర్ భాగం మాట్లాడటానికి. కలిసి, ఆ రెండు ముక్కలు ఆ ప్రోగ్రామ్లను అమలు ఎలా మనం మానవులు వ్రాయండి. నేను ఇక్కడ CS50 ఉపకరణం వెళ్ళాలని అలా అయితే, నేను తెరిచి అవసరం ఒక టెక్స్ట్ ఎడిటర్ అప్ మరియు నేను ఈ యాక్సెస్ చేయవచ్చు రెండు మార్గాలు లో. నేను గాని మెనూ వెళ్ళవచ్చు, ప్రోగ్రామింగ్, మరియు నేను ఎంచుకోవచ్చు - వద్దు, లేదు మెను ఆ. నేను యాక్సెసరీస్ కు వెళ్ళి / తెరిచేందుకు ఇక్కడ gedit చేయవచ్చు నా చిన్న టెక్స్ట్ ఎడిటర్. లేదా మరింత సులువుగా, నేను అడుగున ఈ చిన్న ఐకాన్ క్లిక్ చేయవచ్చు ఎడమ చేతి మూలలో. ఇప్పుడు నేను ఇక్కడ ఈ పర్యావరణం పొందండి. కేవలం ఇది ఒక సాధారణ టెక్స్ట్ ఎడిటర్ యొక్క అందమైన జ్ఞాపకం ఉంది ఒకటి లేదా రెండు తేడాలు. టాప్ లో, కర్సర్ బ్లింక్ ఇప్పుడు ఉన్న, ఈ పేరు ఉంది నా కోడ్ వ్రాయటం మొదలు పెట్టవచ్చు. అడుగున ఈ విషయం టెర్మినల్ విండో అంటారు. నేను ఈ లో ఏం విషయాలను రకాల చేయవచ్చు టెర్మినల్ విండో అని పిలుస్తారు? [వినబడని] సరే, నేను ఆదేశాలను చేస్తాము. మరియు మేము సోమవారం నడిచింది ఆదేశాల కొన్ని చిన్న ఉన్నాయి జాబితా కోసం గుప్తమైన వద్ద మొదటి, కానీ ls, మార్పు డైరెక్టరీ కోసం CD, RM, తొలగించడం కోసం. కాబట్టి మీ నావిగేట్ యొక్క ఒక పాత పాఠశాల మార్గం విధమైన యొక్క కంప్యూటర్, మీ కీబోర్డు మరియు పాఠ్య ఆదేశాలను ఉపయోగించి, మరియు, సాధారణంగా, ఒక మౌస్ ఉపయోగించి. కానీ మేము దీర్ఘ ముందు, చూస్తారు ఇది నిజానికి మాకు ఒక ఇస్తుంది కొంచం శక్తి మరియు మరికొంత PRECISION ఇది తో మేమే వ్యక్తం. మరియు ఇక్కడ ఎడమ పైగా, మేము, చూడండి చూడాలని మేము రచన సాఫ్ట్వేర్, ఒక చిన్న సారాంశాన్ని ప్రారంభం వంటి మేము ఎడమ ఎగువన రాసిన చేసిన కార్యక్రమం. కానీ మేము దీర్ఘ ముందు ఆ మళ్ళీ చూస్తారు. ఇక్కడ చాలా సులభం ఏదో ఒకటి చూద్దాం. నాకు మొదటి ముందుకు వెళ్లి, ఫైల్ను సేవ్ వెళ్ళనిస్తున్నారని, మరియు నేను ఉన్నాను ఎడమ వద్ద మీద, ఇక్కడ jharvard క్లిక్ కు వెళ్ళి మరియు jharvard, మళ్ళీ, నా హోమ్ ఫోల్డర్ కోసం పేరును నా వ్యక్తిగత ఫైళ్ళను, నాకు, ప్రస్తుతం జాన్ హార్వర్డ్, మీరు అన్ని వంటి త్వరలో ఈ వాతావరణంలో జాన్ హార్వర్డ్ ఉంటుంది. అలా ముందుకు, నా పత్రాలు ఈ Home డైరెక్టరీ వచ్చింది మరియు యొక్క సైన్ ఇప్పుడు, సేవ్ చేయదలిచిన, ఈ ఫైలు నేను దాన్ని hello.c కాల్ వెళుతున్న. అప్పుడు నేను వెళుతున్న ముందుకు మరియు సేవ్, మరియు ఇప్పుడు నేను ఇక్కడ కలిగి ఉంది టాబ్ క్లిక్ చాలా సంపాదకుడు మరొక రకం వలె hello.c అని. కాబట్టి ఇప్పుడు నాకు ముందుకు వెళ్లి ఒక కార్యక్రమం రాయడం ప్రారంభిద్దాం. Int ప్రధాన (తప్ప). మరియు తర్వాత నేను చివరిసారిగా చేశాడు, printf, ముద్రణ ఫార్మాట్ కోసం, ("హలో, ప్రపంచం!" );. పూర్తి. కానీ నేను వివరాలు రెండు లేదు నేను. నేను నిజంగా కోసం అవసరమైన ఈ ప్రోగ్రామ్ నుంచి లేదు నిజానికి తయారు చేసుకుని? అవును. [వినబడని]? డేవిడ్ J. మలన్: అవును, నేను ప్రామాణిక ఉన్నాయి అవసరం I / O లైబ్రరీ. ఈ అవసరాలను ప్రధాన ఎగువ, తద్వారా నేను వెళుతున్న కాబట్టి అక్కడ అది కొన్ని కల్పించడానికి. నేను # ఉన్నాయి చేయ బోతున్నాను. మరియు అక్కడ కోణ బ్రాకెట్లలో గమనిస్తారు. మరియు జనాంతికంగా, gedit ఉంటే, ఒక చిన్న యూజర్ ఫ్రెండ్లీ ఉంది అది సహాయం ప్రయత్నిస్తుంది, కొన్నిసార్లు కొద్దిగా తికమక మీ కళ్ళు ఏది ఏమి లైన్లు గమనిస్తారు. నా కర్సర్ ఈ కోణ హక్కు తదుపరి నిజాన్ని బ్రాకెట్, ఇతర కోణ హైలైట్ ఎలా గమనిస్తారు బ్రాకెట్ ప్లస్ ఈ ఒక. మరియు కేవలం నిజానికి నా దృష్టిని ఆకర్షించింది అని నేను సౌష్టవాన్ని కలిగి. మరియు ప్రోగ్రామింగ్ లో సౌష్టవం సాధారణంగా ఒక మంచి విషయమే. నేను ముగింపు నా కర్సరును మరల్చటానికి అదే విధంగా, గమనించి ఎలా కర్లీ జంట కలుపులు లైన్ అప్ అవును, నేను ఒక బహిరంగ ఒకటి, అని మరియు ఒక సంవృత ఒక, మాట్లాడటానికి. All right, మరియు నేను ఒక విషయం ఇతర చేయవచ్చు. ఇది చెప్పడానికి, ఖచ్చితంగా అవసరమైన, కానీ మంచి పద్ధతి కాదు 0 తిరిగి. మరియు తిరిగి 0 ఇక్కడ మాకు ఏమి చేస్తుంది? లేదా ఏ సూచిస్తుంది? [వినబడని] డేవిడ్ J. మలన్: కానీ ఏమీ తప్పు. చాలా ఒక తప్పు వెళ్ళడానికి మరియు స్పష్టముగా కష్టం ఈ చిన్న ప్రోగ్రామ్. నేను అన్ని బాగా స్పష్టమైన సూపర్ ఉండటం నేను. నేను, మానవ, నేను ఈ అమలు చేసేటప్పుడు, బహుశా ఎప్పటికీ ఆ 0 చూడండి. సాధారణంగా, ఈ సంఖ్యలు ప్రధాన నుండి తిరిగి ఉంటాయి మాత్రమే మానవులకు వారి తలలను వెనుక ఉన్నప్పుడు ఏదో తప్పు జరిగితే. మరియు మీరు, ఈ విధంగా సిస్టమ్ లోపం అప్ ఒక చిన్న పాప్ పొందండి రెండు, మూడు, లేదా ఏ సంఖ్య అని వాస్తవానికి తిరిగి. ఈ తో ఇంకా తప్పు ఏదైనా కాబట్టి? [వినబడని] డేవిడ్ J. మలన్: సో ఈ చాలా క్రియాత్మక తప్పు కాదు కానీ ఒక సౌందర్య ఒక. నేను బహుశా వద్ద ఒక NEWLINE పాత్ర ఉంచారు ఉండాలి తద్వారా మేము నిజంగా కర్సర్ను ఈ స్ట్రింగ్ ముగింపు తరలించడానికి తదుపరి లైన్, మరియు ప్రోగ్రామ్ కొంచెం prettier కనిపిస్తోంది. కాబట్టి ఇప్పుడు నా టెర్మినల్ విండో కోల్పోండి తిరిగి సైన్ మరియు జూమ్ మరియు ఇక్కడ ఈ విషయం, అది సత్వర అని. ఇది కేవలం, నేను చేసిన jharvard @ ఉపకరణం, పేరు నాకు గుర్తు ఉంది ఉపకరణం నేను ఉన్నాను కంప్యూటర్ యొక్క పేరు. కుండలీకరణాల్లో ఈ tilde, squiggle గుర్తు, ఇది ఏ సూచిస్తుంది? ప్రేక్షకులు: Home డైరెక్టరీ. డేవిడ్ J. మలన్: Home డైరెక్టరీ. మీరు ఉన్నారు చెప్పడం కోసం ఒక సంక్షిప్త లిపి సంకేతం, అందుచే మీ ఫైళ్ళను అన్ని సిద్ధంగా వెళ్లే మీ వ్యక్తిగత ఫోల్డర్. కాబట్టి ఇప్పుడు, ఇక్కడ, నేను జాబితా కోసం ls టైప్ చెయ్యవచ్చు. మరియు ఆ సమయంలో ఇక్కడ చూడండి అయితే hello.c ఉంది. నేను ఈ రాశాడు ఎందుకంటే ఆ బావుంటుంది. నాలో ముందుకు వెళ్లి హలో తయారు మనం. నేను hello.c తయారు టైప్ లేదు గమనిస్తారు. బదులుగా, నేను మాత్రమే హలో, ఫైలు యొక్క బేస్ పేరు టైప్ చేస్తున్నానని. సోమవారం చూసిన మరియు, తయారు, కేవలం నేను కావలసిన ప్రతిపాదించే కనిపిస్తుంది . సి ఫైలు. కాబట్టి ఇప్పుడు నేను హలో తయారు టైప్ చేసిన. ఇప్పుడు నేను ఈ అతి పొడవైన ఆదేశం చూడండి మరియు కొనసాగుతుంది మళ్ళీ, మళ్ళీ ఈ చూడటం. కానీ స్పష్టమైన, గణగణమని ద్వని చేయు, కేవలం కనిపించింది పదం, అని నిజమైన సంగ్రాహకుడి. చేయి కేవలం బిల్డ్ ప్రయోజనం ఉంది. అది, నాకు రక్షిస్తాడు మరింత యూజర్ ఫ్రెండ్లీ కార్యక్రమం లాంగ్ లాంగ్ చాలా శ్రమతో అవుట్ టైప్ చేయడానికి నుండి, అమలు ఆ విధంగా ఆదేశాలను. కాబట్టి మీరు మానవీయంగా గణగణమని ద్వని చేయు అమలు కాలేదు. ఆ మానవీయంగా అన్ని పంపుకోవచ్చు. జస్ట్ చాలా శ్రమతో పొందుతాడు. మరియు చేస్తుంది ఒక మా జీవితాలను సులభతరం ప్రోగ్రామ్ మరియు మాకు మరింత క్లిష్టమైన ఆదేశాలను నడుస్తుంది. అన్ని కుడి కాబట్టి ఇప్పుడు ఏమి ఫైలు నేను ఉండాలి నా ప్రస్తుత డైరెక్టరీనందు? కేవలం hello.c, కానీ హలో లేదు. నేను హలో అమలు మీరు అనుకుంటే, నేను డాట్ స్లాష్ పేర్కొన్నట్లు గుర్తు డాట్ అంటే ప్రస్తుత ఫోల్డర్, మీరు ఎక్కడ వెళ్ళాలని పేరు , తరువాత, ఇప్పుడు నిజంగానే హలో అని ప్రోగ్రామ్ రన్, మరియు నేను హలో వరల్డ్ ఉన్నాయి. All right, వర్క్ఫ్లో ఏ ప్రశ్నలు లేదా వాక్యనిర్మాణం మేము ఏమి? All right, కాబట్టి యొక్క మళ్ళీ ఒక గీత అప్ విషయాలు తీసుకుందాం. కాబట్టి ఇది ఒక కార్యక్రమం రాయడానికి అంతగా ఆ మాత్రమే ఎప్పుడూ హలో, ప్రపంచం చెప్పారు. కాబట్టి మేము చెప్పడానికి, హలో, డేవిడ్ సోమవారం, మార్చండి. ఇది కొంచెం వ్యక్తిగత, కానీ కేవలం హార్డ్ వంటి కోడ్ మొదటి వెర్షన్. కాబట్టి అన్ని అవసరమైన లేదు. కానీ పాటు ఖచ్చితంగా, C లో, ఫంక్షన్స్ ఉంది ముద్రణ, మీరు యూజర్ ఇన్ పుట్ పొందండి అనుమతించే పనిచేస్తుంది. మరియు మేము ఈ విధంగా చేసాడు, ఇతర రోజు, ఈ కింది విధంగా ఉంది. నిజానికి ఏదో ముద్రించాలా ముందు, నేను మొదటి వచ్చింది వినియోగదారు నుండి ఏదో. కాబట్టి నాకు మళ్ళీ మనం. S ఒక కోసం ఇక్కడ కేవలం ఒక ఏకపక్ష పేరు, ఇక్కడ స్ట్రింగ్ s, స్ట్రింగ్, GetString సమానం. సో వాట్ GetString జరిగినది? ఇది స్పష్టంగా దాని పేరు ఆధారంగా, ఒక స్ట్రింగ్ పొందుతాడు. కానీ సాంకేతికంగా, ఏమిటి? ఇది ఒక ఫంక్షన్ ఉంది. కనుక ఇది పర్ సే సి వస్తాయి లేదు ఒక చర్యను ఉంది. CS50 సిబ్బంది ఈ రాశాడు. కాబట్టి ఈ ఉపయోగించడానికి, మీరు, stdio.h ఉండరాదు మీరు ఏ ఉన్నాయి అవసరం? అవును. ఫైల్ ఇది cs50.h, కాబట్టి మేము కొన్ని సంవత్సరాల క్రితం రాశాడు. మేము కలిసి మీరు ఉపకరణంపై అది ఇన్స్టాల్ ప్రామాణిక ఫైళ్లు అన్ని. కాబట్టి తరగతి యొక్క ఈ మొదటి కొన్ని వారాల్లో, ఉపయోగిస్తాము ఇది చాలా ప్రాథమిక చేయడం విధానాన్ని సులభం చేసేందుకు గెట్టింగ్ థింగ్స్ వినియోగదారు ఇన్పుట్ను ఇష్టం. ఎందుకంటే ఒక మేము కొన్ని వారాలలో చూస్తారు వంటి, గెటింగ్ వినియోగదారు ఇన్పుట్ను సి వంటి భాష, వాస్తవానికి ఆశ్చర్యకరంగా కాంప్లెక్స్ మీరు ఎలా, సాధారణంగా ముందుగానే తెలియదు కనుక చాలా అంశాలు యూజర్ సైన్ టైప్ అన్నారు మరియు మీరు ఆశించిన ఎంత డేటా తెలియదు, మీరు లేదు కేటాయించుటకు ఎంత మెమరీ తెలుసు. మరియు మీరు నిజంగానే ప్రయత్నిస్తున్న ఎవరు పటిష్టమయిన యూజర్ ఉంటే మీ వ్యవస్థ హాక్ చేయాలనే, అలాగే, మీ కంప్యూటర్ క్రాష్ సాధారణంగా దాడి మొదటి పద్ధతి నేను లాగా ఉంది సోమవారం, యాదృచ్ఛిక పాత్రలు మొత్తం పొడవు క్రమంలో టైప్ Enter ని, మరియు విచ్ఛిన్నం చూడటానికి. సాధారణంగా, ఒక ప్రోగ్రామ్ బ్రేక్, ఆ వద్ద సూచనలను ఎందుకంటే ఒక భద్రతా లోపం, శక్తివంతంగా. ఇది కచ్చితంగా ఒక చేసిన, మీరు వద్ద ప్రోగ్రామర్ సూచనలను తప్పు, కాని ప్రమాదకరమైన, మీరు చేసిన వాటిలో ఒక భద్రతా సంబంధిత తప్పు, మరియు సాధారణంగా మేము చూస్తారు ఆ యంత్రాలు ఈ రోజు రాజీ ఎలా అని, రెండు వద్ద వెబ్ మరియు కార్యక్రమాలు ప్రపంచంలో ఈ వంటి కమాండ్ లైన్. అన్ని కుడి. కాబట్టి స్ట్రింగ్ s GetString సమానం. ఎక్కువ concretely ఇప్పుడు, లైన్ 6 ఇక్కడ ఏమి చేస్తుంది? కాబట్టి కుడివైపు ఫంక్షన్, స్ట్రింగ్ గెట్స్ ఎన్ని వాదనలు పడుతుంది? సరే. కాబట్టి ఎవరూ. ఒక చిన్న తెలివి తనిఖీ. ఒక వాదన, మళ్ళీ, కేవలం మార్చడానికి ఒక ఫంక్షన్ ఒక ఇన్పుట్ ఉంది కొన్ని విధంగా దాని డిఫాల్ట్ ప్రవర్తన. కానీ ఈ సందర్భంలో, నేను మార్పు చేయకూడదని GetString యొక్క ప్రవర్తన. నేను ఒక స్ట్రింగ్ కావాలని ఆయన కోరారు. నేను కుండలీకరణాల్లో ఏమీ ఉంచారు, మరియు అప్పుడు నేను ఒక పుట్ సెమికోలన్ కోడ్ వరుసలో చివరి demarking. ఇప్పుడు, ప్రతి SE, సమాన కాదు సైన్ సమానం. ఇది అప్పగించిన అర్థం, ఇది గెట్స్ ఏ ఉంచారు అర్థం ఎడమవైపు ఉండే వస్తువు యొక్క కుడి లోపల outputted. కాబట్టి ఎడమవైపు, మేము ప్రకటించింది అని చెప్పారు ఒక స్ట్రింగ్ s అనే. మరియు ముఖ్యంగా మేము లోపలి మెమరీ కేటాయించింది చేసిన మేము ఒక క్రమంగా ప్రాతినిధ్యం బిట్స్ ఉంచుతాము ఇది అక్షరాలు. అయితే ఈ రోజు కోసం, మేము కేటాయించింది చేశారు లేదా ఒక స్ట్రింగ్ ప్రకటించింది. అన్ని కుడి. కాబట్టి ఇప్పుడు నేను ఇది చేసిన తర్వాత, నేను విలువ లో ప్లగ్ మీరు s, కాని డేవిడ్ యొక్క విలువ. కాబట్టి ఈ ఎందుకు తప్పు? కాబట్టి ఇది అక్షరాలా హార్డ్ కోడెడ్ s ఉంది. నేను ఏమి కాదు "హలో, s," అని ఉంది. నేను ఈ చేయవచ్చు. శాతం సైన్ ఒక ప్లేస్హోల్డర్, కానీ ఇప్పుడు నేను అవసరం రెండవ వాదన ప్రింట్ లోకి వెళతాయి. విధులకు వాదనల వేరు గుర్తుచేసుకున్నారు కామాలు, ఇక్కడ తదుపరి కామా నేను ఈ లేఖ s తరువాత. మరియు ఈ సందర్భంలో ఇప్పుడు, s, printf వేరియబుల్, మరియు ఆ రెండు ఇన్పుట్లను అందుకున్న తర్వాత - ఎడమ వైపున మరియు వేరియబుల్ పేరు s న స్ట్రింగ్ - మా మాజీ లోకి తరువాతి ప్లగ్ మరియు కనిపిస్తుంది కేవలం కలిగిన ఒక nice అందమైన స్ట్రింగ్ను ప్రింట్ అది మేము సైన్ టైప్ చేసి ఉండే వస్తువు కాబట్టి యొక్క ఈ ప్రయత్నించండి తెలియజేయండి. ముందుకు వెళ్లి తిరిగి, దూరంగా వెళ్లి నా టెర్మినల్ చేయండి. ఇక్కడ క్రింద లో జూమ్ చెయ్యండి. హలో తయారు తిరిగి టైప్ చేయండి. గణగణమని ద్వని చేయు తిరిగి తెలపబడింది. నేను టైప్ వెళ్ళడం జరుగుతుంది. / హలో, Enter చేస్తున్నాను. ఏమీ ఇంకా జరుగుతున్న తెలుస్తోంది, కానీ ఈ ప్రాంప్ట్ వద్ద పని నేను నేట్ లో లాగ టైప్ చెయ్యవచ్చు, Enter, మరియు ఇప్పుడు మనం హలో, నేట్. మరియు నేను ముందుకు రాబ్ మళ్ళీ దాన్ని, మరియు. నేను ఉద్దేశం కాబట్టి ఆశాజనక ఇప్పుడు ఈ కార్యక్రమం ప్రవర్తించడం ఉంది. ఇప్పుడు, ఆ యూజర్ ఫ్రెండ్లీ లేదు. నేను నా అంచనా చేయబడిన ఏ ఆలోచన చేశారు. కాబట్టి మేము ఖచ్చితంగా కొద్దిగా పైకి ఈ శుభ్రం చేయవచ్చు. నన్ను ఇక్కడ తిరిగి వెళ్ళి తెలపండి, మరియు బదులుగా కేవలం డైవింగ్ మరియు ఒక స్ట్రింగ్ కోసం వినియోగదారు అడగడం, నాకు స్పష్టంగా చెప్పనివ్వండి నేను ఆశించే నేను ఏమి యూజర్. కాబట్టి printf ("స్ట్రింగ్ నమోదు చేయండి:" ); ఇక్కడ ఏ వేరియబుల్స్ కాబట్టి. కాదు శాతం చిహ్నాలు. జస్ట్ సాధారణ ఆంగ్ల పదబంధం. నాకు ఇప్పుడు ఇక్కడ అడుగు వెళ్ళి నా ప్రోగ్రామ్ తిరిగి లెట్. కానీ ఏదీ మారలేదు తెలుస్తోంది. ఎందుకు? నేను మళ్ళీ కంపైల్ చెయ్యండి ఉంటుంది. సో ఈజీ తప్పు చేస్తుంది. కానీ మీరు ఫైల్ సేవ్ మాత్రమే కలిగి ఉన్నాయి కానీ కార్యక్రమం మళ్ళీ కంపైల్ చెయ్యండి. కాబట్టి నేను తిరిగి అమలు హలో చేస్తే, ఇప్పుడు గణగణమని ద్వని చేయు నడుస్తుంది. ఇప్పుడు నేను అమలు చేయవచ్చు. / హలో. ఇప్పుడు నేను "స్ట్రింగ్ నమోదు చేయండి:" చూడండి. సరే. ఇప్పుడు అది వినియోగదారు అనుకూలమైన కొద్దిగా ఇంకా. నేట్, హలో, నేట్ నమోదు చేయండి. సరే, మళ్ళీ ప్రయత్నించండి, ఆలోచనా ప్రారంభిద్దాం మూలలో విషయాలను. కాబట్టి స్క్రాచ్ లో వలె, మీరు ప్రోత్సహించింది చేసిన లేదా చేశారు రకమైన వెళ్ళి అనే దాని గురించి ఆలోచించటం స్పెక్ లో ప్రోత్సహించాడు తప్పు మీరు వినియోగదారు ఉండవచ్చు ప్రతిదీ ముందుగా లేకపోతే. బగ్స్, కాబట్టి, సంభవించు ఉండవచ్చు. కాబట్టి ఒక స్ట్రింగ్ ఎంటర్ - ఇక్కడ ఒక మూలలో కేసు ఏమిటి? నేను, ప్రోగ్రామర్, ఉండకపోవచ్చు దృష్టాంత యొక్క ఊహించి? అవును. సరే. నేను ఈ వంటి టైప్ సో వాట్ ఉంటే? అన్ని కుడి. కాబట్టి ఇప్పటికీ పనిచేస్తుంది. వ్యాకరణ దోషములు కలవు అస్సలు అర్ధమే లేదు. కానీ కనీసం ప్రోగ్రామ్ పనిచేస్తుంది. మరొక కార్నర్ కేసు ఏమిటి? నేను ఊహించని ఏదో. Yeah? సరే. కాబట్టి మేము ఒక నిజంగా పెద్ద సంఖ్య లో లాగ పని చేయడు. ఇక్కడ ఇది చూద్దాం. నాకు రెండో దూరంగా లెట్, నాకు హైలైట్ తెలియజేయండి. కాపీ మరియు ఇక్కడ డౌన్ అతికించలేరు. అన్ని కుడి. నేను కాపీ మరియు ఈ టెర్మినల్ విండో లో అతికించండి కాదు, మేము రాదు కేవలం అది చైతన్య. నాకు మూసివేయాలని వెళ్ళి దూరంగా లెట్. ఇది ఎందుకంటే నేను, చాలా పొడవుగా ఇలా వెళ్ళడం లేదు నిజానికి ఈ కార్యక్రమం లో విడిపోయారు. కానీ ఉంటారు. నమోదు చేయండి. కాని అలా జరగలేదు. అన్ని కుడి. కానీ వాస్తవమైన మూలలో కేస్. మరియు సరిగ్గా ప్రవర్తించారు మాత్రమే కారణం, కు CS50 ఫంక్షన్ GetString వాస్తవానికి ఎందుకంటే మాట్లాడటం ఉంది మేము కొన్ని వారాలలో చూస్తారు వంటి, హుడ్ కింద రూపొందించిన, స్వయంచాలకంగా మరింత RAM, మరింత కేటాయించే ఆపరేటింగ్ సిస్టమ్ నుండి మెమరీ, ఇది గుర్తిస్తాడు ఉన్నప్పుడు, వావ్, మీరు నిజంగా చాలా కాలం ఏదో లో టైప్ చేసిన. ఇప్పుడు, ఈ తెల్లని అబద్ధం ఒక బిట్ ఉంది. మేము నిజంగా చాలా సమయం కోసం పాజ్ మరియు నేను టైప్ ఉంటే కీబోర్డ్ వద్ద 5 బిలియన్ అక్షరాలు లాగ ఇక్కడ, లేదా మేము బహుశా, కాపీ పేస్ట్ కొంచెం హిట్ క్రాష్ ప్రోగ్రామ్ కావచ్చు. కొంచెం కష్టం ఒక పరిమిత ఆ అనుకరించేందుకు సమయం. మేము ప్రయత్నించండి మరొక కార్నర్ కేసు ఏమిటి? Yeah? అవును. ఎందుకు మేము ఏమీ సమాధానం లేదు? కాబట్టి మేము నిజంగా కొన్ని చర్య తీసుకోవాలని, ఎందుకంటే లేకపోతే కార్యక్రమం రోజంతా మెరిసే అక్కడ కూర్చుని జరగబోతోంది. కానీ నేను కొట్టినప్పుడు నమోదు - OK, ఇప్పుడు, ఇప్పటికీ తప్పు ఉంది. క్రాష్, కాని అవకాశాన్ని ఇప్పుడు లేదు లేదు మరింత కఠినమైన కార్యక్రమాన్ని అమలు ప్రారంభం వాస్తవానికి తనిఖీ చేస్తుంది. మరియు ఒకవేళ స్ట్రింగ్, వాక్యం, ఆ పదం నేను పొడవు 0 ఉంది టైప్, బాగా, బహుశా నేను అరుస్తుంటారు ఉండాలి యూజర్, లేదా ఆ, అతనికి చెప్పండి లేదా ఆమె మళ్లీ స్ట్రింగ్ నమోదు మేము నిజంగా సరైన ప్రవర్తన ఎలా పొందండి మరియు కాదు నేను చేసిన కేవలం పూర్తి పర్యవేక్షణ. తిరిగి ప్రశ్నను? దశాంశ సంఖ్య. కాబట్టి మేము కూడా ఆ ప్రయత్నించండి. 1,10000005. కేవలం వాస్తవానికి సరే పని వెళుతున్న వంటి తెలుస్తోంది. మరియు వాస్తవానికి భావిస్తున్నారు. మేము టైప్ ఉండవచ్చు ఉన్నప్పటికీ ఆ అక్కడ సంఖ్య, లేదా ఒక పెద్ద సంఖ్యలో ముందు తెలుసుకుంటారు మేము వినియోగదారు టైప్ చేసినప్పుడు ఇన్పుట్ మరియు మేము, GetString ఫంక్షన్ ఉపయోగించే కాదు నేను ఏమి టైప్ ఉంటే విషయం అనేక కనిపిస్తోంది. గుర్తు ఆ ASCII, మీ మీద ప్రతిదీ ప్రకారం కీబోర్డ్ కి వీలు అవుతుంది ఒక సంఖ్యా విలువ పాత్ర, ఒక చార్. కాబట్టి ఈ సందర్భంలో, అయినప్పటికీ నేను, అనేక టైప్ ఉండవచ్చు కంప్యూటర్ కాబట్టి స్ట్రింగ్ వంటి, మాట్లాడటానికి, ఆలోచించి అన్నారు - ఏదో ఒక సంఖ్య కనిపిస్తోంది, కానీ నిజానికి ఒక సంఖ్య. కానీ ఇప్పుడు మేము ఎందుకంటే, నిజానికి ఒక ఖచ్చితమైన segue యొక్క రచన కార్యక్రమాలు వాస్తవానికి మార్పు ఆ ఇతర డేటా రకాల ఉపయోగించండి. కాబట్టి పాటు అక్షరాలు ఉపయోగించి, లేదా, పాటు తీగలు ఉపయోగించి, మేము అదే మాదిరిగా C ఇతర డేటా రకాల లేదని గుర్తించడం ఇతర భాషలు. ఒక చార్, పేరు సూచించినట్లు, కేవలం ఒకే పాత్ర. ఫ్లోట్ ఒక ఫ్లోటింగ్ పాయింట్ విలువ, మరియు కేవలం ఒక ఫాన్సీ ఉంది ఒక వాస్తవ సంఖ్య చెప్పడం మార్గం - ఒక దశాంశ విషయం ఎడమ మరియు / లేదా కుడి కొన్ని సంఖ్యలను అది పాయింట్. ఒక పూర్ణాంకానికి కేవలం 123 వంటి అనేక ఇది పూర్ణాంకం, ఉంది. ఇప్పుడు మరింత ఆసక్తికరంగా డబుల్ వంటి విషయాలు. మేము ఒక డబుల్ చివరి సమయం ఏమి చేశారు? ఇది కుడి, 64 యొక్క. కాబట్టి సాధారణంగా అయితే ఫ్లోట్ 32-bit ఉంది - కాబట్టి ఇది మెమరీ దీర్ఘ ఈ, అది కు 32 సున్నాలు మరియు వాటిని ఉపయోగిస్తుంది విలువలకు ప్రాతినిధ్యం - డబుల్ అక్షరాలా రెండుసార్లు, ఆ ఇది మీరు పెద్ద సంఖ్యలకు ప్రాతినిధ్యం అని దీని అర్ధం, లేదా మీరు మరింత ఖచ్చితమైన సంఖ్యలకు ప్రాతినిధ్యం చేయవచ్చు. కాబట్టి మీరు దశాంశ పాయింట్ తరువాత మరింత సంఖ్యలు ఉంటాయి, కాని తోటి సాధారణ ఏదో కూడా, వీడియో అన్నట్లు సంభావితంగా 1/3 వంటి చేత సరిగ్గా ప్రాతినిధ్యం సాధ్యం కాదు కంప్యూటర్, చివరికి మీరు బిట్ల రన్నవుట్, మరియు ఎందుకంటే కాబట్టి మీరు మాత్రమే .33333333 చాలా సార్లు, వద్ద చేయవచ్చు ఇది మీరు నేను ప్రాతినిధ్యం నుండి ఉన్నాను చెప్పే పాయింట్ స్పేస్, కేవలం ఇది ఒక రోజు కాల్ మరియు ప్రాతినిధ్యం కలిగి కొంతవరకు imprecisely అది ఇష్టం. మరియు ఒక లాంగ్ లాంగ్ - ఒక గా పిలువబడే ఒక డేటా రకాన్ని లేదు ఎందుకంటే స్టుపిడ్ పేరు, కానీ ఇది యాదృచ్చికంగా తరచూ ఒక వంటి 32 బిట్స్, ఇది C లో పొడవైన Int 32 బిట్స్, కానీ దీర్ఘ పొడవుగా ఉంది సాధారణంగా 64 బిట్స్. కాబట్టి ఇది మీరు పెద్ద ప్రాతినిధ్యం దీని అర్థం ఈ కంటే సంఖ్యలు. అన్ని కుడి. మేము నిజంగా, మేము విషయాలు ప్రాతినిధ్యం ప్రారంభించడానికి అనుకుంటే మరింత అధునాతన రకాల అవసరమయ్యే మేము స్ట్రింగ్ ఎందుకు ఆ. కాబట్టి CS50 లైబ్రరీలో, ఆ ఫైల్ cs50.h అని, మేము మీరు వాస్తవానికి స్ట్రింగ్ అని మాట్లాడటానికి ఒక డేటా రకాన్ని, డిక్లేర్డ్ కానీ స్ట్రింగ్ వాస్తవానికి ఉనికిలో లేదు. ఈ, మళ్ళీ, ఈ పొరల ఒక మేము రాలిపోవడం వెళుతున్న తిరిగి ఒక వారం లేదా రెండు మరియు త్రో ఇట్ అవే, మరియు నిజానికి ఒక స్ట్రింగ్ అసలు వద్ద హుడ్ కింద కనిపిస్తాయి మరియు ఎలా ప్రాతినిధ్యం ఉంది. మేము కూడా బూలియన్ విలువలు కు వెళుతున్న. కాబట్టి స్క్రాచ్ సందర్భంలో ఒక bool ఏమిటి? ఇది నిజమైన లేదా తప్పుడు ఉంది. కనుక ఇది, కేవలం ఒప్పు లేదా తప్పు అని ఒక విలువ లేదా ఆఫ్, 1 లేదా 0, అయితే మీరు ప్రపంచంలో చూడాలను. కాబట్టి సి లో, CS50 లైబ్రరీ కృతజ్ఞతలు అవి హుడ్ కింద మరొక లైబ్రరీని కలిగి, మనం bool అని ఒక డేటా రకాన్ని, యాక్సెస్ ఇది రెడీ సాహిత్యపరంగా మాకు విలువలు నిజమైన లేదా తప్పుడు కేటాయించి అనుమతిస్తాయి ఒక కార్యక్రమంలో విషయాలు. కాబట్టి యొక్క ఇక్కడ ముందుకు వెళ్లి ఒక చిన్న ప్రోగ్రామ్ వ్రాయుటకు అనుమతి బదులుగా సంఖ్యలు సంబంధించిన దాన్ని చేస్తుంది. కాబట్టి నాకు మళ్లీ CS50 ఉపకరణం వెళ్ళనిస్తున్నారని, నాకు ముందుకు తెలియజేయండి మరియు ఇక్కడ అనే కొత్త ఫైలు సృష్టించవచ్చు - లెట్స్ కేవలం math.c. వంటి ఏదో సాధారణ సే అన్ని కుడి. ఇప్పుడు నా ప్రోగ్రామ్ యొక్క టాప్ వరకు వెళ్ళి, నాకు సాధారణ చేయబోవడం - # ఉపయోగించడానికి , తద్వారా ఉన్నాయి printf, Int ప్రధాన (తప్ప) - మేము Int అర్థం, చివరికి, తిరిగి వచ్చి చేస్తాము ఇక్కడ, ఇక్కడ తప్ప అర్థం, కానీ ఇప్పుడు కోసం, కేవలం తెలుసు మీరు ఈ వంటి కార్యక్రమాలు ప్రారంభించడానికి కలిగి ఉంటాయి. ఇప్పుడు నేను కొంచెం ముందుకు వెళ్లి చెప్పే వెళుతున్న వివిధ - printf ("నాకు అనేక ఇవ్వండి:" );. అప్పుడు నేను Int n = GetInt చేయ బోతున్నాను, ఎందుకంటే అది GetInt అవుతుంది CS50 లైబ్రరీలో మరొక విధి GetString పాటు. ఇప్పుడు నేను ధన్యవాదాలు "వంటి, స్టుపిడ్ ఏదో ఒకటి వెళుతున్న % d కోసం, "కోసం దశాంశ పూర్ణాంక, ఆపై కామా n, మరియు అప్పుడు 0 తిరిగి. మరలా, 0 నాకు సంఖ్యలో లేదు తిరిగి యూజర్ అడగడం. అన్ని చాలావరకు అలాగే అని చివరలో సూచిస్తుంది. కాబట్టి నాకు ఇక్కడ నా టెర్మినల్ విండో క్రిందికి వదలి వేస్తారు. నాకు నమోదు, గణిత తయారు టైప్ లెట్. మరియు ఏదో తప్పు. గణిత పని చేయలేదు చేయండి. ఇక్కడ మా దోష సందేశాలు మొదటి పని. ఎందుకు? ఒక చిన్న గుప్తమైన, కానీ - అవును. కాబట్టి cs50.h. మరలా, ముఖ్యంగా ప్రారంభ, మీరు మీ మొదటి వ్రాయండి చేస్తాము విభాగాలలో pset 1 కోసం కార్యక్రమం, ఆఫీస్ అవర్స్ లో, మరియు స్పష్టముగా, కొన్నిసార్లు అధిక ఉంటాం ఏ ఈ విషయాలు వాస్తవానికి అంటున్నారు. కానీ వారు తగ్గుతుందని ప్రారంభం చాలా త్వరగా గుర్తించడం చేస్తాము ఈ ఒక ఒక వదిలి చేసిన అర్థం వస్తే బకెట్లు లోకి యొక్క # ఫైలు ఎగువన ఉన్నాయి. మరియు గణగణమని ద్వని చేయు, కంపైలర్, ఈ యొక్క మీరు సమాచారం ఉంది ఇచ్చి, బదులుగా సొగసుగా, అవ్యక్త ప్రకటన ఫంక్షన్ GetInt చెల్లనిది. అన్ని కుడి. కాబట్టి ఆ అర్థం ఏమిటి? ఇది మీరు పరిపూర్ణంగా GetInt లో ప్రకటించింది చేసిన అర్థం మీరు స్పష్టంగా ప్రకటించింది కాని భావన. స్పష్టంగా Int ప్రకటించాలని, మీరు బోధించడానికి కలిగి ఇది ఉనికిలో గణగణమని ద్వని చేయు. మరియు ఆ చాలా సులభమైన పరిష్కారం అది ద్వారా బోధించే ఉంది ఈ ఇతర ఫైల్, cs50.h, సహా మీ ఫైల్ టాప్. సాహిత్యపరంగా, ఏ # ఉన్నాయి ఎందుకంటే అది గణగణమని ద్వని చేయు చెబుతుంది చాలా చక్కని cs50.h, కాపీ అని కనుగొనడం వెళ్ళడానికి, నాకు నా ప్రోగ్రామ్ యొక్క పైభాగములో స్వయంచాలకంగా అతికించండి, ఆపై సున్నాలు మరియు వాటికి సోర్స్ కోడ్ మారుస్తాయి. మనం మానవులు కలిగి అయితే స్పష్టమైన చాలా శ్రమతో ఉంటుంది అన్ని సమయం కాపీ మరియు ఈ పెద్ద ఫైళ్ళను అతికించడానికి వెళ్ళడానికి, కాబట్టి # అన్ని ఆ లేకుండా స్వయంచాలకంగా చేస్తుంది ఉన్నాయి ఇతరుల లైబ్రరీ నా కోడ్ muddying. మరియు ఒక గ్రంధాలయం మరొక విధులు కలిగిన ఫైలు మరియు ఎవరో మేము అని, వ్రాశారు ఇతర విషయాలు మా సొంత లక్ష్యం కోసం సామర్థ్యం. అన్ని కుడి. యొక్క మళ్లీ ప్రయత్నించండి లెట్. గణిత చేయండి. నమోదు చేయండి. గుడ్. కాబట్టి ఆ పని తెలుస్తోంది. కాబట్టి నాకు ఇప్పుడు గణిత అమలు అనుమతిస్తాయి;. / Math. ఎంటర్ నాకు సంఖ్య, 123 ఇస్తుంది. 123 ధన్యవాదాలు. ఇప్పుడు మరొక కార్నర్ కేసు ప్రయత్నించండి తెలియజేయండి. ఒక స్ట్రింగ్ ఎందుకంటే, చాలా ఉదారంగా ఒక స్ట్రింగ్ ఏదైనా కావచ్చు. సంఖ్యలు మాదిరిగా ఉంటాయి, ఎలా అక్షరాలు, పదాలు ఎలా. కానీ ఒక పూర్ణాంకానికి ఒక పూర్ణాంకానికి ఉంది. కాబట్టి ఇప్పుడు నేను కష్టం వినియోగదారు మరియు నేను ఇవ్వండి "అని దాన్ని ఒక సంఖ్య, "నేను 0.1 వంటి ఏదో ఒకటి చేయడానికి ప్రయత్నిస్తే,? Well, ఒక సంఖ్య, అది స్థిరంగా ఉంది వ్యాకరణం నేను ఇక్కడ ఉపయోగించారు, కాని హుడ్ కింద, నేను యొక్క ఉన్నాను ఫంక్షన్ GetInt ఉపయోగించి కోర్సు. కాబట్టి ఏమి చూద్దాం. మళ్ళీ నమోదు చేయండి. అన్ని కుడి. నాకు కష్టం మరియు కేవలం మళ్ళీ నొక్కండి భావించండి. నమోదు నమోదు చేయండి. కాబట్టి ఇప్పుడు ఆ GetInt కొంచెం అనిపిస్తోంది GetString కంటే శక్తివంతమైన. మేము, సిబ్బంది, మేము గమనిస్తే ఆ విధంగా అమలు మీరు మాకు ఒక పూర్ణాంకానికి ఇచ్చిన లేదు - మరియు ఒక పూర్ణాంకానికి ఒక దశాంశ సంఖ్య కలిగిన సున్నాలు, వాటిని, రెండు పరుగులు తీయడం, త్రీస్, ఫోర్లు, ఫైవ్స్, సిక్సర్లు, సెవెన్స్, ఎయిట్స్కి, లేదా nines. అంతే. కాదు దశాంశ పాయింట్లు, ఏ అక్షరాలు, ఏ విరామ. ఇది మేము సహకరించిన తెలుస్తుంది. నాలో నాలుగు, ఐదు, ఆరు, మరియు ఆ ద్వారా నన్ను గెట్స్ ప్రయత్నించండి తెలియజేయండి. కాబట్టి నిజంగా, ఇక్కడ ఆసన అని, నేను బహుశా నాకు ఇవ్వండి "అని ఉండాలి పూర్ణాంకం "వినియోగదారుకు చెప్పేటప్పుడు క్రమంలో నేను ఉద్దేశం ఏమిటి. ఇప్పుడు హుడ్ కింద ఆలోచించే అనుమతిస్తాయి. మేము, cs50.h నేడు అమలు ఎలా కు వెళ్ళి లేదు ఆ లైబ్రరీ. కానీ, మళ్ళీ, మళ్ళీ, మళ్ళీ చెప్పడం ఉంచుతుంది ఏమి ప్రోగ్రామింగ్ నేను బహుశా కు హుడ్ కింద ఉపయోగిస్తున్నాను నిర్మించడం ఆ అమలు? కాబట్టి ఒక లూప్, కుడి? మేము ప్రారంభం చూసిన సాధారణ ఆలోచనలు ఒకటి. ఫరెవర్ రిపీట్ నిర్మించడం, నిర్మిస్తారు. బహుశా, ఈ కార్యక్రమంలో, హుడ్ కింద, కూడా ఇది మొదటి సి లో రాసిన మరియు యొక్క అయితే, చేయుచున్నాడు యూజర్ కాకపోతే ఏదో ఎప్పటికీ సమానం అని పూర్ణాంకం లో టైప్, కాబట్టి, మళ్ళీ, మళ్ళీ, మళ్ళీ, మళ్ళీ చెప్పండి అప్పుడు చివరకు మేము చేసినప్పుడు మీరు, ఒక పూర్ణాంకం పొందండి ఆ లూప్ నుండి విడిపోయారు. కాబట్టి ఇతర ఏ విధులు మేము CS50 యొక్క లైబ్రరీ లో ఇక్కడ ఉపయోగించవచ్చు? Well, స్పష్టమైన వాటిని రకం, కనీసం ఆధారంగా మేము ఇప్పుడు ఉనికిలో తెలిసిన డేటా రకాల. మేము GetString, GetInt అమలు, కాని అంతటా పదం యొక్క మొదటి వారాల, మీరు కూడా GetFloat ఉపయోగించడానికి మరియు చేయవచ్చు ఖచ్చితంగా పొందడానికి GetDouble మరియు GetLongLong మీకు కావలసిన డేటా రకాల. ఇక్కడ కీ వివరాలు అని కొన్ని భాషల వలె కాక, ఎందుకంటే మీరు తప్పనిసరిగా అవసరం లేదు పేరు పైథాన్ మరియు రూబీ వంటి ఒక వేరియబుల్ యొక్క డేటా రకం డిక్లేర్ - మీరు కంప్యూటర్ చెప్పడం లేదు stuff ఏ విధమైన మీరు వేరియబుల్ ఉంచి చూడాలని - సి, మీరు ఇంత ఖచ్చితమైన ఉండాలి. మీరు n అనే వేరియబుల్, నిల్వ ఒక భాగం అనుకుంటే ఈ సందర్భంలో మీరు, కన్వెన్షన్ ద్వారా 32 బిట్స్ నిర్మాణము ఆ ఈ బిట్స్ అని కంప్యూటర్ చెప్పడం కలిగి అనేక కొట్టుకు వెళ్లి - ఒక పాత్ర, ఒక స్ట్రింగ్, ఒక ఫ్లోట్. మరియు ఈ మేము సమర్థవంతంగా సమస్యను చిరునామాలు గత వారం పడింది. మేము కేవలం ప్రాతినిధ్యం సున్నాలు మరియు వాటిని సంఖ్యలు ఉపయోగిస్తున్నట్లయితే సంఖ్యలు ప్రపంచంలో ఎంత కానీ మరియు Bs మరియు CS, ఒక కంప్యూటర్ తెలిసిన వెళ్లి వాస్తవానికి బిట్స్ ఈ నమూనా వంటి ప్రాతినిధ్యం వ్యతిరేకంగా సంఖ్య 65, సూచిస్తుంది ప్రకారం యాదృచ్చికంగా లేఖ,, గుర్తు, ASCII, 65 సమానం? కాబట్టి, కంప్యూటర్ సందర్భం అందించడానికి ఈ డేటా రకాల కాబట్టి ఈ బిట్స్ ఒక వలె అంచనా తప్పకుండా అది తెలుసని Int లేదా ఒక స్ట్రింగ్ వంటి. ఏదైనా ప్రశ్నలు, అప్పుడు, ఈ పై? Yeah? డేవిడ్ J. మలన్: మంచి ప్రశ్న. మేము stdio.h చేద్దామని ఉంటే, మేము ఫైల్ సేవ్ - నాకు టెర్మినల్ విండో క్రిందికి వెళ్ళి గణిత, జూమ్ చేయడానికి అమలు తెలియజేయండి లో ఎంటర్ - నేను పరిపూర్ణంగా ఉన్నాను ఎందుకంటే ఇప్పుడు నేను, వేరొక తప్పిదం ఇప్పుడు పని ఏమి ప్రకటించారు? Printf. కాబట్టి ఇప్పుడు నేను దీని పరిష్కారం ఒక కొత్త సమస్య, సృష్టించిన తప్పనిసరిగా అదే. నేను తిరిగి ఉంచాలి. ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: ఓహ్. నేను చేద్దామని అలా అయితే - సరే, అవును. నేను ప్రామాణిక I / O లైబ్రరీ చేర్చడానికి అప్ తొలగించు అయితే ఇక్కడ, మరియు అప్పుడు మీరు నేను printf వదిలించుకోవటం ఉంటే, పొందండి చెబుతున్న దాన్ని printf విమోచనం? అవును. అయ్యో - నేను ఏ ఉపయోగించి ఇకపై ఉన్నాను ఎందుకంటే ఈ పని చేయాలి. నేను అబద్ధం తెలుసా? ఓహ్, ఓకే. ఈ మేము ప్రవేశపెట్టిన కొత్త లోపం వల్ల సాధ్యం కాదు. మరియు ఈ ఒక కొంచెం స్వీయ వివరణాత్మక ఉంది. సమస్య ఏమిటి? ఉపయోగించని వేరియబుల్ n. కాబట్టి ఈ లోపం మా కాన్ఫిగర్ చేసిన ఫలితంగా నిజంగా అరుస్తుంటారు, ముఖ్యంగా పాండిత్య ప్రకర్ష అని ఉపకరణం ప్రతి సాధ్యం తప్పు కోసం మీరు, కూడా దాని రకమైన ఈ వంటి ప్రాణాపాయం లేని తప్పు - ఇది నిజంగా ఒక పెద్దది నేను ఒక Int కేటాయించబడింది ఒప్పందానికి, అది ఒక సంఖ్య కలిపితే, కేవలం ఇది ఏమీ? కాబట్టి క్రియాశీలంగా, ఏ. ఆ కార్యక్రమం బ్రేక్ మాత్రం కాదు. ఇది స్టుపిడ్, కుడి చూస్తూ ఉంటాము? నిల్వ, ఆ సంఖ్య అడిగారు కలిగి విలువ ఉంది అది ఒక వేరియబుల్, మీరు ఏదైనా చేయబోవడం ఎప్పుడూ చేస్తున్నారు దానితో, ప్రింట్ లేదా సేవ్ అని. కాబట్టి ఈ సందర్భంలో, గణగణమని ద్వని చేయు చాలా అభినందిస్తూ మరియు అది ఉపయోగించని వేరియబుల్ n మాట్లాడుతూ అన్నారు. మేము నిజంగా కావాలా కాబట్టి మేము ఈ పరిష్కరిస్తాము. కానీ మళ్ళీ, ఈ ఇప్పుడు మంచి ప్రోగ్రామింగ్ కాదు. నేను దీన్ని కేవలం కాలేదు - ఇక్కడ డౌన్ వెళ్ళి, నాకు, స్క్రీన్ క్లియర్ గణిత తయారు చేద్దాము. ఆ పనిచేస్తుంది. ఇప్పుడు నేను, నా గణిత అమలు ఇన్పుట్ పడుతుంది చేయవచ్చు - అలాగే, ఆ ​​బాగా లేదు. ఇన్పుట్ టేక్స్, మరియు ఈ సందర్భంలో, అది అన్ని ఉంటుంది. కాబట్టి నిజంగా, యొక్క మరొక కార్నర్ కేసు ప్రయత్నించండి అనుమతించే మేము మునుపటి యొక్క భావించింది. ఈ సందర్భంలో - ఇక్కడ, ఒక యొక్క ఉండే తిరిగి వెళ్ళడానికి వీలు యూజర్ ఫ్రెండ్లీ కొంచం. నాకు ఇక్కడ తిరిగి వెళ్ళి, మళ్ళీ గణిత తయారు అమలు అయ్యేలా అనుమతించండి. అయ్యో, నేను ఏమి చేస్తారు? మరింత వెనక్కి తీసుకుని రావడానికి గాట్. సరే. ఇప్పుడు మేము అన్ని, అసలు రాష్ట్రంలో వెనుక ఉన్నాము ఆశాజనక బాగా ఉంది. నేను గణిత అమలు చేస్తే ఇప్పుడు, 123 పని ఉంది. కానీ ఈ చెప్పడానికి, నిజంగా సమర్థవంతమైన రుజువు కాదు సరే, ఆ పనిచేస్తుంది. 789, ఆ పనిచేస్తుంది. సమర్పించడానికి సమయాన్ని. ఇక్కడ ఇతర మూలలో కేసులు ఎందుకంటే. ఒక స్ట్రింగ్ నిజంగా టైప్ చేయడం ద్వారా మాకు చాలా ఇబ్బంది ఇవ్వలేదని మొత్తం అక్షరాలు చాలా. కానీ నేను ఈ లో టైప్ చేస్తే? - సంఖ్య 1 మొత్తం చాలా, ఇక్కడ మొత్తం చాలా హిట్టింగ్ అన్ని కుడి ఇది కాస్త చికాకు సంతరించుకోనుంది, కాబట్టి నేను వెళుతున్న ఇక్కడ ఆపడానికి, మరియు నేను ఎంటర్ నొక్కండి వెళుతున్న. కేవలం వాట్ ది హెల్ జరిగింది? కాబట్టి ఈ వాస్తవానికి వివరించారు. కాబట్టి అది బైనరీ గా స్వీకరించింది? మంచి ఆలోచన, అయితే, ఇది జరిగింది వాస్తవం కాదు బైనరీ వంటి నిజానికి ఎందుకంటే, ఒక చూస్తూ ఉంటాము ఉంది ఏకకాల. మేము మళ్ళీ చేయవచ్చు. కాబట్టి ఆ బైనరీ సిస్టమ్ లో 2, లేదు బహుశా తగినంత ఏమైనప్పటికీ. నమోదు చేయండి. కాబట్టి ఆ సమస్య లేదు. ఏమి? సరిగ్గా. కాబట్టి ఒక పూర్ణాంకానికి అసలు తిరిగి అనుకుంటున్నాను. ఇది సమిష్టిగా అంచనా ఇది 32 బిట్స్ ఉంది ఒక సంఖ్య. మీరు 32 బిట్స్ ఉంటే, ఆ బిట్స్ ప్రతి అర్థం ఒక 0 లేదా 1, 0 లేదా 1. ఈ బిట్ రెండు అవకాశాలను లేదు అంటే, ఆ విధంగా ఈ రెండు అవకాశాలను, ఈ రెండు అవకాశాలను బిట్ - 2 సార్లు 2 సార్లు కాబట్టి - తద్వారా 32 అధికారంలోకి 2 యొక్క మొత్తం సంఖ్య సున్నాలు మరియు వాటిని యొక్క ప్రస్తారణల మీరు 32 ఉంటే మీరు ముందు placeholders, సున్నాలు లేదా వాటిని. నేను ఏమి లేదని గణితశాస్త్ర 32, 2 కలిగి అయితే? కనుక ఇది పలు అంశాలు. ఇచ్చి లేదా తీసుకుని, 4 బిలియన్ ఉంది. మరియు 4 బిలియన్ ఇక్కడ ముద్రించిన దాని కనిపించడం లేదు. నిజానికి, ఈ 2 బిలియన్ దగ్గరగా ఉంది. కానీ ఈ ఏకకాల కాదు. కంప్యూటర్ నా భారీ సంఖ్యలో తప్పుగా వాస్తవం, వాటిని తరువాత రెండు పరుగులు తీయడం నా భారీ శ్రేణి, నా పెద్ద క్రమం సుమారు 2 బిలియన్ల, ఎలా ఉంది? Int పరిమితి ఉంది. మీరు సూచిస్తుంది ఒక గరిష్ట విలువ ఖచ్చితంగా ఉంది. కానీ కుడి, సాధారణంగా 4 బిలియన్ ఏమిటి? 2 32 ఉంటే సుమారు 4 బిలియన్, ఆ వంటి తెలుస్తోంది అత్యధిక సంఖ్యలో ఉంది. కాబట్టి ఒక మిగిలిన, కానీ ఒక మంచి ఆలోచన. రుణాత్మక సంఖ్యలు. మీరు చేయవచ్చు 4 బిలియన్ సాధ్యం విషయాల్లో అయితే 32 0 సె ఈ వివిధ మార్పిళ్లతో ప్రాతినిధ్యం మరియు 1s, సరే, మేము మానవులకు ఉంటుంది ఆ కారణం ఉంది కేవలం సానుకూల పూర్ణాంకాల ప్రాతినిధ్యం కాని ప్రతికూల పూర్ణ. నిజానికి, సి చేస్తుంది ఊహ ఆ. కాబట్టి 32 బిట్స్ తో, మీరు సుమారు ప్రతికూల 2 సూచిస్తుంది అనుకూల 2 బిలియన్ బిలియన్ అన్ని మార్గం అప్. కాబట్టి ఈ సందర్భంలో, మాకు చూడటానికి అంతే మా పూర్ణాంకం యొక్క సామర్థ్యం యొక్క అంచు, మరియు మేము కలిగి మాట్లాడటానికి, పూర్ణాంకం ముంచివేసింది. మేము నిజంగా ఇముడుతుంది కంటే ఇది మరింత బిట్స్ క్రామ్ ప్రయత్నించాము. కాబట్టి ముగింపు ఫలితంగా మేము తప్పనిసరిగా అన్ని 1 బిట్స్ కలిగి ఉంది. మేము మా బిట్స్ న అన్ని ఒరిగిందని చేసిన, మేము ప్రాతినిధ్యం ప్రయత్నించాము సాధ్యం అతిపెద్ద సంఖ్య, కానీ దాదాపు స్పష్టంగా కాదు నేను సైన్ టైప్ చేసిన రెండు విషయాలు ప్రాతినిధ్యం తగినంత పెద్ద Yeah? ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: మంచి ప్రశ్న. ఎందుకు మేము ప్రతికూల ప్రాతినిధ్యం కాదు ఒక పాత్ర సైన్? కాబట్టి మేము ఖచ్చితంగా జరిగింది, మరియు మేము అప్పుడు సేవ్ కాలేదు ఒక అదనపు bit. అయితే మీరు ఇప్పటికీ ఆ డాష్ ప్రాతినిధ్యం కొనసాగుతుందని, మరియు మీరు , మీరు కనీసం ఏదో ఖర్చు జరగబోతోంది బహుశా ఒక బిట్. కాబట్టి అవును, మేము మా సంఖ్య ఉపయోగిస్తారు 32 బిట్స్ కలిగి, కానీ ఇప్పుడు మేము మా డాష్ కోసం వేరొక బిట్ అవసరం గుర్తు, మైనస్ గుర్తు. కాబట్టి ఇప్పుడు మనం చేయలేరు 33 బిట్ విలువలు కలిగి, కానీ ఇది జస్ట్ ది వే చేసి కాదు. మేము కాల్ సంవత్సరాల క్రితం ఒక తీర్పు చేసిన, 32 బిట్స్ విధమైన ఉంది ఇక్కడ కొలమానం. కాబట్టి మేము సమర్థవంతంగా ఆ బైట్ల ఒక ఉపయోగించడానికి వెళుతున్న ప్రతికూల సూచిస్తాయి, మరియు సంఖ్య ప్రాతినిధ్యం 31 బిట్స్. ఇతర ప్రశ్నలు? అన్ని కుడి. చాలా పేర్కొంది. ఎందుకు మేము ముందుకు వెళ్లి, మా ఐదు నిమిషాల విరామం ఇక్కడ తీసుకోకపోతే? అన్ని కుడి. మరలా, గణితశాస్త్ర అనువర్తనాల్లో overemphasize కాదు ప్రోగ్రామింగ్ యొక్క, లెట్స్ ఈ ఒక ఉదాహరణ ఆఫ్ ధైర్యము మేము ఇతర నిర్మాణాలు తరలి ముందు, కేవలం ఎందుకంటే కొన్ని కొన్ని సాధారణ stumbling విషయాలని ఉదహరించడానికి కనిపిస్తుంది బేసిక్స్ వ్రాయడం వలన కార్యక్రమాలు విషయానికి వస్తే. ఈ సందర్భంలో, కొన్ని కలిగి అంకగణితం వ్యక్తీకరణలు చేయడం వాక్యనిర్మాణం ఆసక్తికరంగా ఔచిత్యం. ఇది మేము మార్పిడి చేయవచ్చు సూత్రం కాబట్టి ఫారెన్హీట్ నుండి సెల్సియస్ వరకు ఉష్ణోగ్రతలు. మీరు రీకాల్ లేకపోతే, ఈ కేవలం సూత్రం. మేము ఇది 32 డిగ్రీల ఫారెన్హీట్ విలువ, ప్లగ్ అయితే ఫ్రీజింగ్, ఆ నిజానికి 32 మైనస్ 32 0 మాత్రం, మరియు, సెల్సియస్ 0 కూడా గడ్డ ఉంది. కాబట్టి త్వరగా తెలివి అక్కడ తనిఖీ - తెలిసిందే ఫార్ములా ఉంది. నాకు అయితే, ఉపకరణం కు వెళ్ళి, మరియు ప్రారంభిద్దాం f2c, వంటి, అని పిలిచే ఒక కార్యక్రమం రాయడం; "ఫారెన్హీట్ కు డాట్ సి సెల్సియస్ ". మరియు ఇక్కడ పైభాగంలో, నేను # ఉన్నాయి తో మొదలు వెళుతున్న stdio.h, మరియు నేను Int ప్రధాన (తప్ప) చేయబోవడం, మరియు నేను మళ్ళీ, మేము Int అంటే ఏమి భవిష్యత్తులో తిరిగి రండి చేస్తాము ఏ తప్ప అక్కడ అర్థం. ఇప్పుడు నాకు ముందుకు వెళ్లి ఒక కార్యక్రమం అమలు తెలియజేయండి ముఖ్యంగా మాకు ఈ మార్పిడి చేస్తుంది. కాబట్టి printf, యొక్క ఫారెన్హీట్ లో, ఉష్ణోగ్రత అని పిలవబడు. మరియు తర్వాత నాకు ముందుకు వెళ్లి యూజర్ నుండి విలువ పొందడానికి వీలు. నేను కావాలా విలువ ఏ విధమైన నేను వినియోగదారు నుండి కావాలి వాటిని నా ఫారెన్హీట్ ఒక ఉష్ణోగ్రత ఇవ్వాలని? Yeah? మీరు ఏ ప్రపోజ్ చేస్తుంది? అవును. కాబట్టి ఫ్లోట్ అందంగా సహేతుకమైన భావిస్తాడు. మేము, మళ్ళీ, కేవలం కొన్ని ఎంపికలు ఉన్నాయి మేము ఇప్పటివరకు చూసిన. మేము, లాంగ్ లాంగ్, చార్, డబుల్, ఫ్లోట్, Int వంటి వాటిని కలిగి bool, స్ట్రింగ్. కాబట్టి ఈ యొక్క, ఫ్లోట్ అందంగా సహేతుకమైన భావిస్తాడు. మేము నిజంగా అనుకుంటే మేము, ఒక డబుల్, కుడి ఉపయోగించవచ్చు ఒక మానవ యొక్క ఉష్ణోగ్రత ప్రాతినిధ్యం - 98,60000 - మేము ఆ విధంగా చేయడానికి 64 బిట్స్ వాడవచ్చు కానీ అనుకుని ఉష్ణోగ్రత కోసం ఓవర్ కిల్. కాబట్టి యొక్క ధనంతో వెళ్ళండి తెలపండి. ఇప్పుడు నేను ఒక వేరియబుల్ అవసరం. జస్ట్ విషయాలు సాధారణ ఉంచడానికి, నేను f కాల్ కు వెళ్ళి కాని నేను కేవలం దాన్ని సరిగ్గా ఉష్ణోగ్రత పిలవగలరు, కానీ ఉత్తమంగా ఉంటుంది. కాబట్టి f = GetFloat తీసుకువస్తారు. నేను ఇప్పుడు GetFloat ఉపయోగించడానికి నిర్ణయించుకున్నాను వెంటనే, అయితే, నేను ఒక సవరణ చేయాల్సి. అవును. మేము # ఉన్నాయి అవసరం కాబట్టి, లేకపోతే కంపైలర్ ఉంది మాకు వద్ద అరచి చెప్పు వెళ్ళడం జరుగుతుంది. ఇప్పుడు నేను ఒక ఫ్లోట్ కలిగి, నన్ను ముందుకు వెళ్లి తెలియజేసేలా మార్పిడి. కాబట్టి మొదటి, ఇక్కడ నాకు కూడా అలవాటు పొందడానికి వీలు నా కోడ్ వ్యాఖ్యానించాడు. మరలా, ఒక వ్యాఖ్య అని మానవ కేవలం ఒక సంకేతనం కాదు పర్ సే కార్యక్రమంలో భాగంగా, కానీ ఒక, మీరు సహాయం మీరు మరుసటి ఉదయం ఏమి అర్థం, లేదా తదుపరి నెల, మీ బోధన తోటి మీరు ఏమి అర్థం సహాయం లేదా, కాబట్టి ఇది మీరు ఏమి ఉద్దేశించిన సాధారణంగా చాలా మంచి పద్ధతి. కోడ్ యొక్క ప్రతి కొన్ని పంక్తులు ఒక వ్యాఖ్యను వ్రాయండి మీ లేదా మీ సహోద్యోగి. ఇక్కడ, నేను చెప్పడానికి వెళుతున్న "ఉష్ణోగ్రత కోసం వినియోగదారు అడగండి." పూర్తి వాక్యంగా, కేవలం ఒక చిన్న పదబంధాన్ని ఉండాలి లేదు. కానీ సి లో వ్యాఖ్యానించడం వెనుక ఆలోచన మీ ప్రతి , సే, TF లేదా ఒక సహోద్యోగి లేదా - వ్యాఖ్యలు గలదా ఉండాలి - కాదు ద్వారా, మీ ప్రోగ్రామ్ చెడిపోయిన మరియు అది ఖచ్చితంగా ఏమి కు చాలా కోడ్ చదవడం, కానీ వ్యాఖ్యలు చదవడం ద్వారా, ఇది క్లుప్తమైన మరియు స్పష్టంగా ఉండాలి. అన్ని కుడి కాబట్టి ఇప్పుడు మార్చండి ", నాకు ముందుకు వెళ్లి అని పిలవబడు ఫారెన్హీట్ వరకు సెల్సియస్. "నేను, ముందుకు వెళ్ళి, చేయ బోతున్నాను సి తేలుతూ, యొక్క అని పిలవబడు. ఒక ఫ్లోటింగ్ పాయింట్ విలువ మేము సెల్సియస్ ఉంటాం. మరియు నాకు ఈ ఒక ఉదంతం తీసుకుందాం. ఫార్ములా ఇక్కడ, మళ్ళీ, ఉంది. 5/9 సార్లు F ​​మైనస్ 32. కాబట్టి దీన్ని చూద్దాం. కాబట్టి 5 9 ద్వారా విభజించబడింది, మైనస్ - అయ్యో, నేను ఇప్పటికే అది గందరగోళంలో. టైమ్స్. కాబట్టి 5/9 సార్లు F ​​మైనస్ 32. సెమికోలన్, F మైనస్ 32 కాబట్టి. ఇప్పుడు, డౌన్ ఇక్కడ నేను ముందుకు వెళుతున్న మరియు, చెప్పడానికి ఫలితంగా ప్రింట్. మరియు ఈ భాగం సులభం. Printf. నేను ఈ ప్రింటింగ్ గురించి గో? Well, నేను, "ఆ సంఖ్యను సెల్సియస్ లో f \ n% ఉంది" అని కాలేదు కొన్ని కళాఖండాలు కోసం. మరియు నేను printf యొక్క ఇక్కడ ప్లగ్ ఏ విలువ అనుకుంటున్నారు రెండవ వాదన? సరే. కాబట్టి కేవలం సి. కాబట్టి మేము ఈ ప్రారంభం చేస్తాము మరియు అప్పుడు 0 తిరిగి. మళ్లీ, అది గణిత తో లేదు. కేవలం అన్నీ బాగా అర్థం. ఇప్పుడు, ఈ సరైన, ఈ కార్యక్రమం? అన్ని కుడి. నేను కొన్ని తప్పులు చేసిన. మీరు ప్రోగ్రామింగ్ అంటే ఏమిటో తెలియదు సరే, మీరు క్రమం చేయవచ్చు గ్రేడ్ పాఠశాలకు కారణమును వెనుకకు ఏ ఇక్కడ తప్పులు ఉండవచ్చు. మొదటి ఒకటి ఏమిటి? ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: అవును. కాబట్టి మేము కుండలీకరణాలు కోల్పోతున్నారు. నేను కీనోట్ కుండలీకరణాలు అని ఉద్దేశపూర్వకంగా ఆర్డర్ యొక్క ఈ భావన వాస్తవానికి అక్కడ ఎందుకంటే, ఇక్కడ స్లయిడ్ కార్యకలాపాలు, లేదా ముందుగా, అనగా కొన్ని కార్యకలాపాలను - గుణకారం - అధిక బైండింగ్ కలిగి, విషయాలు కంటే, ఎక్కువ ప్రాధాన్యత కలిగి అదనంగా లేదా తీసివేత ఇష్టపడుతున్నారు. కాబట్టి మేము కేవలం స్పష్టమైన సరిగ్గా చేయడానికి సంవత్సరాలు ఇది చేసిన ఏ గణిత ఆపరేషన్ మొదటి చేయాలి. నేను బహుశా సరిగ్గా ఈ అనుకరించే ఉండాలి. లేకపోతే, కంప్యూటర్ బహుశా చేయడానికి ప్రయత్నించండి అన్నారు 9 ద్వారా విభజన 5 లాగ, అప్పుడు వ్యవకలనం తర్వాత, F గుణిస్తారు ఈ మొత్తం విషయం నుండి 32. ఏ మేము మీరు ఏమి, నిజానికి, కాదు. కాబట్టి యొక్క parenthesize తెలియజేయండి. యొక్క ఇక్కడ నా ఇక్కడ బ్రాకెట్లు కుండలీకరణాలు జోడించడానికి అనుమతిస్తుంది. యొక్క ఇక్కడ ఈ ఉంచారు లెట్. ఇక్కడ, నేను మార్గం వెంట చేసిన మరొక తప్పు గమనించాము. Yeah? ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: ఆహ్. గుడ్. కాబట్టి మేము ఒకే పూర్ణాంక కలిగి ముందు నుండి విభజన సమస్య. నేను, లక్షణం ఏ చూద్దాం అని సరి. కానీ మేము ఒక సరిచేయడానికి చూడాలని ఇక్కడ ఇతర తప్పు. Yeah? ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: అవును. కాబట్టి, పెద్ద తప్పు నేను, కానీ చాలా ముఖ్యమైన. కంప్యూటర్ ఒక గుడ్డి కన్ను మలుపు ఉత్తరం వెళ్ళడం లేదు నిజానికి వేరియబుల్ డిక్లేర్డ్ నాకు, రాజధాని F ఉపయోగించడానికి వంటి లైన్ 8 లో ఇక్కడ ఒక చిన్న F,. నేను, లైన్ 11 నా పెట్టుబడి సరైన అవసరం ఒక క్షణం క్రితం అనుకోకుండా ఒక రాజధాని F ఉంది. ఇక్కడికి గురించి? ఈ అదే చిన్న ఉండాలా? ఇది ఉండాలి, కానీ ఒక యాదృచ్చికంగా ఉంది. ఆ% f వేరియబుల్ తో లేదు. కాబట్టి కేవలం ఇక్కడ స్పష్టంగా సూపర్ అని, నాకు ముందుకు తెలియజేయండి మరియు ఈ క్లుప్తంగా, "ఉష్ణోగ్రత." రీనేమ్ నాకు పేరు లెట్ ఈ "ఉష్ణోగ్రత." నాకు ఈ పేరు లేదు లెట్. ఎందుకంటే, మళ్లీ,% f ప్రపంచవ్యాప్తంగా అంటే, "పాయింట్ విలువ తేలియాడే." నా వేరియబుల్ తో లేదు. కానీ అన్ని చోట్ల "ఉష్ణోగ్రత", కొంచెం wordy ఉంది నేను నా చిన్న "F" s కు తిరిగి వెళ్ళడానికి వెళుతున్న. ఇప్పుడు, నాకు ఇక్కడ నా విండోకు డౌన్ ముందుకు తెలియజేయండి. F2c చేయండి - ఇది మళ్ళీ స్వతంత్ర పేరు నేను ఈ ఫైలు ఇచ్చాడు. సంకలనం తెలుస్తోంది. నాకు f2c అమలు అయ్యేలా అనుమతించండి. నమోదు చేయండి. ఫారెన్హీట్ ఉష్ణోగ్రత - ఒక సులభమైన ఒక చేయండి చూద్దాం. 32. OK, సరిదిద్దండి. కానీ, నేను ఇప్పుడు మరిగే కోసం 212 లేకపోతే - భీకర. అన్ని కుడి. మీ TF ప్రయత్నిస్తే కాబట్టి, స్పష్టంగా, సరిచేయకుండా కనీసం రెండు విలువలు. కాబట్టి సమస్య ఇక్కడ ఏముంది? సరే, మీరు ఇప్పటికే విషయం ఏం మీ వేలు పెట్టి. కానీ ఎందుకు కేసు ఉంది? ఇక్కడ, నేను 9 ద్వారా విభజించబడింది 5 యొక్క గణిత చేయడం ఉన్నపుడు. కాబట్టి సంభావితంగా, ఆ సంపూర్ణ సరైన ఉంది. ఫార్ములా పూర్తిగా స్థిరంగా. కానీ కంప్యూటర్లు మాత్రమే ఖచ్చితంగా ఏమి మీరు ఏమి వారికి తెలియజేయండి. మరియు మేము సమర్థవంతంగా ఇక్కడ కంప్యూటర్ చెప్పుకుంటున్నారు ఉంది పూర్ణాంక 9 పూర్ణాంక 5 తిరగడానికి మరియు నాకు ఫలితంగా ఇస్తాయి. మీరు విభజన డేటా ఉపయోగించి లేనప్పుడు సమస్య, అయితే, ఉంది రకాల ఉత్పత్తి ఇన్పుట్లను అదే డేటా రకం. రెండు ఇన్పుట్లను రెండు ints ఉంటే కాబట్టి, అవుట్పుట్ అన్నారు ఒక పూర్ణాంకానికి అని. కాబట్టి 9 ద్వారా విభజించబడింది 5 పాయింట్ విషయం. కానీ ఏదో మార్చాలి సన్నిహిత పూర్ణాంక ఏది? కాబట్టి, ఇది నిజానికి 0 ఉంది. దశాంశ తర్వాత మేము సోమవారం చర్చించారు కనుక, ప్రతిదీ పాయింట్ కత్తిరించబడింది తీర్చుకుంటాడు. ఇది కేవలం దూరంగా విసిరిన తీర్చుకుంటాడు. కాబట్టి ఈ పూర్తి పొరపాటు అయితే, నేను కాబట్టి అలాగే కేవలం ఇక్కడ 0 ద్వారా ప్రతిదీ గుణించండి. ఇప్పుడు నేను రెండు మార్గాలు ఈ పరిష్కరిస్తాము. నేను ఈ పని చేయడు. 5.0 9.0 ద్వారా విభజించబడింది. సాంకేతికంగా, నేను కూడా అలా లేదు. ఇది కేవలం సంఖ్యలు ఫ్లోట్ ఒక చేయడానికి సరిపోతాయి చేస్తుంది - లేదా డబుల్ - ఇక్కడ దశాంశ పాయింట్ పెడతాడు. మీరు ఒక పూర్ణాంకం విభజించబడినప్పుడు ఇప్పుడు ఏమి జరుగుతుంది కాబట్టి ఫ్లోట్ లేదా డబుల్, కంప్యూటర్ గుర్తించడం జరగబోతోంది OH, వారిలో ఒక ఖచ్చితమైన ఉంది. నాకు కంటే మీరు ఎక్కువ PRECISION ఇచ్చే వైపు తప్పు లెట్ మీరు ఉద్దేశించిన. కనుక ఇది ఫలితంగా మార్పిడి అవుతుందని - అది ఒక ఫ్లోటింగ్ పాయింట్ విలువ అలాగే ఫలితంగా తిరిగి కనిపిస్తుంది. కాబట్టి ఆ పని చేస్తుంది. ఈ పని చేస్తుంది. మరియు మేము లో చూస్తారు మరొక విధానం ఉంది ఎక్కువ వివరాలు వచ్చే వారం. మీరు నిజంగా, ప్రోగ్రామర్ వంటి, కంప్యూటర్ తెలియజేయవచ్చు వాస్తవానికి ఒక డేటా రకాన్ని వంటి చికిత్సకు అది మరొక చేయబడేవి. నేను నిజానికి ఈ పని చేయడు. కుండలీకరణాలు, నేను ఓపెన్ లో లాగ (ఫ్లోట్), చెప్పగలదు బ్రాకెట్, దగ్గరగా బ్రాకెట్. మరియు ఈ అని ఏమిటి "CASTING." మళ్లీ, మరింత ఈ తదుపరి వారం. కానీ ఈ చెప్పటం కేవలం ప్రోగ్రాముల మార్గం కంప్యూటర్, అవును నేను 9 పూర్ణాంకం లేదా పొడవుగా ఉంది తెలుసు. నేను ఒక ఫ్లోటింగ్ పాయింట్ విలువ కాదు తెలుసు. కానీ ఎలాగైనా వంటి చికిత్స. కాబట్టి ఒక డేటా రకాన్ని నటింపచేయాలని మార్చేందుకు అర్థం నుండి ఇతర. స్పష్టముగా, ఈ కొంచెం అగ్లీ, కాబట్టి మనం వెళ్ళి ప్రపోజ్ చేస్తుంది కేవలం మార్చే అసలు సలహా తిరిగి ఈ విషయాలు మానవీయంగా పాయింట్ విలువలు ఫ్లోటింగును. ఇప్పుడు అది ఏమి క్లియర్ కేవలం సూపర్, మరియు ఎందుకంటే అది దృష్టిని అన్ని కాదు. కాబట్టి యొక్క ఇప్పుడు నా టెర్మినల్ విండో తిరిగి వదలి వేస్తారు. F2c చేయండి. నాకు ముందుకు వెళ్లి ఈ అమలు అయ్యేలా అనుమతించండి. మరియు, ఒక పక్కన, మీరు ఈ ఆదేశాలను టైప్ విసుగు కలుగుతుంది మళ్ళీ, మళ్ళీ, ఇక్కడ Linux వంటి కంప్యూటర్ గ్రహించే అందంగా స్మార్ట్ ఉంటాయి. నేను హిట్ ఉంటే, మేము నా పూర్తి చరిత్రలో వెళ్ళే ఆదేశాలు, అప్ మరియు డౌన్. ఇక్కడ ఈ సందర్భంలో, నేను f2c తయారు అమలు చేయడానికి అప్ వెళ్ళవచ్చు. నేను రెండవ క్రితం ఆ ఎందుకంటే నేను, కోప్పడ్డాడు అవుతోంది చేస్తున్నాను. ఇది తాజాగా ఇప్పటికే. కాబట్టి ఇప్పుడు నేను మళ్ళీ f2c అమలు చెయ్యవచ్చు. 32 ఫారెన్హీట్ ప్రయత్నించండి లెట్. ఇప్పుడు 212 ఫారెన్హీట్ ప్రయత్నించండి తెలియజేయండి. అయ్యో. పని ఉంది. ఇప్పుడు, ఈ మంచి ఉంది, అయితే ఇది ఒక చిన్న ఏకపక్ష భావించే నేను దశాంశ పాయింట్లు తర్వాత ఆరు అంకెలు చూపిస్తున్న చేస్తున్నాను. కుడి? మీరు TV లో వాతావరణ వ్యక్తి అయితే, మీరు ఒక doofus రకం ఉన్నారు మీకు ఉష్ణోగ్రత చదువుతున్న ఉంటే PRECISION ఈ స్థాయి. కాబట్టి యొక్క ఈ సులభతరం తెలియజేయండి. కాబట్టి యొక్క నిజానికి నా printf కు, ఇక్కడ వదలి వేస్తారు. మరియు అవును, నేను తేలుతూ మీరు. కానీ ఇప్పుడు PRECISION తెలుపుటకు కావలసిన. నేను కొద్దిగా క్లుప్తమైన ఉంటుంది వెళుతున్నాను. నా దశాంశ చేసిన తర్వాత ఒక సందర్భంలో ఇవ్వాలని, చెప్పడానికి వెళుతున్నాను. కాబట్టి బదులుగా% f సే కంటే, నేను% .1 f చెప్పడానికి వెళుతున్నాను. మరియు ఈ నాకు ఒక స్థానం ఇవ్వాలని అర్థం దశాంశ బిందువు తర్వాత. అన్ని కుడి. యొక్క మళ్ళీ ప్రయత్నించండి లెట్. నాకు అది కంపైల్ తర్వాత తిరిగి అమలు లెట్. ఇప్పుడు నేను 32 లో టైప్, మరియు నేను తిరిగి పొందండి మరింత సంక్షిప్తమైన విలువ. నేను, ఇప్పుడు, లో 212 టైప్, మరియు మరింత క్లుప్తమైన తిరిగి పొందవచ్చు విలువ అదే. మరియు మీరు printf చేయగలిగే ఇతర విషయాలను. మీరు నిజంగా సంఖ్య ఉండాలి ఎలా విస్తృత పేర్కొనవచ్చు. మీరు padding కావాలి ఉంటే, మీరు కుడి సమలేఖనం లేదా ఎడమ సమలేఖనం మీ సంఖ్యల అన్ని లేదా సెంటర్ విషయాలను ప్రయత్నించండి. కాబట్టి మీరు అక్కడ చేయవచ్చు చిన్న ఉపాయాలు ఉన్నాయి తెలుసుకుంటారు. కాని వారు, ఫార్మాట్ సంకేతాలు క్రిందికి పొంగు మేము అక్కడ ఇష్టపడుతున్నారు. కాబట్టి ముందుగా ఈ సమస్యను పరంగా. ఈ methodically ద్వారా వెళ్ళడానికి చాలా బోరింగ్ పట్టిక ఉంది. కానీ సి రచయితలు ఆలోచన లేదని గుర్తించడం నిర్వాహకులు అధిక కలిగి పేర్కొనే నియమాలు ప్రాధాన్యత ఇతరులు కంటే ఎక్కువ బైండింగ్ శక్తి. కాబట్టి గ్రేడ్ పాఠశాల, అదే మేము సాధారణంగా ఇది తెలుసు గుణకారం మరియు విభజనలను, అప్పుడు అదనంగా మరియు తీసివేత, అప్పుడు కొన్ని ఇతర అంశాలు. ప్రోగ్రామింగ్ ఒక ప్రపంచంలో, చాలా ఉంది విషయాల పెద్ద జాబితాను. మరియు ఈ ఇప్పుడు గుర్తుంచుకోవడం విలువ ఏదో కాదు. మీరు సుదీర్ఘ ముందు దానికి acclimated పొందుతారు. కానీ గ్రేడ్ పాఠశాల వలె కుండలీకరణాలు సాధారణంగా పరిష్కరించడానికి కు సూపర్ క్లియర్ ద్వారా పూర్వ సమస్యలు, కంప్యూటర్ మరియు ఉద్దేశించబడిన అలైక్ మానవ. కాబట్టి అక్కడ ఈ కొంచెం మోసగాడు షీట్ భావిస్తారు. కానీ ఆ వివరాలు చాలా మేము కొంత కాలం వరకు కూడా ఉంటుంది. అన్ని కుడి. ఇప్పుడు, యొక్క నిర్మించే వీలు మరియు ఈ వెర్రి చిన్న నుండి దూరంగా తరలించడానికి గణిత ఉదాహరణలు. ఇప్పటికీ అదే ఫండమెంటల్స్ ఉపయోగిస్తాయి, కానీ ప్రారంభం మేమే స్క్రాచ్ వంటి కొంచెం వ్యక్తం. కాబట్టి స్క్రాచ్ లో, మేము ఈ బూలియన్ భావాలు కలిగి ఉన్నాడు. మరియు ఇంగ్లీష్ లో, ఒక బూలియన్ వ్యక్తీకరణ ఏమిటి? ఒప్పు లేదా తప్పు. ఇది నిజమైన లేదా తప్పుడు కు మదింపు ఏదో ఉంది. 1 లేదా 0. ఆన్ లేదా ఆఫ్. మీరు కాల్ కావలసినట్లు. ఇప్పుడు స్క్రాచ్ లో, పజిల్ ముక్కలు ఇలా. ఆ మూడు యొక్క, అక్కడ అడుగున, కలయిక యొక్క పజిల్ ముక్కలు. ఒక ఉమ్మడిగా - ఖాళీ మరియు ఖాళీ విషయం. తరువాత రెండు బూలియన్ భావాలు దాని లోపల. కాబట్టి మీరు మరింత పొందడానికి గూడు బూలియన్ వ్యక్తీకరణలు చెయ్యవచ్చు బూలియన్ వ్యక్తీకరణలు క్లిష్టం. ఉదాహరణకు, శనివారం, మరియు అది మంచి ఉంది వాతావరణం, అప్పుడు బయట వెళ్ళి. ఆ వంటి అనియత లేదా ఏదో. కాబట్టి మీరు ఒక పైకి రావటానికి బూలియన్ వ్యక్తీకరణలు చేరవచ్చు దీని సమాధానం పెద్ద నిజం విలువ, ఆధారపడి ఉంటుంది చిన్న న. ఇప్పుడు, C లో, కృతజ్ఞతగా, ఈ మాపింగ్ ఉంది నిజానికి చాలా సాధారణ. కుండలీకరణాలు ఇక్కడ స్పష్టం సహాయం. && అంటే ఏమిటి "మరియు". కాబట్టి ఆ ఎలా మేము మొదటి నుండి C. ఆ బ్లాక్స్ మార్చేందుకు వెళుతున్న మరియు పరిస్థితులు కోసం మేము ఎడమ వైపు, స్క్రాచ్ చూసిన x తక్కువ ఉంటే అక్కడ వైపు, నేను C. అదే విధంగా వాటిని పేర్చడాన్ని చేయవచ్చు y కంటే, అప్పుడు ఇది. X y కంటే ఎక్కువ ఎల్స్, అప్పుడు ఇది. ఎల్స్ తార్కికంగా వారు చెప్పడానికి, సమానంగా ఉండాలి ఒకవేళ అది సమానం అని. కాబట్టి మేము ఇప్పుడు ఈ విషయాలు నిర్మించటానికి ప్రారంభించవచ్చు. కాబట్టి ఒక ఉదాహరణ చేయండి చూద్దాం. నాకు కోర్సు యొక్క వెబ్సైట్ మీద ఉన్న ఒక ఫైల్ తెరుచుకుంటుంది లెట్ నేను ముందుగానే రాశారు. ఆ nonswitch.c అంటారు. ఎందుకు ఒక్క నిమిషం లో మరియు మేము చూస్తారు. కాబట్టి ఈ ఫైలులో - nonswitch.c - మొదటి యొక్క మొత్తం బంచ్ ఉందని గుర్తించండి ఎగువన వ్యాఖ్యలు. అది ఏది, ఫైలు యొక్క పేరు వివరిస్తూ యొక్క లేదు, మొదలైనవి. మరియు ఇది స్పష్టంగా బూలియన్ మరియు ING యొక్క ఉపయోగాన్ని ప్రదర్శిస్తున్న - రెండు భావాలు conjoining. కాబట్టి ఈ ప్రోగ్రామ్ పనిచేస్తుంది ఎలా చూద్దాం. నా రెండు ఫైళ్లను, cs50.h మరియు stdio.h ఉన్నాయి. నేను క్రిందికి స్క్రోల్ ఉంటే, ఇప్పుడు, ప్రోగ్రామ్, ఇది చాలా కాలం ఉంది మేము ముందు వ్రాసిన, కానీ చాలా రీడబుల్ చేసిన కంటే. నేను మొదటి, లైన్ 18 న, యూజర్ ముద్రించవచ్చు "నాకు 1 మరియు 10 మధ్య ఒక పూర్ణాంకం ఇవ్వండి." ఈ విధంగా కుడివైపు లేదు. ఇప్పుడు నేను పూర్ణాంక పొందండి. కానీ GetInt తెలుసుకుంటారు - అందంగా సాధారణ. ఇది కేవలం ఒక పూర్ణాంకానికి పొందడానికి జరగబోతోంది. ఇది ఒక ఇది ఒక పూర్ణాంకానికి పొందండి పోకుండా వెళ్లి యొక్క స్ట్రింగ్ లేదా ఫ్లోట్. కానీ సరిహద్దు తనిఖీ ఎలాంటి చేయబోవడం లేదు. ఇది సంఖ్యలు మధ్య ఫిల్టర్ మాత్రం కాదు కొన్ని ఉంటాయి. కాబట్టి మనం ఆ అమలుచెయ్యాలి. కాబట్టి కేవలం నేను ఒక కలిసి చేయగల పేరు, స్క్రాచ్ లాగే రెండు భావాలు, నేను ఈ క్రింది విధంగా సి లో ఆ చేయవచ్చు. N కంటే ఎక్కువ లేదా 1 కి సమానమైన, మరియు n ఉంటే కంటే తక్కువ మరియు లేదా 3 సమానంగా, నేను చాలా ఏకపక్ష డిక్రీ నేను ఆ ఒక చిన్న సంఖ్య అని సంఖ్య. ఒక ప్రకటన కొరకు. N 4 మరియు 6 మధ్య ఎల్స్ ఉంటే, ముద్రణ "మీరు ఒక మాధ్యమం ఎంపిక "n 7 మరియు 10 ఉంటే ఎల్స్, ముద్రణ" సంఖ్య. మీరు ఎంపిక పెద్ద సంఖ్య. మీరు చెల్లని సంఖ్య ఎంచుకోండి "మిగతా ముద్రించు". " మేము ఉంటే తార్కికంగా, ఆ క్రింది ఎందుకంటే మా శ్రేణి అయిపోయిన. కాబట్టి మేము లేదా ఎక్కువ రాయడానికి ఎలా ఈ చెప్పుకోదగ్గ ఉంది తెలుసుకుంటారు ఒక గణిత తరగతి లో సమానంగా. కుడి? మీరు సాధారణంగా కింద లైన్ తో, ఈ మాదిరిగా డ్రా. కానీ నా కీబోర్డ్ లో ఇటువంటి కీ ఉంది. కాబట్టి ఎక్కువ వ్యక్తీకరణకు సి లో గుర్తు లేదా సమానంగా రెండు అక్షరాలు, మరియు కంటే తక్కువ గుర్తు లేదా సమానం అలాగే రెండు అక్షరాలు. అన్ని కుడి. నేను ఈ ప్రోగ్రామ్ రన్ చేస్తే, మీరు బహుశా దీన్ని ఏమి అంచనా చేయబోవడం. నేను ముందుకు వెళ్లి nonswitch చేస్తే, ఇవ్వండి. ఆపై nonswitch అమలు. నాకు 1 మరియు 10 మధ్య అనేక ఇవ్వండి. నేను 11 ఇవ్వడానికి వెళుతున్న. నేను ఒక చెల్లని ఎంపిక. నాకు సంఖ్య 3 ప్రయత్నించండి లెట్. నేను ఒక చిన్న సంఖ్య తీసుకున్నాడు. అక్కడ కాబట్టి చాలా సులభంగా. నేను ఈ కార్యక్రమం యొక్క ప్రవర్తనను మార్చడానికి మరియు అనుకుంటే బదులుగా ఒక చిన్న వివిధ ఏదో ఒకటి? నాకు ముందుకు వెళ్లి ఈ అని పిలవబడు. నాకు ఈ వదిలించుకోవటం లెట్. మరియు నాకు అని పిలవబడు ఉంటే (n == 42). మరియు నేను ముందుకు వెళ్లి print చెప్పడానికి వెళుతున్న "మీరు ఎంచుకున్న సరైన సమాధానం. "మిగతా మేము, ముందుకు వెళ్ళి, చెప్పడానికి వెళుతున్న printf ("మీరు ఎంచుకున్న తప్పు సమాధానం ");. సరే. కనుక. ఇప్పుడు, కొన్ని పాయింట్లు మేము ఇక్కడ చేయవచ్చు. ఒకటి, నేను మీరు భావిస్తే ఒక చిహ్నాన్ని టైప్ లేదు చాలా సమంజసమైన. మీరు ఉపయోగించని అవుట్ నేను సమానత్వం తనిఖీ ఉంటుంది, మారుతుంది సమాన సైన్. బదులుగా మీరు సమాన సమాన సైన్ ఉపయోగించండి. ఎందుకు కేవలం intuitively, కావచ్చు? అవును. ప్రేక్షకులు: [వినబడని] డేవిడ్ J. మలన్: సరిదిద్దండి. సమాన సైన్ ఇప్పటికే విధినిర్వహణ కోసం ఉపయోగిస్తారు. ఎవరో నిజంగా ద్వారా ఈ భావించింది. కాబట్టి ఇప్పుడు, అది సమానత్వం పరీక్షలు వచ్చినప్పుడు, మేము కలిగి మరింత స్పష్టమైన ఉంటుంది, మరియు చెప్పడానికి సమానం సమానం. ఒక అతి సాధారణ తప్పు దీన్ని ఉంది. మరియు, ఆఫీస్ అవర్స్ లేదా కొన్నిసార్లు వచ్చే వారంలో లేదా ఉంటే రెండు వారాల తర్వాత మీరు ఈ వంటి ఏదో ఒకటి మరియు 20 నిమిషాల గుర్తించడానికి ప్రయత్నిస్తూ, 10 ఇది కష్టాలను భీకర దోషం, ఆ ఒకటి గుర్తించలేరు ఈ తప్పు చేసిన వ్యక్తులు. కాబట్టి, చేయడం సులభం సూపర్. గోల్ ఇప్పుడు ఈ తప్పు పారద్రోలే ఉంది. ఇది నిజంగా ఏమి చెబుతున్నారో ఎందుకంటే ఈ, మూల్యాంకనం కాలేదు? N 42 గెట్స్ ఉంటే. కాబట్టి క్రియ ప్రజలు వ్యక్తీకరించడానికి, మాటలతో, ఉపయోగించడానికి అప్పగించిన భావన "అవుతుంది." ఉంది N 42 గెట్స్ చేస్తున్నాను. కాబట్టి ఆ n కు 42 కేటాయించి అర్థం. ఇప్పుడు నేను, కుండలీకరణాల్లో బూలియన్ వ్యక్తీకరణ కలిగి ఈ పరిస్థితి యొక్క లోపల, ఇది విలువ 42 ఉంది. కుడి? ఎందుకంటే మీరు లోపల అవ్ట్, మొత్తం నుండి విశ్లేషించడానికి ఉంటే సమాధానం, ఇప్పుడు, 42 ఉంది. నేను మీరు ప్రశ్న అడిగిన అయితే, "(42), ఉంటే" ఏమిటి ఇది నిజంగా జరిగింది? Well, బూలియన్ వ్యక్తీకరణలు మాత్రమే నిజమైన లేదా తప్పుడు ఉంటుంది. 1 లేదా 0. ఆన్ లేదా ఆఫ్. కాబట్టి మేము చేయటం కూడా అన్ని ఇక్కడ ఒక మూలలో కేసు ఉన్నారు "(42) ఉంటే" ఆకస్మిక, నేను చెప్పడం నేను. ఒక బూలియన్ విలువ కాదు. కాబట్టి కంప్యూటర్లు ఏమి, అయితే, ఇది సమానం ఉంటుంది 0 కాని ఏదైనా నిజమైన వ్యాఖ్యానాలు. 1. ఆన్. వారు అన్ని క్రియాశీలంగా సమానమైన ఉన్నారు. మాత్రమే విలువ మేము వీలుగా 0, లేదా తప్పుడు కీవర్డ్, చివరికి చూడండి, వాస్తవానికి FALSE. అది కాని సున్నా కాబట్టి అలా "ఉంటే (42)" వాస్తవానికి, నిజమే అవుతుంది. ఇక్కడ మరింత ఖచ్చితంగా, ఒక బూలియన్ విలువ నిజంగా అలా కాదు చాలా ఒప్పు లేదా తప్పు, కాని ఈ కోసం కేసు ఉంటే 0 లేదా సున్నా. తప్పుడు కాబట్టి తప్పుడు లేదా. మరియు మాకు అన్ని మరింత తనలో అనుమతించే parenthetical వ్యక్తీకరణ లో అవకాశాల. కాబట్టి మేము ఈ చెప్పడానికి, ఇంత జాగ్రత్తగా, అవసరం - అయితే (n == 42). మేము సమానత్వం ఒక పరీక్ష, పేర్కొనాలి ఎందుకంటే ఒక విలువ యొక్క ఒక అప్పగించిన. ఇక్కడ అంతగా ప్రాముఖ్యత లేని ఏమి ఉంది? ఈ కర్లీ జంట కలుపులు వాస్తవంగా అవసరమైన కాదు. నేను ఇక్కడ NIT-picky వాటిని చేయడం చేసిన. కానీ మీరు మాత్రమే ఒక మార్గం చేసే ఒక పరిస్థితి ఉన్నప్పుడు కోడ్, సౌలభ్యం వంటి, ప్రోగ్రామర్లు ఉపయోగించడానికి అవసరం లేదు కర్లీ జంట కలుపులు. ఇది కేవలం సౌందర్య కారణాల, ఇండెంట్ సంతృప్తి పరుస్తుంది, మరియు అప్పుడు కోడ్ మీ లైన్ వ్రాయండి. - మీకు కోడ్ రెండు పంక్తులు రాయాలనుకుంటున్నాను మాత్రమే ఉదాహరణకు, మిగిలిన printf ("బై!"). మీరు అనుకుంటే ఆ, ఈ విభజించబడింది. మీకు కావలసిన అన్ని ఇండెంట్, కానీ మీరు కలిగి వాస్తవం కర్లీ జంట కలుపులు ఉపయోగించకుండా కోడ్ రెండు పంక్తులు టైప్ ఈ కార్యక్రమం సరిగ్గా లేదా వాటిని అమలు కాదు అని అర్థం కూడా సరిగ్గా కంపైల్ లేదు. ఇప్పటివరకు, నిజాయితీగా ఉండటానికి, నేను ఉత్తమ అలవాటు కేవలం భావిస్తే కర్లీ జంట కలుపులు ఉపయోగించడానికి, మరియు వారు చేసే పొందుతారు సూపర్ క్లియర్ ఏం జరగబోతోంది. అలాగే, జనాంతికంగా - మీరు వారిలో ఉన్నారు ముఖ్యంగా ఉపయోగించే ఆన్లైన్ సిఫార్సు పుస్తకాలు లేదా వనరులను - శైలి యొక్క ఈ భావన లో ఉందని గుర్తించండి ప్రోగ్రామింగ్. మరియు కొన్ని నిజమైన కర్లీ కలుపు ఉంచేందుకు ఇష్టపడతారు ఇక్కడ ఒక లైన్. కొంతమంది ప్రజలు హాస్యాస్పదంగా పనులు ఇష్టపడతారు ఇక్కడ వారికి ఇష్టం. విషయానికి వస్తే ఏ తప్పు సమాధానం లేదు శైలి, కానీ ఈ తప్పు. అయితే కొందరు చేస్తున్నాయి. [నవ్వు] డేవిడ్ J. మలన్: నేను ఇప్పుడు ఈ మైల్, కేవలం ఎందుకంటే మీరు పుస్తకాలు లేదా ఆన్లైన్ లో విషయాలు లో చదవండి, మీరు పొందడానికి వెళుతున్న వివిధ వేర్వేరు అధ్యాపకులు నుండి సందేశాలు మరియు వివిధ రచయితలు. మరియు కేవలం క్రియాశీలంగా, వారు ఉన్నారు, గుర్తించలేరు సాధారణంగా సమానమైన, కానీ కలిగి. కాబట్టి ఈ సందర్భంలో, మనం వంకర న ప్రామాణికంగా చేస్తాము జంట కలుపులు ఎడమవైపు ఇక్కడ సరిచేసుకోవడం. అన్ని కుడి. కాబట్టి యొక్క ఇప్పుడు ముందుకు వెళ్లి ఈ అమలు అనుమతిస్తాయి, మరియు ఏమి చూడండి ఈ కార్యక్రమం. Nonswitch చేయండి. అప్పుడు nonswitch అమలు. నాకు 0 మధ్య పూర్ణాంకం ఇవ్వండి మరియు - సంబంధిత కాదు ఇకపై, కాని నేను ఏకపక్ష 42 చెప్పడానికి వెళుతున్నాను. మరియు నేను సమాధానం తీసుకున్నాడు. Well ఇప్పుడు, యొక్క వాస్తవానికి వేరొక దిశలో ఈ తీసుకుందాం. కొన్ని ఇతర సింటాక్స్ మేము లేదు అది మారుతుంది ఒక కార్యక్రమంలో ఉపయోగించవచ్చు. ఇక్కడ క్రియాశీలంగా అదే అని వాక్యనిర్మాణం యొక్క కొత్త భాగాన్ని యొక్క కానీ మనలోని వ్యక్తం మరొక విధంగా పరిచయం. కాబట్టి ఈ ఒక అని ఏమిటి "స్విచ్ ప్రకటన." మరియు ఒక స్విచ్ ప్రకటన క్రింది నిర్వహిస్తోంది. ఇది కుండలీకరణాల్లో, మీరు ఒక విలువను తీసుకుంటే న "స్విచ్". మీరు దాని విలువ ఆధారంగా భిన్నంగా ప్రవర్తించేందుకు కావలసిన. కాబట్టి ఈ n విలువ స్విచ్ అర్థం. మరియు దీని అర్థం ఏమిటి? Well n 1 లేదా 2 లేదా 3 ఉంటే, ముందుకు వెళ్ళి, "మీరు ముద్రించాలా ఒక పెద్ద సంఖ్య "ఎంపిక మరియు తరువాత విడిపోయారు. బ్రేక్ కారణం సి పనిచేస్తుంది మార్గంగా ఉంటుంది ఆ పోటీలు కేసు తెలుసుకుంటాడు త్వరగా, అది అమలు మొదలవుతుంది ఈ కింది కోడ్ అన్ని. నేను లైన్ 27 న ఇక్కడ కూడా నేను, కోడ్ యొక్క ఒక లైన్ కలిగి ఉంటారు, అది అమలు అవుతుంది. నేను ఇక్కడ మరొక లైనును, అది అమలు అవుతుంది. మరో లైన్ ఇక్కడ, అది అమలు అవుతుంది. కార్యక్రమం మాత్రమే క్రింద ఏమి అమలు stops నేను స్పష్టంగా వర్తించే కేసు ప్రకటన "విడిపోయారు." అని సో రాంగ్. కుడి, ఈ సందర్భంలో, ఫలితంగా. కేస్ 4 లేదా 5 లేదా 6, అదే విధంగా, అన్నారు ఒక సందేశాన్ని ముద్రించడానికి. ఈ సందర్భంలో, మీడియం సంఖ్య. బ్రేక్. కేస్ 7, 8, 9, 10, దాన్ని ముద్రించడానికి జరగబోతోంది "మీరు ఒక పెద్ద ఎంపిక సంఖ్య. "బ్రేక్. మరియు తర్వాత "డిఫాల్ట్" అనే కీవర్డ్ వాచ్యంగా ఉంది ఆ ప్రభావవంతంగా నిర్మించడానికి "మిగతా" వంటిది. మేధస్సును కాబట్టి కొత్త సింటాక్సు, కానీ, అన్ని కొత్త ఇక్కడ ఏమీ. ఇది కేవలం స్క్రాచ్ వంటిది. ఇంకా, ఇంకా ఉంటే, ఉంటే విధమైన బ్లాక్ యొక్క, ఉంటే. కాబట్టి ఈ ప్రోగ్రామ్ యొక్క స్విచ్ సంస్కరణ. కానీ మేము ఇక్కడ సంఖ్యలు తో ఆయన గమనించి. కేవలం చూపించడానికి, నాకు రెండవ వెర్షన్ ప్రారంభం లెట్ కొంచెం కాంక్రీటు ఏదో. కాబట్టి ఇక్కడ బదులుగా తరగతులు ఉంటాయి. మీరు పూర్ణాంకాలపై కేవలం స్విచ్లు ఉపయోగించవచ్చు అవుతుంది, కానీ అక్షరాలు. అన్ని డేటా రకాలు, కాని కనీసం పాత్రల. ఇక్కడ, మేము ఏదో వంటి చేయగల సి విలువ ఆ ఉంటే యూజర్, GetChar ఫంక్షన్ ఉపయోగించి, లైన్ 19, లో టైప్ రాజధాని A లేదా ఒక చిన్న, యొక్క ఒక గ్రేడ్ వంటి దానిని వ్యాఖ్యానిస్తారు వీలు ఉంది మరియు వారు ఒక అద్భుతమైన గ్రేడ్ ఎంపిక చెప్పారు. మరియు డౌన్ స్విచ్ ప్రకటన పాటు మేము కలిగి లేదు "B" మరియు "C" s, మొదలైనవి కోసం కేసులు. కానీ ప్రస్తుతం ఒక ఇతర విషయం బయటకు వచ్చు తెలియజేయండి. మరియు తిరిగి, రకమైన ద్వారా ఎగురుతున్న ఈ ఉదాహరణలు కొన్ని. కానీ మేము ఇప్పుడు, వాటిని దరఖాస్తు చేసుకోవచ్చు ఆ నిజంగా అలా ఉంది - లేదా నిజంగా, ఇప్పుడు వాటిని అనువదిస్తుంది - C. కు నాలో ముందుకు వెళ్లి మనం. నేను ఒక కొత్త ఫైల్ తెరుచుకుంటుంది వెళుతున్న. నేను ఉన్నాయి చేయ బోతున్నాను. మరియు నేను Int ప్రధాన (తప్ప) చేయ బోతున్నాను. నాకు loop.c. ఈ ఫైలు సేవ్ చేసేలా జస్ట్ ఒక ఉదాహరణగా. నేను ముందుకు వెళ్లి ఈ క్రింది వాటిని వెళుతున్న. నేను చాలా శ్రమతో కార్యక్రమం రాయాలనుకుంటున్నాను. 10 కాబట్టి. దీన్ని యొక్క లెట్. 9. అన్ని కుడి. మీరు ప్రోగ్రామింగ్ లో ఇలా మొదలు వెంటనే, మీరు బహుశా ఏదో తప్పు. కానీ మేము ఏ విధంగా అయినా అక్కడ ప్రారంభించగలరు. అయ్యో. వాస్తవానికి తప్పు. 7. 6. 5. 4. ఏమీ మేము 0 to వచ్చిన జరిగే అవకాశముంది. 3. 2. 1. సరే. 0. తొలగించు. అన్ని కుడి. కాబట్టి 0 తిరిగి. కాబట్టి ఈ ప్రోగ్రామ్ స్పష్టంగా దానిని చాలా చేయడానికి జరగబోతోంది మందమైన దీన్ని జరగబోతోంది చెప్పారు. ఇది ఆ అన్ని ముద్రించడానికి జరగబోతోంది పై నుంచి కిందకు విలువలు. నాలో లూప్ ఉందని తెలియజేయండి. మరియు తర్వాత - అయ్యో. లూప్ చేయండి. నేను తప్పు డైరెక్టరీలో ఉంది. ఇప్పుడు నాకు లూప్ అమలు అనుమతిస్తాయి. నమోదు చేయండి. హుర్రే. మంచిపని. నైస్, దీర్ఘ కార్యక్రమం. All right, కానీ ఇప్పుడు బాగా దీన్ని చూద్దాం. మీరు ఒక మళ్ళీ వెతికినా ఉపయోగించి ప్రారంభమైంది జస్ట్, స్క్రాచ్ లాగే నిర్మించేందుకు, బదులుగా కేవలం కాపీ మరియు అన్ని అతికించడానికి పజిల్ ముక్కలు, నాకు ఈ విషయం పరిచయం తెలియజేయండి. కాబట్టి సి లో, వివిధ మళ్ళీ వెతికినా నిర్మాణాలు ఉన్నాయి ఇది ఒకటి ఈ కనిపిస్తోంది. ఒక "కోసం" లూప్ రెండు సెమికోలన్లు వేరు మూడు విషయాలు ఉన్నాయి. లోపల లూప్ యొక్క శరీరం యొక్క మరియు తరువాత, మాట్లాడటానికి - కర్లీ జంట కలుపులు యొక్క stuff లోపల - మేము మళ్లీ మళ్లీ ఏదో ఒకటి చెయ్యాలి. నేను తెరపై ఇక్కడ ఏం, ఈ ఉంది మాటప్రకారము ఒక వ్యాఖ్య. / / A comment వస్తుంది ఇక్కడ అర్థం. ఈ కోడ్ కాదు. ఈ నాకు కేవలం ఆంగ్లములో వివరణ, మానవుడు. కాబట్టి initializations, పరిస్థితులు మరియు నవీకరణలు. Well, ఎలా ఈ పనులు చూద్దాం. ఇది నాకు ఈ క్రింది విధంగా ఈ కార్యక్రమం తిరిగి అనుమతిస్తుంది. కోసం - ఇక్కడ నా లూప్ వస్తుంది - నేను Int - ఇక్కడ "నేను" అనే వేరియబుల్ వస్తుంది - 10 initialized పొందుతాడు. నా ప్రారంభ ఉంది. నేను చాలా కాలం "నేను" కంటే ఎక్కువ లేదా ఈ లూప్ చేయాలనుకుంటున్నారా 0 సమానంగా. మరియు ఈ లూప్ యొక్క ప్రతి పునరావృతం న, నేను అనుకుంటున్నాను నేను -. కాబట్టి మేము సోమవారం + + చూసింది. - వ్యతిరేకమైనది. ఇది 1 విలువ decrements. ఈ లూప్ యొక్క లోపల, నిజానికి చేయాలని. నేను printf వంటి ఏదైనా చెప్పండి వెళుతున్న. ఈ స్పష్టంగా కేవలం ఎందుకంటే నేను, ఇప్పుడు 10 చెప్పాలనుకోవడం లేదు అదే విలువ ముద్రించడానికి వెళుతున్నారు. నేను బదులుగా, బహుశా ముద్రించడానికి ఏం కోరుకుంటున్నారు? అవును. కాబట్టి "నేను." కాబట్టి% d, i. నేను ముందు ఆ ఆలోచనల ఒక దొంగతనం వెళుతున్న - ఫార్మాట్ సంకేతాలు కోసం ఈ ప్రత్యామ్నాయం - ఆపై డౌన్ ఇక్కడ, దిగువన, నేను, 0 తిరిగి ఉంటాం మంచి కొలత కోసం. కానీ ఇప్పుడు, నేను మరింత సంక్షిప్తమైన ప్రోగ్రామ్ను. ఇది కేవలం కొన్ని పంక్తులు, మరియు లేదు కొన్ని 10 లేదా 11 పంక్తులు. నాకు ఇక్కడ డౌన్ నా ప్రాంప్ట్ వెళ్ళనిస్తున్నారని. రీమేక్ లూప్. లూప్ తిరిగి. మరియు అది ఒకే విధంగా కనిపిస్తుంది. ఇప్పుడు, ప్రోగ్రామ్ no more ఆసక్తికరంగా ఉందని. కానీ ఇప్పుడు నేను ఈ వంటి ఏదో టైప్ చెయ్యవచ్చు. నేను 100 కు మార్చవచ్చు. నేను నా ప్రోగ్రామ్ మళ్ళీ కంపైల్ చెయ్యండి చేయవచ్చు. మరియు నేను నా ప్రోగ్రామ్ తిరిగి అమలు చేయవచ్చు. ఇప్పుడు అది నేటి కంప్యూటర్లలో వేగమైన వెళుతుంది. అయితే నా దగ్గర - మరియు వాస్తవానికి, నా scrollback బఫర్ కాదు కూడా అంత దూరం వెళ్ళి. అక్కడ మేము వెళ్ళి. కాబట్టి అక్కడ మేము అన్ని 100 ఉన్నాయి. కానీ ఇక్కడ తప్పులు చేయడం సులభం. ఊహించిన ప్రవర్తన ఉంటుంది ఏమి నేను అనుకోకుండా అలా? కాబట్టి ఇది అనంతమైన అనుకుని. కాబట్టి కంప్యూటర్ ప్రవర్తిస్తుంది లేదో యొక్క చూసేలా. నాలో ముందుకు వెళ్లి లూప్ తయారు చేద్దాము. నాకు లూప్ అమలు అనుమతిస్తాయి. కాబట్టి యొక్క ఒక క్షణం లో ఆ వచ్చి తెలియజేయండి. మేము రన్ తెలియజేస్తాము. ఎందుకంటే మేము తక్కువ, ఏ కూడుట చేయాలి? బహుశా కనీసం 2 బిలియన్, మేము అనేక బిట్స్ ఉంటే, మరియు మేము విలువలను ఉపయోగిస్తున్నారు. కాబట్టి యొక్క ఇక్కడ తిరిగి వెళ్ళు తెలియజేయండి. లూప్ల ఈ రకాల కాకుండా, మేము అయితే మనం పిలుస్తున్న కలిగి ఉచ్చులు. కాబట్టి, కేవలం స్క్రాచ్ లో వంటి, మీరు శాశ్వతంగా ఉండేది బ్లాక్స్, మరియు మీరు పదేపదే బ్లాక్స్ ఉంది. అదేవిధంగా, సి లో, మీరు ఇతర మార్గాలు ఉన్నాయి మీరే వ్యక్తం. కాబట్టి మీరు అనుమతించే సమయంలో లూప్ యొక్క ఈ భావన కలిగి మీరే భిన్నంగా కొద్దిగా వ్యక్తం. మరియు తర్వాత మీరు ఒక డో-సమయంలో లూప్ అని ఏదైనా కలిగి ఇది కూడా కొంచెం విభిన్నంగా నిర్వహిస్తోంది. మరియు మేము సమయంలో కాకుండా ఈ బాధించటం చేస్తాము. కానీ యొక్క ఇక్కడ ఈ చివరి పరిశీలించి అనుమతిస్తుంది. మేము వెళ్లి ఉంటే - ఇప్పటికీ నడుస్తున్న. ఇది చాలా అనంతం ఉంది. కాబట్టి నాకు అనుకూలంగా మార్చడం వీడలేదు, మరియు మేము ఎలా వాస్తవానికి చూపించు కొంచెం సమర్థవంతంగా వినియోగదారు ఇన్పుట్ను నడిపిస్తాయి. ఇది ఒక అందమైన చిన్న ప్రోగ్రామ్. మరియు ఇక్కడ మేము ప్రధాన, ఒక పూర్ణాంకానికి n ప్రకటనను, ఉన్నాయి. నాలో n అనే వేరియబుల్ ఇస్తాయి. ఇప్పుడు నేను అక్షరాలా సే "అలా." మరియు నేను ఓపెన్ వంకర పొందారు జంట కలుపు, దగ్గరగా వంకర కలుపు. మరియు సరైన ఆ తర్వాత, గమనించి, అది అయితే n కంటే తక్కువ 1. కాబట్టి గమనించి ఈ పంక్తులు - 19 24 - సమిష్టిగా ఒక డో-సమయంలో లూప్ కంపోజ్. మరియు తిరిగి, కొత్త సింటాక్సు, ఒక కొత్త ఆలోచన. ఇది పదము మళ్ళీ వెతికినా యొక్క మరొక విధంగా చెప్పవచ్చు. కాబట్టి ఈ ఏమి చేస్తుంది? N 1 కంటే తక్కువ ఉన్నప్పుడు క్రింది చేయండి. నేను ఏమి అనుకుంటున్నారు? నేను మీరు నాకు సానుకూల పూర్ణాంక ఇవ్వాలని కోరుతుంది. అప్పుడు నేను నిజంగా వినియోగదారు నుండి ఒక పూర్ణ సంఖ్య ప్రయత్నించండి. కానీ ఇక్కడ క్రియల క్రమం పరంగా, ఎందుకంటే పరిస్థితి ఇక్కడ డౌన్ ఉంది, నేను అప్పుడు తనిఖీ వెళుతున్న, n ఉంది 1 కంటే తక్కువ? కాబట్టి ఆ యూజర్ అనుకుందాం - - ఈ విధంగా డిమాండ్ తర్వాత విలువ 0 లో రకాలు. ఈ పరిస్థితి సత్యం లేదా అసత్యం ఉండబోతుంది? సరే, నిజానికి నిజమైన చేస్తాడు. N 0, మరియు 0 1 కన్నా తక్కువ కాబట్టి. కాబట్టి ఏ అర్థం లేదు? మళ్ళీ చేస్తున్నాయి. మళ్ళీ చేస్తున్నాయి. మళ్ళీ చేస్తున్నాయి. ఒక్కసారి మాత్రమే ఆ పరిస్థితి తప్పుకు మదింపు. నేను 42 లో టైప్ ఉంటే. ఏ Well, 42 కంటే తక్కువ 1 లేదు. కాబట్టి ఈ లూప్ అమలు చేయబడుతుంది. కాబట్టి ఆ సమయంలో, కార్యక్రమం, ధన్యవాదాలు యున్నది ఈ కేసులో 42. మీరే వ్యక్తం ఈ విధంగా ఉన్నాయి ఇప్పుడు ఆ - మేము పూర్తి ఈ కోసం వేచి కాదు. ఇది కొంత సమయం పడుతుంది చెప్పారు. బహుశా, తదుపరి సారి కంటిన్యూడ్. కానీ ఇప్పుడు, మీరు ఒక అర్థం ఆశాజనక సామర్ధ్యాన్ని కలిగి ఉంటాయి గీక్ హాస్యం bit. క్షమించండి. ఈ కంప్యూటర్ సైన్స్ లో హాస్యం ప్రతినిధి కాదు వరల్డ్, కానీ అందమైన ఉంది. గమనించండి న [నవ్వుతూ] లెట్స్ ముగింపు. మరియు మేము సోమవారం మీరు చూస్తారు. [అప్లాజ్]