دیگر

Mac C++ صفیں اور بے ترتیب نمبر

iBookG4user

اصل پوسٹر
27 جون 2006
سیٹل، WA
  • 20 ستمبر 2009
وہ میرے کالج میں انتہائی تکلیف دہ وقت میں C++ کے لیے ٹیوٹرز لگاتے ہیں... بہرحال، انسٹرکٹر نے درج ذیل ہدایات پوسٹ کیں:

'ایک فنکشن لکھیں جو 1 اور 10 کے درمیان 25 بے ترتیب نمبروں کے ساتھ ایک صف کو بھرے گا۔ پھر ایک فنکشن لکھیں جو سرنی کو پرنٹ کرے گا۔ اپنے افعال کو جانچنے کے لیے مین میں کچھ کوڈ لکھیں۔ کبھی کبھی اس ٹیسٹ کوڈ کو *ڈرائیور کہا جاتا ہے۔

یہاں عالمی متغیرات کا استعمال نہ کریں۔ پیرامیٹر لسٹ کے ذریعے فنکشن میں صف کو منتقل کریں'

میرے موجودہ کوڈ کے نتیجے میں وہ ڈیبگر میں کوئی غلطی نہیں کرتا ہے، لیکن یہ صف کو آؤٹ پٹ نہیں کرتا ہے۔ اور میں نہیں جانتا کہ ڈرائیور لکھ کر اس کا کیا مطلب ہے، میں کیا جانچنا چاہتا ہوں؟ آپ سب ماضی میں بے حد مددگار ثابت ہوئے ہیں اور مجھے یقین ہے کہ اس بار آپ مجھے صحیح سمت بتانے میں مدد کریں گے۔

کوڈ: |_+_|

lee1210

10 جنوری 2005


ڈلاس، TX
  • 20 ستمبر 2009
کچھ چیزیں: آپ کی صف int[] قسم کی ہونی چاہیے، ڈبل[] نہیں۔ آپ کو تیار کرنے اور پرنٹ کرنے کے لئے ایک int سرنی کو قبول کرنے کی ضرورت ہے۔ آپ کو مین میں ایک int[] کا اعلان کرنے کی ضرورت ہے، اسے پیدا کرنے کے لیے پاس کریں، اسے وہاں بھریں، پھر اسے پرنٹ کرنے کے لیے پاس کریں۔ دی<< operator of ofstream does not deal with arrays as you'd hope, so you'll need to loop to display in print.

اس کے علاوہ، اور مجھے یقین ہے کہ یہ ایک ایماندارانہ غلطی ہے، مجھے یقین ہے کہ آپ کے پروفیسر کا مطلب تھا۔ چھدم بے ترتیب

اس کے علاوہ، بنیادی طور پر، آپ نئے ڈبل()s کا اعلان کر رہے ہیں، پروڈکٹ اور پرنٹ کی درخواست نہیں کر رہے ہیں۔ دوہری کو وہاں سے لے جائیں، اور اوپر بحث کے مطابق ایک دلیل پیش کریں، اور ان دونوں کی واپسی کی قسم کو باطل میں تبدیل کریں۔

-پڑھیں۔

gnasher729

معطل
25 نومبر 2005
  • 20 ستمبر 2009
آپ فنکشن 'produce' کے لیے فنکشن پروٹو ٹائپ کیسے لکھیں گے؟
اور آپ فنکشن 'produce' کو کال کیسے لکھیں گے؟

اور آپ کے 'مین' فنکشن کے اندر، آپ نے دونوں میں سے کون سا لکھا ہے، فنکشن پروٹو ٹائپ یا فنکشن کال؟

iBookG4user

اصل پوسٹر
27 جون 2006
سیٹل، WA
  • 20 ستمبر 2009
lee1210 نے کہا: کچھ چیزیں: آپ کی صف int[] قسم کی ہونی چاہیے، ڈبل نہیں[]۔ آپ کو تیار کرنے اور پرنٹ کرنے کے لئے ایک int سرنی کو قبول کرنے کی ضرورت ہے۔ آپ کو مین میں ایک int[] کا اعلان کرنے کی ضرورت ہے، اسے پیدا کرنے کے لیے پاس کریں، اسے وہاں بھریں، پھر اسے پرنٹ کرنے کے لیے پاس کریں۔ دی<< operator of ofstream does not deal with arrays as you'd hope, so you'll need to loop to display in print.

