# Native Code > برنامه نویسی با C > برنامه نویسی با زبان C و ++C > آموزش: لیستی از سوالات به همراه جواب آنها در زبان برنامه نویسی C++‎

## SilverLearn

با سلام 

در این تاپیک می خواهم لیستی از سوالات متداول برنامه نویسی را برای شما دوستان قرار دهم ... 

*این سوالات بیشتر در کتاب آموزش C++‎ جعفر نژاد قمی در تمرین ها قرار دارد که ما در اینجا به آنها جواب خواهیم داد* 

امیدوارم مفید باشه ....

----------


## SilverLearn

*برنامه ای بنویسید که دو مقدار اعشاری را از ورودی خوانده و تفاضل و حاصلضرب و حاصل تقسیم آنها را محاسبه کرده به خروجی ببرد .

* برنامه وقتی خاتمه می یابد که هر دو عدد اعشاری صفر باشند.


#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(){
            float a , b ,result ;
            cout << "please enter 2 float number \n";
            cout << " enter a : ";
            cin >> a ;
            cout << " enter b : ";
            cin >> b ;
            while (a!=0 || b!=0){
                        result = (a*b)-(a/b);
                        cout << " result = " << result ;
                        cout << "\n please enter 2 float number ";
                        cout << " enter a : ";
                        cin >> a ;
                        cout << " enter b : ";
                        cin >> b ;
            }
getch();
return 0 ;
}

----------


## SilverLearn

*برنامه ای بنویسید که با استفاده از حلقه های تودرتو خروجی زیر را تولید کند .

*$$$$$$
$$$$$$
$$$$$$
$$$$$$



#include <iostream.h>
#include <conio.h>
int main(){
            int i , j ;
            for (i=0 ; i<4 ; i++}(
                        for (j=0 ; j<6 ; j++){
                                    cout << '$';
                                    }
                        cout << '\n';
            }
 
getch();
return 0 ;
}

----------


## SilverLearn

*برنامه ای بنویسید که ضرایب معادله درجه دوم را از ورودی گرفته ، معادله را حل کند .

*a x ^ 2  + b x + c = 0


#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(){
            int a,b,c;
            int d;
            double r1,r2;
            cout << "enter 3 number (a,b,c) for ax^2+bx+c  \n" ;
            cout << " please enter a :" ;
            cin >> a ;
            cout << " please enter b :" ;
            cin >> b ;
            cout << " please enter c :" ;
            cin >> c ;
            d= (b*b) - (4*a*c);
            if (d>0){
                        r1=((-b)-sqrt(d))/(2*a);
                        r2= ((-b)+sqrt(d))/(2*a);
                        cout << "r1 : " << r1 <<'\t'<< "r2 : " << r2;
            }
            else if (d==0){
                        r1 = (-b)/(2*a);
                        cout << " r1,r2 : " << r1;
            }
            else if (d<0)
                        cout << " rishe nadarim " ;
getch();
return 0 ;
}

----------


## SilverLearn

*برنامه ای بنویسید که عددی از 1 تا 7 را خوانده ، روزی از هفته را که معادل با آن است را در خروجی چاپ کند (switch)



# include <iostream.h>
# include <conio.h>
int main(){
            int x;
            cout << "please enter number 1 - 7 for days : " ;
            cin >> x;
            switch (x) {
                        case 1 :
                                    cout << "saturday";
                                    break;
                        case 2 :
                                    cout << "sunday";
                                    break;
                        case 3 :
                                    cout << "monday";
                                    break;
                        case 4 :
                                    cout << "tusday";
                                    break;
                        case 5 :
                                    cout << "thirsday";
                                    break;
                        case 6 :
                                    cout << "wendsday";
                                    break;
                        case 7 :
                                    cout << "friday";
                                    break;
                        default :
                                    cout << " this number not corect becuase 1 - 7 ";
                                    break;
            }
getch();
return 0;
}  



*

----------


## SilverLearn

*برنامه ای بنویسید که حاصل عبارت زیر را محاسبه کند ( n < 10 )

*1  + (1/2!) + (1/3!) + … + (1/n!) 


