دانلود رایگان حل تمرین های کتاب c++ جعفرنژاد قمی +50 تمرین
کتاب برنامه نویسی به زبان C++ جعفرنژاد قمی یکی از منابع آموزشی دانشجویان عزیز رشته کامپیوتر و همین طور علاقه مندان به یادگیری برنامه نویسی سی پلاس پلاس است. در این کتاب تمرینات و مسائلی در پایان هر فصل وجود دارد که میتواند به یادگیری بهتر دانشجویان کمک کند. ما نیز سعی کردیم با فراهم کردن حل تمرینات این کتاب، به دانشجویان و علاقه مندان به برنامه نویسی C++ کمک کنیم تا پاسخ های خود را با جواب صحیح مقایسه کنند و مشکلاتشان را برطرف کنند. در همین راستا حل 50 تمرین کتاب C++ جعفرنژاد قمی انجام شده و مسائل برنامه نویسی جواب داده شده است که در ادامه میتوانید آن را به صورت رایگان از سایت بادانش دانلود نمایید.
برای انجام تمرینات سی پلاس پلاس در سریع ترین زمان با کمترین هزینه کلیک کنید (پیام واتساپ)
50 تمرین حل شده کتاب C++ جعفرنژاد قمی:
- برنامه ای بنویسید که دو مقدار اعشاری را از ورودی خوانده و تفاضل و حاصلضرب و حاصل تقسیم آنها را محاسبه کرده به خروجی ببرد.
- برنامه ای بنویسید که با استفاده از حلقه های تودرتو خروجی زیر را تولید کند (یک مربع 6*6 از کاراکتر $)
- برنامه ای بنویسید که ضرایب معادله درجه دوم را از ورودی گرفته، معادله را حل کند. (a x ^ 2 + b x + c = 0)
- برنامه ای بنویسید که عددی از 1 تا 7 را خوانده، روزی از هفته را که معادل با آن است را در خروجی چاپ کند (switch).
- برنامه ای بنویسید که حاصل عبارت روبرو (فاکتوریل) را محاسبه کند: 1 + (1/2!) + (1/3!) + … + (1/n!)
- برنامه ای بنویسید که شماره کارمندی و حقوق تعدادی از کارکنان موسسهای را دریافت کرده ، براساس تعرفه زیر، مالیات حقوق آنها را محاسبه کند و به خروجی ببرد. سپس مشحص کند، بیشترین دریافتی مربوط به کدام کارمند است.
- برنامه ای بنویسید که تعداد n جمله از سری فیبوناچی را تولید کند. (1 1 2 3 5 8 13 …)
- برنامه ای بنویسید که کارکتری را که نشان دهنده رنگی است، از ورودی خوانده به شما بگوید که چه رنگی را میخواهد انتخاب کند. مثلاٌ کاربر حرف ‘r’ را وارد کرد برنامه به او بگوید که دوست دارد رنگ قرمز را انتخاب کند. برای تمام موارد حروف کوچک و بزرگ کنترل شود. مثل ‘r’ و ‘R’ برای رنگ قرمز.
- برنامه ای بنویسید که خروجی زیر را در صفحه نمایش چاپ کند. ( پنج ردیف، در هر ردیف یک ستاره اضافه شود)
- برنامه ای بنویسید که اعدادی را از ورودی خوانده، تشخیص دهد آیا اعداد مورد نظر کامل هستند یا خیر.
توضیح: عددی کامل است که مجموع مقسوم علیه های آن ( به جزء خودش ) برابر با آن عدد باشد. پس از بررسی هر عدد، برنامه باید از کاربر سوال کند که می خواهد به کارش ادامه دهد یا خیر. - برنامه ای بنویسید که شماره دانشجویی و معدل تعداد n دانشجو را از ورودی خوانده، دانشجویی را که دومین معدل را از نظر بزرگی دارد پیدا کند و به خروجی ببرد.
- تابعی بنویسید که یک اشارهگر ار نوع صحیح و عدد صحیح n را به عنوان پارامتر پذیرفته، حافظهای برای n عدد صحیح تخصیص دهد و آدرس آن را به برنامه برگرداند.
- تابعی بنویسید که یک رشته و یک مقدار عددی را به عنوان آرگومان پذیرفته، تعدادی از کاراکترهای این رشته را با این عدد مشخص می شوند در رشته دیگر قرار داده، برگرداند. سپس برنامه ای بنویسید که از آن استفاده کند.
- برنامهای بنویسید که دو رشته را از ورودی خوانده، یکی را در دیگری کپی کند.
- برنامهای بنویسید که رشتهای را از ورودی خوانده، فقط آن رشتههایی را که با حروف ‘b’ شروع می شوند را در خروجی چاپ کند و به جای آخرین رشته، فقط کلید Enter را فشار دهید.
- برنامه ای بنویسید که رشته عددی را حاوی نقطه اعشار است از ورودی خواند، آن را به عدد اعشاری تبدیل کند. مثال: رشته “42/123 ” را به عدد 42/123 تبدیل نماید. تابعی برای خواندن رشته، تابعی برای تبدیل و تابعی برای نوشتن عدد در خروجی بنویسید. پارامترها از طریق فراخوانی با ارجاع به توابع ارسال شوند.
- برنامه ای بنویسید که سه مقدار عددی رابه عنوان آرگومان پذیرفته، به تابعی ارسال کند و تابع بزرگترین مقدار آنها را پیداکند. برنامه باید تعداد آرگومان ها را کنترل کند.
- برنامه ای بنویسید که رشته ای را از ورودی خوانده، به تابعی ارسال کند و تابع آن را به طور معکوس به خروجی ببرد.
- برنامهای بنویسید که نام و شماره تلفن تعدادی از مشتریان مخابرات را از ورودی خوانده، در آرایه هایی ذخیره نماید. شماره تلفنها در آرایه عددی و نام مشتریان در آرایه ای از اشارهگرهای رشتهای ذخیره شوند. پس نامی از ورودی خوانده شده، شماره تلفن وی را مشخص کرده، در خروجی چاپ کند. برنامه باید برای ادامه کار، از کاربر سوال کند. اگر کاربر جواب منفی داد، برنامه خاتمله پیدا می کند. توابعی برای خواندن اطلاعات، جستجو و چاپ نتایج جستجو بنویسید.
- برنامهای بنویسید که رشتهای را خوانده مجموع ارقام موجود در رشته را محاسبه کند و چاپ کند.
- برنامه ای بنویسید که رشته ای را خوانده موارد زیر را مشخص کند: ( الف) تعداد حروف کوچک ب) تعداد حروف بزرگ ج) تعداد حروف صدادار د) تعداد ارقام موجود در رشته)
- برنامه ای بنویسید که با خواندن تعدادی عدد از ورودی، آنها را در آرایه قرار دهد. سپس کلیه عناصر آرایه را بر عنصر وسط تقسیم کند. اگر عنصر وسط صفر باشد، بر عنصر بعد از عنصر وسط تقسیم کند.
- برنامه ای بنویسید که رشته ای را از ورودی خوانده، تمام کلمات چهار حرفی آن را باکلمله “love ” جایگزین کند. (مثلاً رشته “I hate you, you doer” باید به رشته “I love you, you love ” تبدیل شود.)
- برنامه ای بنویسید که دو رشته s1 و s2 را از ورودی خوانده، رشته s1 را در رشته s2 جستجو کند. خواندن رشته ها توسط تابع اصلی و جستجو رشته توسط تابعی مجزا انجام شود.
- برنامه ای بنویسید که رشته ای را از ورودی خوانده، مشخص کند که آیا رشته از هر دوطرف که در نظر گرفته شود یکسان است یا خیر. مثلاً رشته “beeb ” چنین خاصیتی دارد.
- برنامه ای بنویسید که رشته ای را که به نقطه ختم می شود از ورودی خوانده، کارکترهای موجود در رشته را به همراه تعداد دفعات تکرار آنها به خروجی ببرد.
- برنامه ای بنویسید که تعدادی عدد را از ورودی خوانده، آنها را به طور مرتب در آرایه ای قرار دهد (دقت داشته باشید که اعدد در موقع قرار گرفتن در آرایه، به طور صعودی مرتب باشند)، سپس آرایه مرتب رابه خروجی ببرد.
- برنامه ای بنویسید که یک عدد 20 رقمی را با عدد 20 رقمی صحیح دیگر جمع کند. برای این منظور، هر یک از دو عدد را به صورت رشته ای از ورودی بخوانید. سپس هر کاراکتر را به رقم معادل آن تبدیل کرده، در یک عنصر آرایه قرار دهد و هر عدد را به همین روش در آرایه ذخیره نماید.( هر عدد در یک آرایه ). سپس حاصل جمع این آرایه دو عدد 20 رقمی را محاسبه کرده، در خروجی چاپ کنید. تابعی برای خواندن رشته ها، تابعی برای تبدیل کاراکتر به رقم، تابعی برای انجام عمل جمع و تابعی برای چاپ عدد بنویسید.
- برنامه ای بنویسید که رشته ای را از ورودی خوانده، تمام کارکترهای تکراری را از رشته حذف کند. رشته در برنامه اصلی خوانده شود و حذف کارکترهای تکراری در تابع انجام شود. تابع دو آرگومان دارد : رشته و طول رشته.
- برنامه ای بنویسید که عناصر دو آرایه 5 عنصری را که همگی از نوع صحیح هستند از ورودی خوانده، آنها را به روش حبابی مرتب کند و سپس این دو آرایه را به طور مرتب در هم ادغام نماید. تابعی برای اخذ ورودی، تابعی برای مرتب سازی، تابعی برای ادغام و تابعی برای چاپ ارایه ها بنویسید.
- برنامه ای بنویسید که شماره دانشجویی تعدادی از دانشجویان را از ورودی خوانده، در آرایه ای قرار دهد و سپس آرایه را به روش انتخابی به طور صعودی مرتب کند مرتب سازی بله روش انتخابی انجام می شود: کوچکترین عنصر آرایه پیدا شده، جای آن با عنصر اول آرایه عوض می شود. این روند تا مرتب سازی کامل آرایه ادامه می یابد. پس از مرتب سازی نتیجه را در خروجی چاپ کنید. سه تابع به کار ببرید، تابعی برای خواندن عناصر آرایه، تابعی برای مرتب سازی و تابعی برای چاپ عناصر آرایه.
- برنامه ای بنویسید که عدد صحیح n را از ورودی خوانده تمام اعداد اول قبل از آن عدد را با استفاده از تعریف زیر تعیین کرده به خروجی ببرد :(عددی اول است که بر هیچکدام از اعداد اول قبل از خودش قابل قسمت نباشد.)
- برنامه ای بنویسید که عدد اعشاری را از ورودی خوانده، هریک از قسمتهای صحیح و اعشاری آن را به صورت یک عدد صحیح به خروجی ببرد. به عنوان مثال، عدد 42/13 به صورت دو عدد صحیح 13 و 42 به خروجی برود.
- برنامه ای بنویسید که یک عدد اعشاری مثل 21/643 را خوانده، وارون آن را بیابد. وارون این عدد 346/12 است.
- برنامه ای بنویسید که سال تولد کاربر را از ورودی خوانده، مشخص کند که او چند سال، چند ماه، چند روز، چند ساعت، چند دقیقه و چند ثانیه عمر کرده است.
- برنامه ای بنویسید که دو عدد صحیح مثبت را از ورودی خوانده، آنها را به روش تفریق بر هم تقسیم نماید.
- برنامه ای بنویسید که فاصله ای بر حسب فوت و اینچ گرفته، معادل آن را برحسب متر و سانتیمتر بیان کنید. هر فوت 3048/0 متر، یک متر 100 سانتیمتر و هر فوت 12 اینچ است. حداقل از سه تابع استفاده کنید، یکی برای ورودی، یکی برای انجام محاسبات و دیگری برای خروجی.
- تابعی بنویسید که دو آرگومان را بپذیرد و آرگومان اول را به توان آرگومان دوم برساند. آرگومان اول یک مقدار Double و آرگومان دوم یک مقدار صحیح مثبت یا منفی است. برنامه ای بنویسید که از آن استفاده کند.
- تابعی دو آرگومان را بپذیرد : آرگومان اول، یک کارکتر، و آرگومان دوم مشخص می کند که این کارکتر در هر سطر از صفحه نمایش چند بار باید چاپ شود و آرگومان سوم مشخص می کند که این کارکتر در چند سطر باید چاپ شود. برنامه ای بنویسید که از این تابع استفاده کند.
- برنامه ای بنویسید که کارکتری را از ورودی خوانده، آن را از ستون i تا ستون j صفحه نمایش چاپ کند، برنامه، کارکتر و مقدار i و j را به تابعی ارسال می کند و تابع عمل چاپ کارکتر را انجام می دهد.
- برنامه ای بنویسید که دو عدد اعشاری را از ورودی خوانده به تابعی ارسال کند، تابع، تفاضل، حاصلضرب و حاصل تقسیم آنها را محاسبه کرده به برنامه ارسال نماید.
- برنامه ای بنویسید که معادله درجه دومی را از ورودی خوانده، آنها را به تابعی ارسال کند. تابع معادله را حل کرده، جوابها آن را به خروجی ببرد (به برنامه اصلی برنمی گرداند).
- برنامه ای بنویسید که دمای هوا را برحسب فارنهایت خوانده، به تابعی تحویل دهد و تابع آن را به درجه ساسیوس تبدیل کرده، برگرداند.
- برنامه ای بنویسید که 3 مقدار اعشاری را از ورودی خوانده، به تابعی ارسال و تابع میانگین آنها را محاسبه کرده، برگرداند.
- برنامه ای بنویسید که n جمله از سری فیبوناچی را به روش بازگشتی تولید کند؟
- برنامه ای بنویسید که عددی را از ورودی خوانده به کمک تابع بازگشتی، شمارش معکوس از آن عدد به یک را انجام دهد (شماره ها در خروجی چاپ کند)
- در شرکتی، سالانه 150 خودکار و 50 بسته کاغذ A4 مصرف می شود. در پایان سال، این شرکت می خواهد بداند که در سال آینده چقدر باید برای این بخش از تجهیزات اداری هزینه کند. برنامه ای بنویسید که قیمت این اقلام را در امسال از ورودی خوانده، با خواندن نرخ تورم در سال آینده، هزینه شرکت را در این بخش محاسبه نماید و به خروجی ببرد. تورم به صورت درصد وارد می شود که باید آن به یک مقدار اعشاری تبدیل کند. مثلا اگر تورم را به صورت 6/5 از ورودی بخواند باید آن را به صورت 056/0 به کار ببرد.
- شرکتی به هر یک از دو نفر از متخصصین خود ماهانه 750000 ریال پرداخت می کند، او می خواهد بداند که اگر 5/13 درصد به حقوق هر کدام اضافه کند، سالانه چقدر به هزینه شرکت اضافه می شود. برنامه ای بنویسید که این کار را برای شرکت انجام دهد.
- برنامه ای بنویسید که وزن کالایی را بر حسب کیلوگرم دریافت کرده، وزن آن را بر حسب گرم در خروجی چاپ کند.
- برنامه ای بنویسید که یک مقدار را از ورودی خوانده، عبارت زیر را محاسبه کند : (y = 1 / ( (x*2) + x + 3 )
نکته مهم
اگر در حل مسائل مشکلی داشتید و یا برایتان سوالی پیش آمده، با خیال راحت زیر همین مقاله سوالاتتان را بپرسید. با افتخار پاسخگوی تمام سوالات شما عزیزان هستیم.
از یادگیری لذت ببرید.
6 نظر
سلام
من دانشجو سال اول برقم
قبلا هچی از برنامه نویسی نمیدونستم
و الان شدیدا درکش نمیکنم….
دوست دارم یاد بگیرم و به کمک نیاز دارم
سلام
از اینکه سوالتون رو با بادانش در میون گذاشتید ازتون متشکریم.
تقریبا تمام کسانی که میخواهند یادگیری برنامه نویسی رو شروع کنند حالتی مشابه شما رو دارند. در ابتدا شاید خیلی از کدها، الگوریتم ها، نحوه اجرا اون ها و… براتون نامفهوم باشه و نتونید درست درکش کنید. اما اصلا نگران نباشید چون این کاملا طبیعی هست. شما اول راه هستید، به مرور که جلوتر میرید درک کدها و … براتون راحت تر میشه. پیشنهاد میکنیم از مسائل ساده شروع کنید و اونها رو روی کاغذ پیاده سازی کنید. هر مسئله رو تا جایی که میشه به قطعات کوچکتر تقسیم کنید و بعد تک تک مسائل رو حل کنید. این روش کمک میکنه بتونید به حل مسائل کم کم مسلط بشید و درک بهتری از برنامه نویسی داشته باشید. تیم بادانش هم در کنار شماست. هر جا سوالی داشتید اون رو با ما در میون بگذارید. کمکی از دستون بر بیاد دریغ نمیکنیم.
بادانش | یادگیری در مسیر موفقیت
سلام خسته نباشید
دوتا برنامه میخواستم ببینم چجوری نوشته میشه ولی توی این تمرینا هم نبود
ممنون میشم راهنماییم بکنین
یکیش:برنامه ای که یک عدد طبیعی را گرفته مجموع فاکتوریل ارقام آن را حساب کند مثلا عدد 37 رو فاکتوریل 3 و فاکتوریل 7 رو جمع کنن باهم(!3+!7)
دومیش:برنامه ای که یک عدد طبیعی را گرفته و تعدار ارقام یک موجود در آن را نمایش دهد مثلا 141 دو تا 1 داره
سلام
از اینکه سوالتون رو با بادانش در میون گذاشتید از شما متشکریم. همانطور که قبلا هم اشاره کردیم برای حل هر مسئله بهتره ابتدا اون رو به مسائل کوچیکتر تقسیم کنیم
به عنوان مثال برای مسئله اول این مراحل را طی کنید:
1. یک عدد رو از کاربر میگیریم
2. هر رقم را جدا کنید (یک روش بدست اوردن هر رقم تقسیم عدد بر ده است، باقیمانده تقسیم، رقم آخر عدد می شود)
3. فاکتوریل رقم بدست را حساب کنید (یک روش بدست اوردن فاکتوریل با استفاده از حلقه for به تعداد رقم است که در آن حلقه وجود دارد، از یک متغیر برای نگه داشتن حاصل ضرب عدد استفاده میکنیم)
4. از یک متغیر برای جمع نتایج فاکتوریل هر رقم استفاده میکنیم
5. نمایش حاصل نهایی جمع
از این روش میتونید برای حل مسائلتون استفاده کنید. امیدواریم تونسته باشیم راهنمایی تون کنیم.
بادانش | یادگیری در مسیر موفقیت
سلام میشه تو این سوال بهم کمک کنید
عدد ماه رو از ورودی بگیرید و خروجی بگویید اون ماه چند روزه است
سلام
از اینکه سوالتون رو با بادانش در میون گذاشتید از شما متشکریم.
برای حل این سوال راهکارهای مختلفی وجود داره. یک راهکار ساده اینه که از یک آرایه دو بعدی استفاده کنید و در قسمت اول شماره ماه از 1 تا 12 رو بنویسید و در قسمت دوم روزهای سال رو و نهایتا عدد ورودی کاربر رو از این ارایه استخراج کنید.
یک راه حل ساده دیگر، از 12 ماه سال، 6 ماه اول 31 روزه، ماه 7 تا 11 (یعنی مهر تا بهمن) 30 روزه و ماه 12 یعنی اسفند 29 روزه هست. حالا کافیه با یک شرط ساده عدد ورودی کاربر رو با این قواعد مقایسه کنید و نهایتا خروجی رو به کاربر نشون بدید. به عنوان مثال اگر عدد ورودی از کاربر در متغیر n باشد:
n
if ( n > = 1 OR n < = 6) { output("tedad roz: 31"); } else if (n >= 11)
{
output("tedad roz: 30");
}
else if ( n == 12 )
{
output("tedad roz: 29");
}
else
{
output("adad mah sahih nist");
}