حسین خسروی

وبلاگ دانشگاهی حسین خسروی، عضو هیات علمی دانشگاه صنعتی شاهرود

حسین خسروی

وبلاگ دانشگاهی حسین خسروی، عضو هیات علمی دانشگاه صنعتی شاهرود

حسین خسروی

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

پیوندهای روزانه

۳ مطلب با کلمه‌ی کلیدی «مبانی برنامه نویسی» ثبت شده است

  • ۰
  • ۰

تمرین سری سوم درس مبانی برنامه‌نویسی

الف) برنامه ای بنویسید که درایه های یک ماتریس 3*2 و 2*3 را از کاربر دریافت کند و ماتریس حاصلضرب را نمایش دهد.

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

  • عدد n از کاربر دریافت شود.
  • شماره دانشجویی حتما باید 7 رقمی باشد در غیر این صورت پیام خطای مناسب داده شده و دوباره دریافت شود.
  • معدل حتما باید بین 0 و 20 باشد در غیر این صورت پیام خطای مناسب داده شده و دوباره دریافت شود.

نمونه ای از اجرای برنامه ( اطلاعات زرد رنگ توسط کاربر وارد شده و سایر اطلاعات توسط برنامه تولید شده است)

Please enter number of students: 3
Please enter information for 3 students (name, ID, GPA):
Name 1: Hossein Khosravi
ID 1: 78123818
Invalid ID, try again: 7812381
GPA 1: 17.5
-------------------------------
Name 2: Ali Alavi
ID 2: 9225354
GPA 2: 15.5
-------------------------------
Name 3: Fatemeh Dadgar
ID 3: 9215764
GPA 3: 14.25
-------------------------------

Name                  ID            GPA
----------------      -------       -----
Hossein Khosravi      7812381       17.5
Ali Alavi             9225354       15.5
Fatemeh Dadgar        9215764       14.25


ج) برنامه ای بنویسید که یک رشته ریاضیاتی از کاربر گرفته و نتیجه آن را نمایش دهد. رشته مذکور تنها شامل یک عملگر از چهار عملگر اصلی بوده و دو عملوند دارد:

Please enter a mathematical expression: 42 + 36
ans = 78

روش تهیه و ارسال تمرینها

  • یک فایل word ایجاد کنید و کد نوشته شده به همراه یک نمونه اجرای برنامه را در آن قرار دهید (از خروجی برنامه با فشردن هم‌زمان دکمه‌های Alt و Print Screen عکس بگیرید و داخل فایل word کپی کنید).
  • به پوشه پروژه ای که ایجاد کرده اید رفته و فایلهای با پسوند c, cpp, h, cbp, vcxproj را در پوشه ای با نام خودتان (مثلا HosseinKhosravi) کپی کنید (پوشه‌های Debug و Release و ipch را نباید اضافه کنید).
  • فایل word را هم در همان پوشه کپی کنید و سپس پوشه را zip کنید.
  • اگر مراحل فوق درست انجام شده باشد فایل zip شده باید حجمی کمتر از 200 کیلوبایت داشته باشد. این فایل را به آدرس استاد حل تمرین بفرستید
  • عنوان ایمیل (subject) حتما شامل عبارت C_HW_03 باشد.

 موعد تحویل 17 آبان


  • حسین خسروی
  • ۰
  • ۰

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

تمرین سری دوم درس مبانی برنامه‌نویسی

1.    برنامه ای بنویسید که 10 عدد اعشاری از کاربر دریافت کرده، میانگین، انحراف معیار، مینیمم و ماکزیمم آنها را حساب کند. همچنین گراف این اعداد را با استفاده از * ترسیم کند. مثلا اگر اعداد 1 تا 10 به ترتیب وارد شده باشند باید اطلاعات زیر چاپ شود:

Average: 5.5
StdDev: 3.0277
Max: 10
Min: 1
*
**
***
****
*****
******
*******
********
*********
**********

