1- سوالات تکمیلی ورودی و خروجی
در این بخش سوالات مربوط به ورودی و خروجی و جواب آنها آمده است.
سوال 1-
برنامه ای بنویسید که خروجی زیر را چاپ کند:
جواب سوال 1-
#include <iostream> #include <conio.h> using namespace std; main() { cout << " 1" << endl; cout << " 121" << endl; cout << " 12321" << endl; cout << " 1234321" << endl; cout << "123454321" << endl; getch(); }
سوال 2-
برنامه ای بنویسید که شعاع یک دایره را بگیرد و محیط و مساحت آنرا با پیغام مناسب چاپ کند:
main() { cout << "Please enter r: " << endl; int r; cin >> r; float s, p; p = 2 * 3.14 * r; s = 3.14 * r * r; cout << "mohit = " << p << " va masahat = " << s <<endl; getch(); }
سوال 3-
برنامه ای بنویسید که یک عدد برحسب سانتیگراد را از کاربر بگیرد و آنرا به فارنهایت تبدیل کند
main() { cout << "please enter temperature in Celsius: " << endl; int c; cin >> c; float f; f = 1.8 * c + 32; cout << "your temperature in Fahrenheit is: " << f << endl; getch(); }
سوال 4-
برنامه ای بنویسید که مقدار xرا از ورودی بگیرد و حاصل عبارت زیر را به دست آورد
نکته ی این سوال استفاده از دستور یا تابع pow است که طرز استفاده از آن به این صورت است:
float z = pow(x, y ) ;
دستور بالا به این معنا است که x را به توان y برسان و در متغیر اعشاری z بریز. پس حاصل این دستور همواره در متغیر اعشاری ریخته میشود.
#include <iostream> #include <conio.h> #include <math.h> //baraye dastoore pow estefade mishavad. using namespace std; main() { cout << "Please enter x: " << endl; int x; cin >> x; float y; y = (2 * x) + ( (3 * pow(x, 2) -7)/(9 - x)); cout << "the value of y is: " << y << endl; getch(); }
سوال 5-
برنامه ای بنویسید که مقدار xرا از ورودی بگیرد و حاصل عبارت زیر را به دست آورد
نکته ی این سوال استفاده از دستور یا تابع sqrt است که طرز استفاده از آن به این صورت است:
float y = sqrt(x);
دستور بالا به این معنا است که رادیکال x را با فرجه ی 2 بگیر و در متغیر اعشاری y بریز. پس حاصل این دستور همواره در متغیر اعشاری ریخته میشود. اگر این کار را نکنیم چه خطایی رخ خواهد داد؟
جواب سوال 5:
#include <iostream> #include <conio.h> #include <math.h> //baraye dastoore sqrt mibashad. using namespace std; main() { cout << "Please enter x: " << endl; float x; cin >> x; float y, z, t, m; z = sqrt(4 * x - 7); t = pow(x, 7); m = sqrt(x); y = z + (3 * t - 9 * x + 5)/(3 * m - 4); cout << "the value of y is: " << y << endl; getch(); }
سوال 6-
برنامه ای بنویسید که یک عدد سه رقمی را بگیرد و متقارن آن را چاپ کند
main() { cout << "Please enter a tree digits number: " << endl; int num; cin >> num; int revnum, r; revnum = 0; r = num % 10; revnum = revnum * 10 + r; num = num / 10; r = num % 10; revnum = revnum * 10 + r; num = num / 10; revnum = revnum * 10 + num; cout << "the revers of your number is: " << revnum << endl; getch(); }
سوال 7-
برنامه ای بنویسید که مجموع ارقام یک عدد 5 رقمی را اعلام کند
main() { cout << "Please enter a five digits number: " << endl; int num; cin >> num; int sum, r; sum = 0; r = num % 10; sum = sum + r; num = num / 10; r = num % 10; sum = sum + r; num = num / 10; r = num % 10; sum = sum + r; num = num / 10; r = num % 10; sum = sum + r; num = num / 10; sum = sum + num; cout << "the sum of your number's digits is: " << sum << endl; getch(); }
سوال 8- برنامه ای بنویسید که یک عدد شش ررقمی را بگیرد و مجموع ارقام جایگاه فرد آن را بدست آورد:
main() { cout << "Please enter a five digits number: " << endl; int num; cin >> num; int sum = 0, a; a = num % 10; sum = sum + a; num = num / 100; a = num % 10; sum = sum + a; num = num / 100; a = num % 10; sum = sum + a; num = num / 100; cout << "the sum of your number's digits is: " << sum << endl; getch(); }
سوال 9- برنامه ای بنویسید که مجموع ارقام جایگاه مضرب سه یک عدد 9 رقمی را بدست آورد:
main() { cout << "Please enter a five digits number: " << endl; int num; cin >> num; int sum = 0, a; num = num / 100; a = num % 10; sum = sum + a; num = num / 1000; a = num % 10; sum = sum + a; num = num / 1000; a = num % 10; sum = sum + a; num = num / 1000; cout << "the sum of your number's digits is: " << sum << endl; getch(); }
سوال 10- برنامه ای بنویسید که مختصات دو نقطه را از کاربر بگیرد و فاصله ی بین دو نقطه مذکور را محاسبه و اعلام کند :
main() { float x1, x2, y1, y2, d; cout << "mokhtasate noghte 1: " << endl; cin >> x1 >> y1; cout << "mokhtasate noghte 2: " << endl; cin >> x2 >> y2; d = sqrt(pow(x2 - x1, 2)+ pow(y2 - y1, 2)); cout << "fasele mishe: " << d << endl; getch(); }
سوال 11- برنامه ای بنویسید که 5 نمره را از یک دانش آموز بگیرد و معدل او را حساب کند:
main() { double a, b, c, d, e, sum; cin >> a >> b >> c >> d >> e; sum = a + b + c + d + e; double ave = sum / 5; cout << "average is: " << ave << endl; getch(); }
سوال 12- برنامه ای بنویسید که یک عدد تصادفی بین 1 تا 100 را بدست آورد:
به دستور زیر دقت کنید:
int x = rand () ;
این دستور به متغیر x مقداری تصادفی صحیح اختصاص میدهد که این مقدار هیچ محدوده ای ندارد و می تواند هر مقداری داشته باشد. اما اگر بخواهیم این مقدار تصادفی محدوده ی خاصی داشته باشد از مد یا % استفاده میکنیم. میدانیم باقیمانده ی هر عدد به 100، یک عدد بین صفر تا 99 میشود. پس اگر عدد حاصل را با یک جمع کنیم قطعا عددی خواهد شد بین یک تا 100.
int x = rand() % 100 + 1;
حال اگر بخواهیم روش بدست آوردین عدد تصادفی را هم خودمان تعیین کنیم( چون روشهای مختلفی وجود دارد) میتوانیم از دستور زیر استفاده کنیم با استفاده از این روش عدد تصادفی بر اساس زمان کامپیوتر شما بدست می آید.
srand(time(0));
پس جواب نهایی به صورت زیر می باشد:
main() { srand( time( 0 )); int x = rand(); cout << x % 100 + 1; getch(); }
سوال 13- برنامه ای بنویسید که یک عدد تصادفی بین 100 تا 150 به شما بدهد:
main() { srand(time( 0 )); int x = rand(); cout << x % 51 + 100; getch(); }