ZAMYLA చాన్: ఇది ఒక పుష్పము, Zamyla ఉంది. నేడు, మేము అమలు చేయబోతున్నామని మారియో, మేము మారియో డ్రా పేరు అతనికి ఒక పూర్తి పిరమిడ్ జంప్ ఓవర్. యొక్క విచ్ఛిన్నం లెట్ ఈ సమస్య కోసం ఉప పనులు. మొదటి, మేము వినియోగదారును ప్రాంప్ట్ కావలసిన పిరమిడ్ ఎత్తు. మరియు తర్వాత మేము నిర్ధారించుకోవాలి ఆ ఇన్పుట్ చెల్లదు. మరియు తర్వాత మేము చూడాలని పిరమిడ్ డ్రా అనుకుంటున్నారా. కాబట్టి యొక్క ప్రాంప్ట్ గురించి మాట్లాడటానికి వీలు వినియోగదారు ఇన్పుట్ నిర్ధారించడంలో. ఇది వంటి ఏదో చూడండి ఉండవచ్చు ఈ ఒక డో-సమయంలో లూప్ అని ఒక యూజర్ అడుగును పూర్ణాంకం మరియు అప్పుడు మాత్రమే రిపీట్స్ ఆ పూర్ణాంక చెల్లదు. కాబట్టి ఈ పరిస్థితి ఉండాలి? ఈ కోసం, తిరిగి వెళ్ళి తెలపండి వివరణకు. బాగా, స్పెక్ ఏ చెల్లుబాటు అయ్యే మాకు చెబుతుంది ఎత్తు 0 మరియు 23 మధ్య అని అన్నారు, కలుపుకొని. కాబట్టి ఆ చెల్లని అర్థం ఎత్తు కంటే తక్కువ 0 అవతరిస్తుంది లేదా 23 కంటే ఎక్కువ. కాబట్టి ఇప్పుడు మేము ఈ సమాచారాన్ని కలిగి, యొక్క మా పరిస్థితి రూపకల్పన అనుమతించే. కానీ మేము జాగ్రత్తగా ఉండాలి, ఎందుకంటే ఇప్పుడు మేము కలిగి మేము అంచనా కావలసిన రెండు బూలియన్. ఇక్కడ నేను మీరు అందించిన ఒక నిజం పట్టిక తో. ఈ మాకు రెండు పడుతుంది అనుమతిస్తుంది బూలియన్, బూలియన్ ఒక మరియు రెండు. మరియు మేము గాని bool1 విశ్లేషించవచ్చు మరియు bool2 లేదా bool1 లేదా bool2. సో తేడా ఏమిటి మధ్య మరియు మరియు లేదా? బాగా, bool1 మరియు bool2 రెడీ మూల్యాంకనం నిజమైన ఉంటే మరియు మాత్రమే రెండు బూలియన్స్ నిజమైన ఉంటే, లేదా ఆపరేషన్ అయితే నిజమైన ఉంటుంది గాని ఒక ఉంటే బూలియన్ లేదా రెండు నిజమైన. ఈ లో మెదడు తో, మీరు గుర్తించడానికి లేదో చూడటానికి దానికి తగిన షరతు చెల్లని n కోసం మీ డో-సమయంలో లూప్ అవతరిస్తుంది. అంతటితో ప్రాంప్ట్ మరియు చెల్లుబాటు చేసిన పిరమిడ్ ఎత్తు కోసం యూజర్ వారు కావలసిన. కాబట్టి ఇప్పుడు, అది మాకు ఇష్టం పిరమిడ్ డ్రా. ఈ పూర్తి పిరమిడ్ సమస్య కొద్దిగా కనిపిస్తాయని ఈ వంటి, మేము ఒక ఎడమ పిరమిడ్ కలిగి ఉన్న కొన్ని ఖాళీ, మరియు అప్పుడు ఒక కుడి పిరమిడ్. కాబట్టి యొక్క ఒక చిన్న బిట్ డౌన్ ఈ బ్రేక్ వీలు. నేను నా టెక్స్ట్ ఎడిటర్ వెళ్ళండి ఉంటే, ఇక్కడ నేను చేసిన మాకు ఒక ఎడమ సమలేఖనమైంది పిరమిడ్ డ్రా. కానీ అలా ఉండదు. మనం చేయాలనుకుంటున్నారా మేము కావలసిన ఉంది మొదటి ఒక కుడి సమలేఖనమైంది పిరమిడ్ సృష్టించడానికి. కాబట్టి కేవలం పుష్, దీన్ని సైడ్ పాటు నా హష్లు, నేను కొన్ని అక్షరాలు ఉంచాలి వెళుతున్న మధ్య కేవలం ఈ చుక్కలు లో. అప్పుడు నేను రెండు చాలు వెళుతున్న తదుపరి లైన్, ఆ పంక్తిలో ఒక. మరియు ఇక్కడ నేను ఒక కలిగి కుడి సమలేఖనమైంది పిరమిడ్. ఆ తరువాత, నేను వెళుతున్న పై వరుస తిరిగి వెళ్ళి మరియు ఖాళీ, ప్రవేశపెట్టింది వివరాలను, రెండు ఖాళీలు చొప్పున ఉంది. అప్పుడు నేను పూరించడానికి వెళుతున్న పిరమిడ్ ఇతర వైపు. నేను రెండవ వరుసలో వెళ్ళడానికి వెళుతున్న వ్రాయండి విరామాన్ని రెండు ఖాళీలు ఆపై రెండు hashes. మళ్లీ మూడవ వివాదం రెండు ఖాళీలు ఖాళీ మరియు మూడు హష్లు కోసం. మరియు చివరిలో, రెండు ఖాళీలు ఖాళీ మరియు నాలుగు హష్లు కోసం. సో ఒక పూర్తి ఏమి పిరమిడ్ వంటి కనిపిస్తుంది. కోర్సు యొక్క, మేము అనుకుంటున్న విధంగా ఈ చుక్కలు. కాబట్టి మేము ఈ స్థానంలో చూడాలని కొన్ని ఖాళీలు ఉంచడం ద్వారా చుక్కలు. ఒకటి, రెండు, మొదటి పంక్తిలో మూడు. ఒకటి, రెండవ రెండు. మరియు మూడవ లైన్లో ఒకటి. కాబట్టి ఈ మేము ఉంటే ఏమి చేస్తారు అని ఉంది కేవలం ఒక పూర్తి పిరమిడ్ అనుకున్నారు మా టెక్స్ట్ ఎడిటర్ లో, చెప్పటానికి. కాబట్టి యొక్క ఈ తీసుకుందాం, నమూనాలను అర్థం మరియు కొన్ని pseudocode దానిని పైగా మారుస్తాయి. పిరమిడ్ ప్రతి వరుస కోసం, మేము కావలసిన వదిలి పిరమిడ్ ప్రింట్ మరియు అప్పుడు ఖాళీ మరియు సరైన పిరమిడ్. ఎడమ పిరమిడ్, మేము ప్రింట్ ఖాళీలు యొక్క అవసరమైన మొత్తం, హష్లు తరువాత. అప్పుడు మేము ఖాళీ, ప్రింట్ ఇది కేవలం రెండు ఖాళీలు ప్రతిసారీ. మరియు కుడి పిరమిడ్ లో, మేము ప్రింట్ హష్లు అవసరమైన సంఖ్య. రెండవ వరుస కోసం, మేము నిర్వహించిన అదే ఖచ్చితమైన ప్రక్రియ. మేము ఎడమ కోసం ఖాళీలు ప్రింట్ పిరమిడ్, అవసరమైన మొత్తం హష్లు, ఖాళీ, రెండు ఖాళీలు, మరియు అప్పుడు కుడి పిరమిడ్ హష్లు. యొక్క నమూనా పరిష్కరించడానికి వీలు ఎడమ పిరమిడ్. ప్రయోజనాల కోసం నేను కలిగి ఉంటే, ఈ ఉదాహరణ యొక్క ఎత్తు ఎనిమిదేళ్ళ అభ్యర్థించిన యూజర్, అప్పుడు నా మొదటి వరుసలో ఒకటి హాష్ మరియు ఏడు ఖాళీలు వుంటుంది. నా రెండవ వరుసలో వుంటుంది రెండు హష్లు, ఆరు ఖాళీలు. మూడవ వరుసలో మూడు hashes, ఐదు ఖాళీలు. మీరు బహుశా దీన్ని చేయవచ్చు ఎనిమిదేళ్ళ ఎత్తు మీరే ఎన్ని మరియు ప్రతి వరుస కోసం గుర్తించడానికి హష్లు మరియు ఎన్ని ఖాళీలు మీరు అవసరం. కాని మేము చేయాలనుకుంటున్నారా ఉంది మేము అది నైరూప్య అనుకుంటున్నారా. కాబట్టి నేను ఏ n వ వరుస, ఎన్ని అడుగుతుంది హష్లు మరియు మేము ఎన్ని ఖాళీలు చేయాలి? ఇప్పుడు, మీరు నిర్ణయించడానికి ఎన్ని హష్లు నమునాను మరియు మీరు అవసరం ఎన్ని ఖాళీలు ఇచ్చిన ఎత్తు కోసం ఏ n వ వరుస, జాగ్రత్తగా గుర్తుంచుకోండి ఎలా మీరు సూచి చేస్తున్నారు. నేను ఈ అర్ధం రోజువారీ లో ఉంది జీవితం మాకు చాలా ఒక ద్వారా లెక్కింపు ప్రారంభించండి. కాబట్టి మొదటి వరుస సంఖ్య ఒకటి ఉంటుంది. మరియు రెండవ వరుసలో వరుస ఉంటుంది సంఖ్య రెండు, అందువలన న మొదలగునవి. కానీ కంప్యూటర్ సైన్సు మరియు CS50, మేము సున్నా-సూచి. కాబట్టి మేము నిజానికి సున్నా వద్ద లెక్కింపు మొదలు. కాబట్టి మొదటి వరుసలో చేస్తాను వరుస సంఖ్య సున్నా. మరియు రెండవ వరుసలో వరుస సంఖ్య ఒకటి ఉంటుంది. కనుక నేను ఎనిమిది ఎత్తులోనూ ఉండేది నా పిరమిడ్, n యొక్క ఆపై గత విలువ నిజానికి ఏడు మరియు ఎనిమిది కాదు ఉంటుంది. కాబట్టి దీని గురించి జాగ్రత్తగా ఉండండి. మరియు మీరు నిర్ణయించడానికి చేస్తున్నారు ఉన్నప్పుడు తెలుసుకోవాలి మీ సున్నా-సూచిక లేదో మీ నమూనా లేదా ఒక-సూచిక అలాగే. కాబట్టి ఇప్పుడు మేము కలిగి ఎడమ పిరమిడ్ నమూనా, మనం గుర్తించడానికి అవసరం విరామాన్ని నమూనా. అదృష్టవశంగా, ఈ నిజంగా సులభం. ఇది ఎల్లప్పుడూ రెండు ఖాళీలు వార్తలు. కాబట్టి ఇప్పుడు మేము కుడి నమూనా వెళ్లండి. మొదటి పంక్తిలో ఒక హాష్ ఉంటుంది. రెండవ వరుసలో, రెండు. మూడవ వరుసలో, మూడు. అందువలన న మొదలగునవి. మరలా, ఏ నైరూప్య కోసం గుర్తించడానికి n మరియు ఎన్ని హష్లు ఏ ఎత్తు మరియు ఎన్ని ఖాళీలు ప్రతి వరుసలో ఉండాలి. అలాగే. కాబట్టి మేము తెలిసిన ప్రతి వరుసలో మనం కొన్ని ప్రక్రియ నిర్వహించడం అవసరం. మేము ఆ చేయాలి? Well, మేము లూప్ నిర్మాణం కోసం ఉపయోగిస్తారు, ఒక ప్రారంభ ఉండేవారు, ఒక పరిస్థితి, మరియు ఒక నవీకరణ. ఉచ్చులు ఉపయోగించవచ్చు కోసం ప్రక్రియలు పునరావృతం. నేను అది హలో అంతరంలో, లూప్ నా ప్రపంచ 50 సార్లు, ఈ వంటి ఏదో చూస్తారు, పేరు నేను సున్నా నా వేరియబుల్ ప్రారంభించడం. పరిస్థితి నేను 50 కంటే తక్కువ అని. ఆపై నవీకరణ అది ఉంది ఒకటి ప్రతిసారీ ఇంక్రిమెంట్. కాబట్టి ఈ ఉంటుంది ఏమి చేస్తారు వరుసగా హలో ప్రింట్, ప్రపంచం 50 సార్లు. ఇప్పుడు, నేను iterate కోరుకున్నారు సే పిరమిడ్ ఎత్తు మీద. అప్పుడు బదులుగా హార్డ్ కోడింగ్ పరిస్థితి కొన్ని విలువ, నేను వేరియబుల్ ఎత్తు ఉపయోగించండి. సో ఈ ఎలా iterate ఉంది ఎత్తు ప్రతి వరుసలో మీద. నేను లోపల ఏదో ఒకటి చెయ్యాలి ఆ లూప్ యొక్క శరీరం యొక్క. మేము ఏమి చెయ్యాలనుకుంటున్నారు లూప్ యొక్క శరీరం లోపల? Well, మేము ముందు సూచించిన, మేము కావలసిన ప్రదేశాలు మరియు హష్లు ప్రింట్ తరువాత ఎడమ పిరమిడ్ మరియు ముద్రణ కోసం రెండు ఖాళీలు ఆపై హష్లు ప్రింట్. కాబట్టి మేము ఇప్పటికే ఆ కనుగొన్నారు చేసిన. కాబట్టి మేము పూరించడానికి ప్రారంభించవచ్చు మా కార్యక్రమం మరింత చాలా. ఇక్కడ నేను లూప్ ఒక బాహ్య కలిగి పిరమిడ్ లో ప్రతి వరుసలో మీద iterates. మరియు ఆ శరీరం లోపల నేను వెళుతున్న పదేపదే ఖాళీలు ప్రింట్, పదేపదే హాష్లు, ఆపై అంతరం ఆపై కుడి పిరమిడ్ హాష్లు, ఆపై, చివరకు, ఒక కొత్త లైన్ తదుపరి వరుస ప్రారంభించడానికి. అంతటితో ప్రాంప్ట్ చేసిన ఇన్పుట్ వినియోగదారుని. మేము అది చెల్లదు అని మీరు చేసిన. మరియు తర్వాత మేము పిరమిడ్ డ్రా చేసిన. కాబట్టి మారియో విజయవంతంగా చెయ్యవచ్చు పిరమిడ్ ఎక్కి. నా పేరు Zamyla ఉంది. మరియు ఈ CS50 ఉంది.