2.    برنامه ای بنویسید که 5 رشته از کاربر دریافت کند و تعداد رشته های غیر تکراری را پیدا کند. مثلا اگر رشته های Ali, Abbas, Hossein, Ali, Hossein وارد شد، باید خروجی زیر حاصل شود:
Number of unique strings: 3
Ali, Hossein, Abbas
3.    برنامه ای بنویسید که یک عدد صحیح از کاربر دریافت کند و تعداد ارقام آن را حساب کند.

روش تهیه و ارسال تمرینها

  • یک فایل word ایجاد کنید و کد نوشته شده به همراه یک نمونه اجرای برنامه را در آن قرار دهید (از خروجی برنامه با فشردن هم‌زمان دکمه‌های Alt و Print Screen عکس بگیرید و داخل فایل word کپی کنید).
  • به پوشه پروژه ای که ایجاد کرده اید رفته و فایلهای با پسوند c, cpp, h, cbp, vcxproj را در پوشه ای با نام خودتان (مثلا HosseinKhosravi) کپی کنید (پوشه‌های Debug و Release و ipch را نباید اضافه کنید).
  • فایل word را هم در همان پوشه کپی کنید و سپس پوشه را zip کنید.
  • اگر مراحل فوق درست انجام شده باشد فایل zip شده باید حجمی کمتر از 200 کیلوبایت داشته باشد. این فایل را به آدرس استاد حل تمرین بفرستید
  • عنوان ایمیل (subject) حتما شامل عبارت C_HW_02 باشد.

 موعد تحویل 7 آبان


  • حسین خسروی
  • ۰
  • ۰
اولین گام در هر موضوع جدیدی، معمولا سخت ترین گام است و گامهای بعدی با توجه به اینکه ترس ما از موضوع ریخته است، دشواری ندارد.
برای شروع برنامه نویسی C، چند مثال از مثالهای که در کلاس مطرح شد، در اینجا قرار می دهم که روی رایانه خودتان تست کنید و برای نوشتن تمرینها آمادگی داشته باشید:

مثال 1: برنامه سلام دنیا

#include <stdio.h>
int main()
{
   // printf() displays the string inside quotation
   printf("Hello, World!");
   return 0;
}

خروجی مثال سلام دنیا

Hello, World!

مثال 2: بررسی زوج و فرد بودن عدد ورودی

#include <stdio.h>
int main()
{
    int number;

    printf("Enter an integer: ");
    scanf("%d", &number);

    // True if the number is perfectly divisible by 2
    if(number % 2 == 0)
        printf("%d is even.", number);
    else
        printf("%d is odd.", number);

    return 0;
}

خروجی مثال زوج و فرد

Enter an integer: -7
-7 is odd.

مثال 3: جابجا کردن مقدار دو متغیر با استفاده از متغیر کمکی

توضیح: این مثال برای جابجایی دو عدد اعشاری (double) نوشته شده است. برای دریافت اعداد اعشاری از lf% استفاده می کنیم. اگر بخواهید برنامه را برای اعداد صحیح بنویسید، به جای double از int و به جای lf% از d% استفاده کنید.

Swaping Number
#include <stdio.h>
int main()
{
      double firstNumber, secondNumber, temporaryVariable;

      printf("Enter first number: ");
      scanf("%lf", &firstNumber);

      printf("Enter second number: ");
      scanf("%lf",&secondNumber);

      // Value of firstNumber is assigned to temporaryVariable
      temporaryVariable = firstNumber;

      // Value of secondNumber is assigned to firstNumber
      firstNumber = secondNumber;

      // Value of temporaryVariable (which contains the initial value of firstNumber) is assigned to secondNumber
      secondNumber = temporaryVariable;

      printf("\nAfter swapping, firstNumber = %.2lf\n", firstNumber);
      printf("After swapping, secondNumber = %.2lf", secondNumber);

      return 0;
}

خروجی مثال جابجایی دو عدد

Enter first number: 1.20
Enter second number: 2.45

After swapping, firstNumber = 2.45
After swapping, secondNumber = 1.20
مثالها از سایت مثالهای C برداشته شده است و می توانید مثالهای بیشتری را آنجا مطالعه کنید.
  • حسین خسروی