اس کے علاوہ، اور مجھے یقین ہے کہ یہ ایک ایماندارانہ غلطی ہے، مجھے یقین ہے کہ آپ کے پروفیسر کا مطلب تھا۔ چھدم بے ترتیب

اس کے علاوہ، بنیادی طور پر، آپ نئے ڈبل()s کا اعلان کر رہے ہیں، پروڈکٹ اور پرنٹ کی درخواست نہیں کر رہے ہیں۔ دوہری کو وہاں سے لے جائیں، اور اوپر بحث کے مطابق ایک دلیل پیش کریں، اور ان دونوں کی واپسی کی قسم کو باطل میں تبدیل کریں۔

-پڑھیں۔

ٹھیک ہے، میں نے وہ تبدیلیاں کی ہیں جو آپ نے تجویز کی ہیں اور کوڈ زیادہ منطقی نظر آتا ہے۔ اگرچہ اب مجھے for loops میں تین غلطیاں ہو رہی ہیں۔

کوڈ: |_+_|

منسلکات

  • اسکرین شاٹ 2009-09-20 شام 5.42.31 PM.png اسکرین شاٹ 2009-09-20 شام 5.42.31 PM.png'file-meta'> 178.1 KB · ملاحظات: 1,941

lee1210

10 جنوری 2005
ڈلاس، TX
  • 20 ستمبر 2009
پیداوار کی دلیل کی قسم کو int[] یا int * میں تبدیل کریں۔ ابھی یہ صرف int ہے، لہذا آپ [] وغیرہ استعمال نہیں کر سکتے۔ پرنٹ کے لیے بھی یہی ہے۔ اس کے علاوہ، آپ کو پیداوار یا پرنٹ سے کچھ بھی واپس کرنے کی ضرورت نہیں ہے۔ ان کی واپسی کی قسم کو باطل میں تبدیل کریں۔

میرے خیال میں آپ کا مقصد پرنٹ کو مین میں واپس کال کرنا ہے، جو ٹھیک ہونا چاہیے۔

اس کے علاوہ، جب آپ سرنی کو پیدا کرنے کے لیے پاس کرتے ہیں، تو صرف array کا استعمال کریں * array نہیں۔

-پڑھیں۔

iBookG4user

اصل پوسٹر
27 جون 2006
سیٹل، WA
  • 20 ستمبر 2009
lee1210 نے کہا: پیداوار کی دلیل کی قسم کو int[] یا int* میں تبدیل کریں۔ ابھی یہ صرف int ہے، لہذا آپ [] وغیرہ استعمال نہیں کر سکتے۔ پرنٹ کے لیے بھی یہی ہے۔ اس کے علاوہ، آپ کو پیداوار یا پرنٹ سے کچھ بھی واپس کرنے کی ضرورت نہیں ہے۔ ان کی واپسی کی قسم کو باطل میں تبدیل کریں۔

میرے خیال میں آپ کا مقصد پرنٹ کو مین میں واپس کال کرنا ہے، جو ٹھیک ہونا چاہیے۔

اس کے علاوہ، جب آپ سرنی کو پیدا کرنے کے لیے پاس کرتے ہیں، تو صرف array کا استعمال کریں * array نہیں۔

-پڑھیں۔

یہ کام کر گیا
اب، کیا آپ جانتے ہیں کہ افعال کو جانچنے کے لیے کوڈ لکھنے سے اس کا کیا مطلب تھا؟ اس کا اس سے کیا مطلب ہے؟ اور اب تک آپ کی مدد کے لیے بہت بہت شکریہ!

کوڈ: |_+_|

chown33

ناظم
اسٹاف ممبر
9 اگست 2009
Abysmal طیارہ
  • 20 ستمبر 2009
iBookG4user نے کہا: اب، کیا آپ جانتے ہیں کہ فنکشنز کو جانچنے کے لیے کوڈ لکھنے سے اس کا کیا مطلب ہے؟ اس کا اس سے کیا مطلب ہے؟

تفصیلات میں کہا گیا ہے کہ صف میں نمبر 1 اور 10 کے درمیان ہونے چاہئیں۔ آپ ایک ٹیسٹ لکھ سکتے ہیں جو اس کی تصدیق کرتا ہے۔