# include <iostream.h>
# include <conio.h>
int main(){
            int i , num ;
            long int fact = 1 ;
            float sum = 0 ;
            clrscr();
            cout << "Enter one number for factoriel : " ;
            cin >> num ;
            for (i=1 ; i<=num ; i++ ) {
                        fact *= i ;
                        sum += (1/(float)fact) ;
            }
            cout << "\nsum : " << sum ;
getch();
return 0;
}

----------


## SilverLearn

برنامه ای بنویسید که شماره کارمندی و حقوق  تعدادی از کارکنان موسسه ای را دریافت کرده ، براساس تعرفه زیر ، مالیات  حقوق آنها را محاسبه کند و به خروجی ببرد . سپس مشحص کند ، بیشترین دریافتی  مربوط به کدام کارمند است .


*از مالیات معاف                                        400،000 > حقوق
10 درصد مالیات نسبت به مازاد                                  500،000 > حقوق > 400،001    
15 درصد مایات نسبت به مازاد                                   700،000 > حقوق > 500،001
17 درصد مالیات نسبت به مازاد                              700،000 < حقوق*


# include <iostream.h>
# include <conio.h>
long int main(){
            int i , n ;
            long int number , maxnumber, price , acord ;
            float  salary , tax , maxsalary = 0 ;
 
            cout << " please tell sum employers : " ;
            cin >> n ;
            for (i = 1 ; i <=n ; i++ ) {
                        cout << "\n please number employer : " ;
                        cin >> number ;
                        cout << "\n please salary employer : " ;
                        cin >> price ;
                                    if (price <= 400000) {
                                                cout << "\n salary is " << price ;
                                                cout << " \n ----------------------------------" ;
                                    }
                                    else if ( 400000 < price && price < 500001 ) {
                                                acord = price - 400000;
                                                tax = (10 * acord)/ 100 ;
                                                salary = tax + price ;
                                                cout << "\n salary is " << salary  ;
                                                cout << " \n ----------------------------------" ;
                                    }
                                    else if ( 500000 < price && price < 700001 ) {
                                                acord = price - 400000;
                                                tax = (15 * acord)/ 100 ;
                                                cout << "tax " << tax ;
                                                salary = tax + price ;
                                                cout << "\n salary is " << salary ;
                                                cout << " \n ----------------------------------" ;
                                    }
                                    else if  ( price > 700000 ) {
                                                acord = price - 400000;
                                                tax = (17 * acord)/ 100 ;
                                                salary = tax + price ;
                                                cout << "\n salary is " << salary ;
                                                cout << " \n ----------------------------------" ;
                                    }
                                    if (price > maxsalary){
                                                maxsalary = salary ;
                                                maxnumber = number ;
                                    }
            }
            cout << " \n ====================================" ;
            cout << " \n maixmum salary is : " << maxsalary ;
            cout << " \n maixmum salary number  is : " << maxnumber ;
getch();
return 0;
}

----------


## SilverLearn

*برنامه ای بنویسید که تعداد n  جمله از سری فیبوناچی را تولید کند

* 1          1          2          3          5          8          13 …


#include <iostream.h>
#include <conio.h>
int main(){
            int x=1 , g = 1 , z , k , n ;
            clrscr();
            cout << " how many number for fibonachi ? : " ;
            cin >> n ;
            n -= 2 ;
            cout << x << " " << g << " " ;
            z = x + g ;
            cout << z << " " ;
            for (k = 1 ; k <= n -1 ; k++ ){
                        x = g ;
                        g = z ;
                        z = x + g ;
                        cout << z << " " ;
            }
            getch() ;
            return 0 ;
}

----------


## SilverLearn

*برنامه ای بنویسید که کارکتری را که نشان دهنده رنگی است ، از ورودی خوانده به شما بگوید که چه رنگی را می خواهد انتخاب کند . مثلاٌ 
کاربر حرف 'r' را وارد کرد برنامه به او بگوید که دوست دارد رنگ قرمز را  انتخاب کند . برای تمام موارد حروف کوچک و بزرگ کنترل شود . مثل 'r' و 'R'  برای رنگ قرمز.
*


