X
تبلیغات
وبلاگ دانشگاهی حمیدرضا ایمانی کیا - برنامه نویسی به زبان سی شارپ
فایل زیر حاوی اسلایدهای مربوط به آموزش مقدماتی برنامه نویسی سی شارپ برای درس مبانی کامپیوتر و برنامه سازی می باشد.

دریافت فایل


برچسب‌ها: آموزش سی شارپ, آموزش, C
+ نوشته شده در چهارشنبه 6 آذر1392ساعت 22:32 توسط حمیدرضا ایمانی کیا |

حرکت توپ در صفحه کنسول

 (این برنامه با سی شارپ و در محیط ویژوال استودیو ۲۰۰۸  نوشته شده است)

در این پروژه خواسته شده است، توپی از مرکز پایین صفحه شروع به حرکت به سمت بالا و  راست نماید. در صفحه مورد نظر، می توان دو مانع (یکی بصورت افقی و دیگری بصورت عمودی) تعریف نمود. توپ پس از برخورد با این موانع و یا کناره های صفحه، بصورت آینه ای منعکس می شود و به حرکت خود ادامه می دهد. پایان برنامه با زدن کلید ESC می باشد. می توان با زدن کلیدی مانند A یکی از مختصات x توپ کم نمود.(جهت جلوگیری از حرکت تکراری توپ در صفحه، در صورت بوجود آمدن آن).

توضیحات ارائه شده درباره این پروژه که در فایل همراه پروژه آورده شده است، با درخواست بنده و  توسط خانم تک فلاح نوشته شده است.

نمونه ای از خروجی این پروژه :

نمونه ای از خروجی پروژه

دریافت سورس پروژه و توضیحات مربوطه

+ نوشته شده در شنبه 3 مهر1389ساعت 23:37 توسط حمیدرضا ایمانی کیا |

برنامه زیر نحوه دریافت کلید را بدون اینکه اجرای برنامه متوقف شود را نشان میدهد

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

class Program
{
    static void Main(string[] args)
    {
        bool b = true;
        long i = 1;
        ConsoleKeyInfo k;
        Console.WriteLine("Press ESC key for Exit ");
        Console.WriteLine("Press Space key for Pause/Resume ");
        while (b)
        {
            Console.SetCursorPosition(10, 10);
            Console.Write(i++);
            if (Console.KeyAvailable)
            {
                k = Console.ReadKey(true);
                if (k.Key == ConsoleKey.Escape)
                    b = false;
                else if (k.Key == ConsoleKey.Spacebar)
                {
                    while (!Console.KeyAvailable)
                        Thread.Sleep(10);
                    k = Console.ReadKey(true);
                }
            }
        }
    }
}
+ نوشته شده در پنجشنبه 24 تیر1389ساعت 23:54 توسط حمیدرضا ایمانی کیا |

متدی بنویسید که با دریافت تعداد سطرها، شکل زیر را رسم نماید

 

 

 

 

 

 

 

 

*

 

 

 

 

 

 

*

*

 

 

 

 

 

*

*

*

 

 

 

 

*

*

*

*

 

 

 

*

*

*

*

*

 

 

*

*

*

*

*

*

 

 

 

*

*

*

*

*

 

 

 

 

*

*

*

*

 

 

 

 

 

*

*

*

 

 

 

 

 

 

*

*

 

 

 

 

 

 

 

*


ادامه مطلب
+ نوشته شده در چهارشنبه 2 تیر1389ساعت 20:57 توسط حمیدرضا ایمانی کیا |

قطعه برنامه ای بنویسید که با دریافت مقدار n  (تعداد سطر = تعداد ستون)  شکل زیر را تولید کند. (فرض میشود که مقدار n  فرد است) (راهنمایی: از قانون زوج و فرد بودن استفاده نمایید)

n

 

 

 

 

 

n
/2

 

 

3

2

1

 

 

*

 

*

 

*

 

*

 

*

 

1

*

 

*

 

*

 

*

 

*

 

*

2

 

*

 

*

 

*

 

*

 

*

 

3

*

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

*

n/2

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

*

 

 

*

 

*

 

