# ఫంక్షన్లతో సరదా ## సూచనలు ఈ అసైన్మెంట్‌లో, మీరు వివిధ రకాల ఫంక్షన్లను సృష్టించడం ప్రాక్టీస్ చేస్తారు, మీరు నేర్చుకున్న జావాస్క్రిప్ట్ ఫంక్షన్లు, పరామితులు, డిఫాల్ట్ విలువలు మరియు రిటర్న్ స్టేట్మెంట్ల గురించి కాన్సెప్ట్‌లను బలపరిచేందుకు. `functions-practice.js` అనే జావాస్క్రిప్ట్ ఫైల్ సృష్టించి, క్రింది ఫంక్షన్లను అమలు చేయండి: ### భాగం 1: ప్రాథమిక ఫంక్షన్లు 1. **`sayHello` అనే ఫంక్షన్ సృష్టించండి** ఇది ఎలాంటి పరామితులు తీసుకోదు మరియు కేవలం "Hello!" ను console లో లాగ్ చేస్తుంది. 2. **`introduceYourself` అనే ఫంక్షన్ సృష్టించండి** ఇది `name` అనే పరామితిని తీసుకుని "Hi, my name is [name]" అనే సందేశాన్ని console లో లాగ్ చేస్తుంది. ### భాగం 2: డిఫాల్ట్ పరామితులతో ఫంక్షన్లు 3. **`greetPerson` అనే ఫంక్షన్ సృష్టించండి** ఇది రెండు పరామితులు తీసుకుంటుంది: `name` (అవసరం) మరియు `greeting` (ఐచ్ఛికం, డిఫాల్ట్ "Hello"). ఈ ఫంక్షన్ "[greeting], [name]!" అని console లో లాగ్ చేస్తుంది. ### భాగం 3: విలువలు రిటర్న్ చేసే ఫంక్షన్లు 4. **`addNumbers` అనే ఫంక్షన్ సృష్టించండి** ఇది రెండు పరామితులు (`num1` మరియు `num2`) తీసుకుని వాటి సరిపొత сумму ని రిటర్న్ చేస్తుంది. 5. **`createFullName` అనే ఫంక్షన్ సృష్టించండి** ఇది `firstName` మరియు `lastName` పరామితులను తీసుకుని పూర్తి పేరు ఒక స్ట్రింగ్‌గా రిటర్న్ చేస్తుంది. ### భాగం 4: అన్ని వాటిని కలపండి 6. **`calculateTip` అనే ఫంక్షన్ సృష్టించండి** ఇది రెండు పరామితులు తీసుకుంటుంది: `billAmount` (అవసరం) మరియు `tipPercentage` (ఐచ్ఛికం, డిఫాల్ట్ 15). ఈ ఫంక్షన్ టిప్ మొత్తాన్ని లెక్కించి రిటర్న్ చేస్తుంది. ### భాగం 5: మీ ఫంక్షన్లని పరీక్షించండి మీ ప్రతీ ఫంక్షన్‌కు టెస్ట్ కాల్స్ జోడించి, ఫలితాలను `console.log()` ద్వారా ప్రదర్శించండి. **ఉదాహరణ టెస్ట్ కాల్స్:** ```javascript // ఇక్కడ మీ ఫంక్షన్‌లను పరీక్షించండి sayHello(); introduceYourself("Sarah"); greetPerson("Alex"); greetPerson("Maria", "Hi"); const sum = addNumbers(5, 3); console.log(`The sum is: ${sum}`); const fullName = createFullName("John", "Doe"); console.log(`Full name: ${fullName}`); const tip = calculateTip(50); console.log(`Tip for $50 bill: $${tip}`); ``` ## రూబ్రిక్ | ప్రమాణం | అత్యుత్తమం | సరిపోతుంది | మెరుగు అవసరం | | ------- | --------- | ---------- | -------------- | | **ఫంక్షన్ సృష్టి** | అన్ని 6 ఫంక్షన్లు సరైన సింటాక్స్ మరియు పేర్లు పాటిస్తూ అమలులో ఉన్నవి | 4-5 ఫంక్షన్లు సరైన సింటాక్స్‌తో ఉన్నాయి, అక్కడ అక్కడ చిన్న చిన్న తప్పులు ఉన్నా సరే | 3 లేదా తక్కువ ఫంక్షన్లు అమలు చేయబడ్డాయి లేదా పెద్ద సింటాక్స్ లోపాలు ఉన్నవి | | **పరామితులు & డిఫాల్ట్ విలువలు** | అవసరమైన, ఐచ్ఛిక పరామితులు మరియు డిఫాల్ట్ విలువలను సరైన రీతిలో ఉపయోగించటం జరిగింది | పరామితులను సరైన విధంగా ఉపయోగించడం జరిగింది కానీ డిఫాల్ట్ విలువల విషయంలో చిన్న తప్పులు ఉండవచ్చు | పరామితులు తప్పుగా లేదా లేకుండా అమలు | | **రిటర్న్ విలువలు** | విలువలను రిటర్న్ చేయాల్సిన ఫంక్షన్లు సరిగ్గా రిటర్న్ చేస్తున్నవి, చేయకూడినవి కేవలం చర్యలు మాత్రమే చేసేదిగా ఉన్నాయి | ఎక్కువ భాగం సరిగా ఉన్నా చెల్లని విషయాలు ఉన్నాయి | రిటర్న్ స్టేట్మెంట్లలో ప్రాముఖ్యమైన సమస్యలు | | **కోడ్ నాణ్యత** | పరిశుభ్రంగా, సరిగ్గా అమర్చిన కోడ్, అర్థవంతమైన వేరియబుల్ పేర్లు, సరైన ఇండెంటేషన్ | కోడ్ పనిచేస్తుంది కానీ మరింత శుభ్రంగా లేదా బాగా అమర్చాలి | కోడ్ చదవడం కష్టం లేదా అధికంగా నిర్మాణ రహితంగా ఉంది | | **పరీక్ష** | అన్ని ఫంక్షన్లు సరైన విధంగా పరీక్షించబడ్డాయి మరియు ఫలితాలు స్పష్టం గా ప్రదర్శించబడ్డాయి | ఎక్కువ భాగం సరైన పరీక్షలు ఉన్నవి | పరీక్ష పరిమితంగా లేదా తప్పుగా చేసినవి | ## బోనస్ సవాళ్లు (ఐచ్ఛికం) మీరు మరింత సవాలు చేయాలనుకుంటే: 1. మీ ఫంక్షన్‌ల లో ఒకటి యొక్క ఆరో ఫంక్షన్ వెర్షన్ సృష్టించండి 2. మరో ఫంక్షన్‌ను పరామితిగా తీసుకునే ఫంక్షన్ సృష్టించండి (పాఠం లోని `setTimeout` ఉదాహరణల లాంటి) 3. మీ ఫంక్షన్లు సరైన ఇన్పుట్‌లను స్వీకరిస్తున్నాయా అని నిర్ధారించే ఇన్పుట్ వాలిడేషన్ జోడించండి --- > 💡 **సూచన**: మీ బ్రౌజర్ డెవలపర్ కన్సోల్ (F12) తెరిచి, మీ `console.log()` స్టేట్‌మెంట్ల అవుట్‌పుట్ చూడడం మర్చిపోకండి! --- **విమర్శన**: ఈ పత్రం [Co-op Translator](https://github.com/Azure/co-op-translator) అనే AI అనువాద సేవను ఉపయోగించి అనుమతించబడింది. మేము ఖచ్చితత్వం కోసం ప్రయత్నించగా కూడా, స్వయంచాలక అనువాదాల్లో పొరపాట్లు లేదా అసత్యాలు ఉండవచ్చు. అసలు పత్రం మూల భాషలో మాత్రమే అధికారిక మూలంగా పరిగణించాలి. కీలక సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదాన్ని సంప్రదించడం ఉత్తమం. ఈ అనువాదాన్ని ఉపయోగించడం వలన కలిగే ఏ విపత్కర అర్థగర్భిత తీర్మానాలకు మేము బాధ్యత చేపడము.