اس نے یہ بھی کہا کہ نمبر بے ترتیب ہونے چاہئیں۔ اگرچہ بے ترتیب پن کو جانچنا اس سے کہیں زیادہ مشکل ہو سکتا ہے جتنا کہ لگتا ہے، سادہ غیر بے ترتیب پن کو جانچنا آسان ہو سکتا ہے۔ سب سے آسان اس بات کی تصدیق کرنا ہے کہ تمام نمبر ایک جیسی نہیں ہیں۔ بے ترتیب پن کے مزید پیچیدہ ٹیسٹ شماریاتی تجزیوں کا استعمال کرتے ہیں۔

ایک اور ٹیسٹ جو آپ لکھ سکتے ہیں وہ یہ ہے کہ اس بات کی تصدیق کی جائے کہ product() فنکشن جب بھی بلایا جاتا ہے تو مختلف اقدار واپس کرتا ہے۔ یہ شماریاتی تجزیہ کی ایک سادہ شکل ہے، یعنی اس بات کو یقینی بنانا کہ مسلسل درخواستوں کے آزاد نتائج ہوں۔

آپ کو پروڈکٹ() کو کال کرنے سے پہلے معلوم غلط اقدار، جیسے -1 یا 0 کے ساتھ صف شروع کرنے پر بھی غور کرنا چاہیے۔ بصورت دیگر ایک غیر شروع شدہ مقامی صف میں پہلے سے ہی غیر متوقع قدریں ہوسکتی ہیں، جن کی ایک ٹیسٹ بے ترتیب کے طور پر تشریح کر سکتی ہے یہاں تک کہ اگر product() کچھ بھی نہیں کرتا ہے۔

تصریح کے طور پر، کام کا بیان کچھ مبہم ہے۔ ایک چیز کے لیے، اس میں یہ واضح نہیں ہے کہ اسے کون سے ٹیسٹ پاس کرنے ہیں۔ مجھ پر یقین کریں، اگر آپ اہلیت کے امتحانات کا انتخاب کرنے کے لیے اسے زیادہ تر پروگرامرز پر چھوڑ دیتے ہیں، تو یہ ایک بڑی غلطی ہے۔ کوڈ صرف ایک صورت میں کام کر سکتا ہے، جو پروگرامر کوڈ تیار کرنے کے لیے استعمال کرتا تھا۔ اگر یہ پاگل لگتا ہے، تو میں آپ کو یقین دلا سکتا ہوں کہ ایسا ہوا ہے۔

iBookG4user

اصل پوسٹر
27 جون 2006
سیٹل، WA
  • 20 ستمبر 2009
یہ کافی آسان تھا، شکریہ!
اس نے ایک علاج کیا:
کوڈ: |_+_| ایس

سینڈر

کو
24 اپریل 2008
  • 21 ستمبر 2009
iBookG4user نے کہا: یہ کافی آسان تھا، شکریہ!
اس نے ایک علاج کیا:

اپنی صف میں ایک 'غلط' نمبر ڈالنے کی کوشش کریں (کہیں، 11) اور دیکھیں کہ آیا یہ فنکشن اس کا پتہ لگاتا ہے۔

iBookG4user

اصل پوسٹر
27 جون 2006
سیٹل، WA
  • 21 ستمبر 2009
سینڈر نے کہا: اپنی صف میں ایک 'غلط' نمبر ڈالنے کی کوشش کریں (کہیں، 11) اور دیکھیں کہ آیا یہ فنکشن اس کا پتہ لگاتا ہے۔

میں نے 10 سے بڑے نمبروں کی اجازت دینے کے لیے عارضی طور پر صف ترتیب دی اور اس نے اس کا پتہ لگایا، شکریہ ایس

سینڈر

کو
24 اپریل 2008
  • 22 ستمبر 2009
iBookG4user نے کہا: میں نے عارضی طور پر 10 سے بڑے نمبروں کی اجازت دینے کے لیے صف ترتیب دی اور اس نے اس کا پتہ لگایا، شکریہ

یہاں تک کہ اگر یہ صف میں پہلا عنصر نہیں ہے ..؟

میں پوچھنے کی وجہ یہ ہے کہ آپ کا پرنٹ() فنکشن (کم از کم اس تھریڈ میں دکھایا گیا آخری ورژن) صرف صف کا پہلا عنصر (ڈبل میں تبدیل) لوٹاتا ہے۔