*

 

*

 

*

 

n

 

ادامه مطلب
+ نوشته شده در چهارشنبه 2 تیر1389ساعت 20:35 توسط حمیدرضا ایمانی کیا |

متد بازگشتی زیر را یکبار با مقادیر (27,9) و بار دوم با  (64,48) دنبال کرده(با تکنیک بازگشتی) و بگویید این متد چه عملی را انجام می دهد.

static int PBN(int x,int y)
{
     if (y == 0)
        return x;
     else
        return PBN(y, x % y);
}


ادامه مطلب
+ نوشته شده در سه شنبه 1 تیر1389ساعت 1:5 توسط حمیدرضا ایمانی کیا |

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


ادامه مطلب
+ نوشته شده در دوشنبه 31 خرداد1389ساعت 20:23 توسط حمیدرضا ایمانی کیا |

با کمک آرایه متدی بنویسید که پرتاب تعداد 6000 بار یک تاس را انجام داده و تعداد دفعات تکرار هر وجه را نمایش دهد.
ادامه مطلب
+ نوشته شده در دوشنبه 31 خرداد1389ساعت 20:12 توسط حمیدرضا ایمانی کیا |

این برنامه با استفاده از متدی، آینه ای بودن یک آرایه را بررسی می نماید.

آرایه ای آینه ای است که نسبت به عنصر میانی آرایه، قرینه باشد.

مثلا آرایه زیر آینه ای است:

{ 1, 3, 6, 7, 4, 12, 12, 4, 7, 6, 3, 1 }


ادامه مطلب
+ نوشته شده در شنبه 15 خرداد1389ساعت 23:55 توسط حمیدرضا ایمانی کیا |

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


ادامه مطلب
+ نوشته شده در شنبه 15 خرداد1389ساعت 23:20 توسط حمیدرضا ایمانی کیا |

ارسال آرایه ای دوبعدی به متد

تولید جدول ضرب ده در ده توسط آرایه دوبعدی،

محاسبه مجموع اعداد درون هر سطر و قرار دادن نتیجه در ستون آخر همان سطر

محاسبه مجموع اعداد درون هر ستون و قرار دادن نتیجه در سطر آخر همان ستون


ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 23:15 توسط حمیدرضا ایمانی کیا |

تعریف یک آرایه دو بعدی، تولید و چاپ جدول ضرب ده در ده توسط آن
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 23:6 توسط حمیدرضا ایمانی کیا |

ارسال یک پارامتر به دو متد یکی با روش ارجاعی  و دیگری با روش مقداری و مشاهد نتیجه کار
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:57 توسط حمیدرضا ایمانی کیا |

با کمک تابع بازگشتی، یک عدد مبنای ده را به مبنای دو نبدیل و چاپ می نماییم.
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:52 توسط حمیدرضا ایمانی کیا |

استفاده از تابع بازگشتی برای محاسبه مجموع اعداد از یک تا N

این تابع همانند تابع فاکتوریل می باشد (با تفاوت جزئی)


ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:49 توسط حمیدرضا ایمانی کیا |

با استفاده از تابع بازگشتی،  دنباله سری فیبوناچی  زیر یک میلیون را محاسبه و چاپ می نماییم.
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:46 توسط حمیدرضا ایمانی کیا |

با استفاده از تکنیک بازگشتی مقدار فاکتوریل یک عدد را بدست می آوریم.
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:42 توسط حمیدرضا ایمانی کیا |

ارسال آرایه بعنوان پارامتر به متد (نام های ظاهری و واقعی برای پارامتر)

محاسبه مقدار "نسبت ماکزیمم اعداد درون آرایه به مقدار مینیمم اعداد"  و برگرداندن آن توسط متد


ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:36 توسط حمیدرضا ایمانی کیا |

آرایه ای ایجاد کرده و با مقادیر تصادفی آنرا پر می نماییم و سپس برای محاسبه میانگین اعداد درون آن، آن را بعنوان پارامتر به  متد ارسال می نماییم.
ادامه مطلب
+ نوشته شده در شنبه 1 خرداد1389ساعت 22:30 توسط حمیدرضا ایمانی کیا |