#include <stdio.h>
#include <iostream.h>
#include <conio.h>
int main(){
            char ch , x='y' ;
            while (x=='y'){
                        cout << " please enter r,g,b,w,y for color : ";
                        cin >> ch ;
                        switch (ch) {
                                    case 'R' :
                                    case 'r' :
                                                cout << " red \n" ;
                                                break;
                                    case 'G' :
                                    case 'g' :
                                                cout << " Grean \n";
                                                break;
                                    case 'B' :
                                    case 'b' :
                                                cout << " black \n";
                                                break;
                                    case 'W' :
                                    case 'w' :
                                                cout << " White \n";
                                                break;
                                    case 'Y' :
                                    case 'y' :
                                                cout << " Yellow \n";
                                                break;
                                    default :
                                                cout << " This is not into list color " ;
                        }
            cout << "please enter Y/N for continu : " ;
            cin>>x;
            }
            getch() ;
            return 0 ;
}

----------


## SilverLearn

*برنامه ای بنویسید که خروجی زیر را در صفحه نمایش چاپ کند .

**
*
**
***
****
*****
******



 
#include <iostream.h>
#include <conio.h>
int main(){
            int i , j ;
            for (i = 1 ; i<=6 ; i++ ) {
                        for ( j = 1 ; j<=i ; j++ ) {
                                    cout << "*";
                        }
            cout  << "\n" ;
            }
 
            getch() ;
            return 0 ;
}  

*

----------


## SilverLearn

*برنامه ای بنویسید که اعدادی را از ورودی خوانده تشخیص دهد آیا اعداد  مورد نظر ، کامل هستند یا خیر . عددی کامل است که مجموع مقسوم علیه های آن (  به جزء خودش ) 

برابر با آن عدد باشد . پس از بررسیهر عدد ، برنامه باید از کاربر سوال کند که می خواهد به کارش ادامه دهد یا خیر.


*

#include <iostream.h>
#include <conio.h>
int main(){
            int n ,i, s=1,x=1;
            char z;
            while (x){
            cout << " please enter 1 number for compelet number : ";
            cin >> n;
 
 
                        for (i=2;i<n;i++){
                                    if ((n%i)==0){
                                    s+=(n/i);
                                    }
                        }
 
                        if (n==s){
                                    cout <<" number is complet : " <<  n;
                        }
                        else {
                        cout << "not complete";
                        }
                        cout << " \n do you want to continue y/n : " ;
                                    cin >> z ;
                        if (z=='y')
                                    continue;
                        else
                                    x=0;
            }
            getch();
            return 0 ;
 
}

----------


## SilverLearn

برنامه ای بنویسید که شماره دانشجویی و معدل  تعداد n  دانشجو را از ورودی خوانده ، دانشجویی را که دومین معدل را از نظر  بزرگی دارد پیدا کند و به خروجی ببرد.



#include <iostream.h>
#include <conio.h>
int main(){
            int n , i;
            long int number , number1 = 0 , number2 = 0 ;
            float ave=0 , maxave = 0 , twoave = 0;
            cout << "please n student : " ;
            cin >> n ;
            for (i=0 ; i<n ; i++) {
                        cout << " please number student : " ;
                        cin >> number ;
                        cout << " please average student : " ;
                        cin >> ave ;
                        if (ave > 20 ) {
                                    cout << " please enter average <= 20 : " ;
                                    cin >> ave ;
                        }
                        if ( ave > maxave ) {
                                    twoave = maxave ;
                                    maxave = ave ;
                                    number2 = number1 ;
                                    number1 = number ;
                        }
                        else if (ave > twoave ){
                                    twoave = ave ;
                                    number2 = number ;
                        }
            }
            cout << " maxaverage is  " << maxave << " number student " << number1 ;
            cout << "\n twoaverage is  " << twoave << " number student " << number2;
            getch() ;
            return 0 ;
}

----------


## گندم از بهشت

با عرض سلام و خسته نباشید
اگر یه لیست رو تعریف کنم بعد برای به دست آوردن یه فرمول مثلا x+y استفادش کنم، به طوری که x و y از لیست انتخاب شده باشن.. اون وقت از چه دستوری باید استفاده کنم تا فقط جواب رو تو اون بازه یی که من می خوام بهم بده؟
ممنون میشم اگه راهنماییم کنین :متفکر:

----------

