برنامه نویسی به زبان ++c و Fortran 90

برنامه نویسی به زبان

C++

تالیف:مهندس عین الله جعفرنژاد قمی

نوع فايل:doc قابل ويرايش

رمز فايل: www.sasily.persianblog.ir

 

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

دانلود برنامه Borland C++ 5.02 For WIN

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

 

نمونه تمرینات حل شده ++C :

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

 

جواب:ابتدا باید بدانیم که در این برنامه اگر تعداد دانشجوها از 2 کمتر باشد نمی‌توانیم دومین معدل را محاسبه کنیم، پس برنامه پیغام Error را چاپ کرده و خارج می‌شود.

 

n : تعداد دانشجوها

i : ّشمارنده

id-max1 : شماره دانشجویی دانشجو با بالاترین معدل

id-max2 : شماره دانشجویی دانشجو با دومین معدل از نظر بزرگی

ave-max1 : بالاترین معدل

ave-max2 : دومین معدل از نظر بزرگی

id : شماره دانشجویی گرفته شده از ورودی

ave : معدل گرفته شده از ورودی

#include≤stdio.h>

#include≤conio.h>

int main()

{

      int n, i=0, id_max1, id_max2, id;

      float ave_max1, ave_max2, ave;

      clrscr();

      printf("Please enter number of student: ");

      scanf("%d",&n);

      if(n<2)

      {

            printf("\n Error");

            return 0;

      }

      printf("\n Please enter %d id: ",i+1);

      scanf("%d",&id);

      printf("\n Please enter %d average: ",i+1);

      scanf("%f",&ave);

      id_max1=id;

      id_max2=id;

      ave_max1=ave;

      ave_max2=ave;

      i++;

      printf("\n Please enter %d id: ",i+1);

      scanf("%d",&id);

      printf("\n Please enter %d average: ",i+1);

      scanf("%f",&ave);

      if(ave>ave_max1)

      {

            ave_max1=ave;

            id_max1=id;

      }

      else

      {

            ave_max2=ave;

            id_max2=id;

      }

      i++;

      for(i=3 ; i<=n ; i++)

      {

            printf("\n Please enter %d id: ",i);

            scanf("%d",&id);

            printf("\n Please enter %d average: ",i);

            scanf("%f",&ave);

            if(ave>=ave_max1)

            {

                  ave_max2=ave_max1;

                  id_max2=id_max1;

                  ave_max1=ave;

                  id_max1=id;

            }

            else if(ave>=ave_max2)

            {

                  ave_max2=ave;

                  id_max2=id;

            }

      }

      printf("\n the average is: %.2f , the id is: %d",ave_max2, id_max2);

      getch();

      return 0;

}

 

 

2ـ برنامه‌ای بنویسید که اعدادی را از ورودی خوانده تشخیص دهد که آیا اعداد مورد نظر، کامل هستند یا خیر، عددی کامل است که مجموع مقسوم علیه‌های آن (به جز خودش) با آن عدد برابر باشد. پس از بررسی هر عدد، برنامه باید از کاربر سوال کند که می‌خواهد بکارش ادامه دهد یا خیر؟

 

جواب: در این مسئله چون تعداد اعداد مشخص نشده است پس باید در هر مرحله از کاربر سوال شود که برای تشخیص عدد دیگری را در نظر دارد یا نه و بر اساس پاسخ کاربر مراحل مورد نظر اجرا شود.

 

n : عدد مورد نظر

i : ّشمارنده

s : شماره دانشجویی دانشجو با بالاترین معدل

sum : مجموع مقسوم علیه‌ها

r : باقیمانده تقسیم

 

#include≤stdio.h>

#include≤conio.h>

int main()

{

      int n, i, sum, r;

      char s='y';

      clrscr();

      while(s=='y')

      {

            sum=0;

            printf("\n Please enter your number: ");

            scanf("%d",&n);

            for(i=1 ; i

            {

                  r=n%i;

                  if(r==0)

                        sum=sum+i;

            }

            if(sum==n)

                  printf("\n %d is perfect number ",n);

            else

                  printf("\n %d is not perfect number ",n);

            printf("\n do you have another number?(y/n): ");

            s=getche();

      }

      getch();

      return 0;

}

 

 

3ـ برنامه‌ای بنویسید که خروجی زیر را در صفحه نمایش تولید کند.

*

**

***

****

*****

******

 

جواب: این مسئله از طریق دو حلقه for تو در تو حل می‌شود. حلقه‌ی اول برای مشخص کردن شماره‌ی سطرها و حلقه‌ی دوم برای مشخص کردن تعداد ستاره‌ها در هر سطر که در این مسئله برابر همان شماره سطر می‌باشد.

 

i : شمارنده حلقه اول

j : ّشمارنده حلقه دوم

 

#include≤stdio.h>

#include≤conio.h>

int main()

{

      int i, j;

      clrscr();

      for(i=1 ; i<=6 ; i++)

/ 0 نظر / 16 بازدید