چاپ آرایه، محاسبه میانگین اعداد درون آرایه، کم کردن میانگین از تک تک اعضای آرایه و چاپ مجدد آرایه
ادامه مطلب
+ نوشته شده در جمعه 24 اردیبهشت1389ساعت 23:18 توسط حمیدرضا ایمانی کیا |

چاپ اعداد درون آرایه و ۲ برابر نمودن اعضای آرایه و سپس چاپ مجدد آنها
ادامه مطلب
+ نوشته شده در جمعه 24 اردیبهشت1389ساعت 23:15 توسط حمیدرضا ایمانی کیا |

دریافت عددی از ورودی (عدد کوچکتر از ۱۰۰۰) می باشد، سپس آن عدد را بصورت یک عدد رومی بنویسد.

با استفاد از آرایه


ادامه مطلب
+ نوشته شده در جمعه 24 اردیبهشت1389ساعت 23:7 توسط حمیدرضا ایمانی کیا |

پرتارب تاس به دفعات زیاد و شمارش تعداد دفعات تکرار هر وجه آن

نسخه دوم - با استفاده از آرایه


ادامه مطلب
+ نوشته شده در جمعه 24 اردیبهشت1389ساعت 23:2 توسط حمیدرضا ایمانی کیا |

پرتاب یک تاس به دفعات زیاد (مثلاْ ۶۰۰۰) بار و شمارش تعداد دفعات تکرار هر وجه آن

نسخه اول - بدون استفاده از آرایه


ادامه مطلب
+ نوشته شده در جمعه 24 اردیبهشت1389ساعت 22:58 توسط حمیدرضا ایمانی کیا |

+ نوشته شده در یکشنبه 19 اردیبهشت1389ساعت 20:50 توسط حمیدرضا ایمانی کیا |

سه میله با نام های  A, B, C داریم

بر روی میله A تعداد N حلقه به ترتیب از بزرگ (در پایین) به کوچک (در بالا) داریم.

می خواهیم حلقه ها را به میله C منتقل کنیم، با شرایط زیر:

در هر بار حرکت فقط یک حلقه امکان انتقال دارد.

حلقه بزرگ را نمی توان بر روی حلقه کوچک قرار داد

از میله دیگر می توان بعنوان میله کمکی استفاده نمود.

برج هانوی


ادامه مطلب
+ نوشته شده در یکشنبه 19 اردیبهشت1389ساعت 20:39 توسط حمیدرضا ایمانی کیا |

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

مقسوم علیه های عدد نیز محاسبه و چاپ خواهند شد.


ادامه مطلب
+ نوشته شده در یکشنبه 19 اردیبهشت1389ساعت 20:9 توسط حمیدرضا ایمانی کیا |

طراحی کلاسی ساده شامل

سه عدد صحیح با سطح دسترسی خصوصی 

سه ویژگی برای دسترسی به اعداد

متدهای ماکزیمم، مینیمم و میانگین این سه عدد

به همراه دو سازنده کلاس (بدون پارامتر و با پارامتر)


ادامه مطلب
+ نوشته شده در یکشنبه 19 اردیبهشت1389ساعت 20:3 توسط حمیدرضا ایمانی کیا |

جسمی از ارتفاعی (۱۰۰ متری) با سرعت اولیه صفر سقوط می نماید.

نمودار حرکت آن را می توان با برنامه زیر رسم نمود.


ادامه مطلب
+ نوشته شده در یکشنبه 19 اردیبهشت1389ساعت 19:53 توسط حمیدرضا ایمانی کیا |

هم اکنون سورس پروژه را می توانید از لینک زیر دریافت نمایید.

این برنامه تحت فرم می باشد.

دریافت سورس پروژه (تقویم شمسی)

دریافت سورس پروژه(از سرور دیگر)

و تحت محیط کنسول:

دریافت سورس پروژه (در محیط کنسول)

دریافت سورس پروژه (از سرور دیگر)

+ نوشته شده در سه شنبه 27 بهمن1388ساعت 0:12 توسط حمیدرضا ایمانی کیا |

مطالب قدیمی‌تر