بسم الله الرحمن الرحيم

44
www.ali-arabi.com www.ali-arabi.com

Upload: juro

Post on 07-Jan-2016

22 views

Category:

Documents


0 download

DESCRIPTION

بسم الله الرحمن الرحيم. نام درس : برنامه نویسی رایانه – مکانیک تعداد واحد : 2 نوع واحد : عملی – نظری پیشنیاز : هدف : سرفصل دروس ( 16 ساعت نظری + 64 ساعت عملی) 80 ساعت مقدمه و تاریخچه مختصر کامپیوتر ( 1 تا 2 ساعت ) اجزاء سخت افزار ( پردازنده مرکزی – حافظه اصلی – امکانات جانبی ) (2تا 3 ساعت) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

Page 2: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دقیق : – ابزار و کنترل ای رایانه نویسی برنامه درس نامواحد : 2تعداد

نظری : – عملی واحد نوعپیشنیاز :

قادر : درسی واحد این گذراندن از پس دانشجو هدفتحلیل و تجزیه ابتدا را فنی یا ریاضی مسئله یک بود خواهد

برنامه آنگاه و نوشته را مسئله حل الگوریتم سپس و نمودهزبان به کامپیوتر Cرا وارد را آن محاسبات، برای و نوشته

نماید.

دروس : نظری – 17سرفصل عملی 51ساعت ساعت

کامپیوتر 1. مختصر تاریخچه و مقدمه

اصلی ) – – 2. حافظه مرکزی پردازنده افزار سخت اجزاءجانبی ( ) (3تا 2امکانات ساعت

سطح ) 3. زبانهای و اسمبلی ، ماشین زبان آن انواع و زبانباال (

.4 ( ، آن انواع و عامل سیستم آن انواع و افزار نرم تعریف( ) کاربردی های برنامه ، مترجم های (2تا 1برنامه ساعت

تجزیه : 5. ، مسئله تحلیل ، تعریفمسئله مسئله حل مراحلآنها ) ارتباط تعیین و کوچکتر مسائل به (1مسئله ساعت

و : 6. حل راه دادن عمومیت الگوریتم، تعریف الگوریتمبیان نما، روند کمک به الگوریتم بیان الگوریتم، طراحی

مفهوم الگوریتم، کردن دنبال کد، شبه کمک به الگوریتمالگوریتم ) (6تا 4زیر ساعت

برنامه، : 7. کلی ساختار برنامه، تعریف مسائل حل و برنامهشامل : سازی برنامه اساسی ساختمانهای

ها( ) شرط تکرار، توالی، و ترتیب منطقی های ساخت الف) بازگشتی مفهوم گیری، تصمیم و

صحیح، ( ) : ساده یی داده های گونه یی داده های ساخت بیی – داده های گونه کاراکتری یا ای نویسه بولین، اعشاری،

مجموعه : ( رکورد، آرایه، مرکبپارامترها ( ) ( انتقال نحوه ها روال زیر ج

عملیات ( و پردازی فایل فایل، مفهوم با آشنایی دخروجی/ ورودی

زبان به بایستی می فوق .Cمفاهیم شوند بیان

مکانیک : – رایانه نویسی برنامه درس نامواحد : 2تعداد

نظری : – عملی واحد نوعپیشنیاز :

هدف :

دروس ) نظری + 16سرفصل ( 64ساعت عملی 80ساعتساعت

کامپیوتر ) 1. مختصر تاریخچه و ساعت (2تا 1مقدمه

اصلی ) – – 2. حافظه مرکزی پردازنده افزار سخت اجزاءجانبی ( ) (3تا 2امکانات ساعت

سطح ) 3. زبانهای و اسمبلی ، ماشین زبان آن انواع و زبانساعت (3تا 2باال ( )

.4 ( ، آن انواع و عامل سیستم آن انواع و افزار نرم تعریف( ) کاربردی های برنامه ، مترجم های (2تا 1برنامه ساعت

تجزیه : 5. ، مسئله تحلیل ، تعریفمسئله مسئله حل مراحلآنها ) ارتباط تعیین و کوچکتر مسائل به (1مسئله ساعت

و : 6. حل راه دادن عمومیت الگوریتم، تعریف الگوریتمبیان نما، روند کمک به الگوریتم بیان الگوریتم، طراحی

مفهوم الگوریتم، کردن دنبال کد، شبه کمک به الگوریتمالگوریتم ) (6تا 4زیر ساعت

برنامه، : 7. کلی ساختار برنامه، تعریف مسائل حل و برنامهشامل : سازی برنامه اساسی ساختمانهای

ها( ) شرط تکرار، توالی، و ترتیب منطقی های ساخت الف) بازگشتی مفهوم گیری، تصمیم و

صحیح، ( ) : ساده یی داده های گونه یی داده های ساخت بیی – داده های گونه کاراکتری یا ای نویسه بولین، اعشاری،

مجموعه : ( رکورد، آرایه، مرکبپارامترها ( ) ( انتقال نحوه ها روال زیر ج

عملیات ( و پردازی فایل فایل، مفهوم با آشنایی دخروجی/ ورودی

پاسکال، زبان سه از یکی به بایستی می فوق مفاهیمزبان 77فرترن یا و باالتر، .Cیا شوند بیان

Page 3: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

معرفيسرفصلها :ومنابع

معرفيسرفصلها :ومنابع

توابع - - - - - برخي عملگرها ثابتها ها داده ها شناسه مقدمهو - - حلقه دستورات خروجي و ورودي دستورات اي كتابخانهاشكال - - - ها آرايه بازگشتي توابع و پارامترها و توابع شرط

- - ) ( - فايلها ركورد ساختارها آن آزمايش و برنامه -زدائيها پورت

:منابع

و : ..., …Christian Nagelمولف – : C#2008مرجع- 1 پهلوان احمد ترجمه2 -Professional C# 2008.pdf

غیبت ) 3 هر ازای به کالسی (0/5نمره کسر نمره5) چارت ) فلو و الگوریتم ترم پایان تئوری نمره

ترم 12 پایان عملی نمره

Page 4: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

C #_ .است Case Sensitive اصطالحا

: شناسه

< Letter | _ > < Letter | Digit | _ > . . . < Letter | Digit | _ >

int ، بایت 4

char ، بایت 2

float ، بایت 4

double ، بایت8

int i , j=12 ;

float f=12.5F ;

double d=12.5 ;

char c = ‘m’ ;

string n=“Book_2”;

bool a=true;

string

bool ، بایت 1

داده ها

عددی

عددی الفبا

منطقی

صحیح

اعشاری

اعشاری

Page 5: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com eg. : short i =10 , j ; double e= 2.71828182845905 ;

Integral Types Table (Integral Types Table ( صحیح های داده صحیح انواع های داده (( انواع

TypeRangeSize

SByte(sbyte)-128 to 127Signed 8-bit integer

Byte(byte)0 to 255Unsigned 8-bit integer

Char(char)U+0000 to U+ffffUnicode 16-bit character

Int16(short)-32,768 to 32,767Signed 16-bit integer

UInt16(ushort)0 to 65,535Unsigned 16-bit integer

Int32(int)-2,147,483,648 to 2,147,483,647Signed 32-bit integer

UInt32(uint)0 to 4,294,967,295Unsigned 32-bit integer

Int64(long)-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807Signed 64-bit integer

UInt64(ulong)0 to 18,446,744,073,709,551,615Unsigned 64-bit integer

Floating-PointFloating-Point Types Table ( Types Table ( اعشاری های داده اعشاری انواع های داده ((انواع

TypeRangeSizePrecision

float(Single)±1.5e−45 to ±3.4e3832-bit7 digits

Double(double)±5.0e−324 to ±1.7e30864-bit15-16 digits

بیشتر بدانیم

Page 6: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ها ها :ثابت :ثابت

0x12 , 0X12 , 12 : صحيح

3e+5 , 3e5 , 3.2e-4 , 12.6 : اعشاري

‘#’و ’9‘و ’ A ‘ :كاراكتر

[email protected]“و ”a123“و ”Computer“ : رشته

true , falseمنطقی :

نمادين : (سمبوليك) ثابتهاي

const float pi = 3.14F;

const int id = 20 ;

/*…………*/یا : // (Comment) توضيحات

Page 7: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

عملگرها (Operators: )

عملگرها (Operators: )

محاسباتي ) + , - , * , / , % ( : عملگرهاي

5 / 2 = 2 , 5.0 / 2 = 5 / 2.0 = 2.5 , 9.5 % 2 = 1.5, )int(9.5%2 = 1

يكتائي (sizeof) - , + + , - - , : عملگرهاي

+ + n ; // n = n + 1 ; n + + ;

منطقي و اي مقايسه ) > , < , >= , <= , = = , ! : عملگرهاي) ! , || , && , =

جايگزيني ) = , += , -= , *= , /= , %= ( : عملگرهاي

s += n ; // s = s + n ; x = y = 3 ;

شرطي ; a > b ( ? a : b ( = max: ) ?: ( عملگر

اي : ) * , / + , - مقايسه ـــ ـــ ـــ يكتائي عملگرها اولويتـــ = = , =! جايگزيني || && ـــ ـــ ) ـــ

Page 8: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

و Console.Write خروجيات دستورConsole.WriteLine:

و Console.Write خروجيات دستورConsole.WriteLine:

Console.Write)"abc"(;Console.WriteLine)"def"(;

Console.WriteLine)"abc"(;Console.WriteLine)"def"(;

int a = 5, b = 10;Console.WriteLine)"Sum Of a,b is {0}", a + b(;Console.WriteLine)"Sum Of {0},{1} is {2}", a, b, a + b(;

double d = 19.76, e = 123456.344;Console.WriteLine)d.ToString)"00.0"((;Console.WriteLine)e.ToString)"0,0.00"((;

Console.ReadKey)(;

abcdefabcdefSum Of a, b is 15Sum Of 5, 10 is 1519.8123,456.34

Page 9: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

int a = 27;Console.WriteLine)a.ToString)"X"((;

double d = 1230000;Console.WriteLine)d.ToString)"E"((;Console.WriteLine)d.ToString)"0.000E+0"((;Console.WriteLine)d.ToString)"00.000E+0"((;

Console.WriteLine)"a=\t{0}\n\ab=\t{1}", a, d(;

Console.ReadKey)(;

1B1.230000E+0061.230E+612.300E+5a= 27b= 1230000

\a = Alarm , \b = Backspace , \n = New Line , \t = Tab

Page 10: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ورودي دستورConsole.ReadLine:

ورودي دستورConsole.ReadLine:

string s; s=Console.ReadLine();

int i; i=Convert.ToInt32(s); Console.WriteLine(i + i);

i = Int32.Parse(s); Console.WriteLine(i + i); double d = Convert.ToDouble (Console.ReadLine()); //double d = double.Parse(Console.ReadLine()); Console.WriteLine(d);

Page 11: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

کالس ) توابع ریاضی آمادهMath) :

کالس ) توابع ریاضی آمادهMath) :

اي - النه اي محاوره يا واكنشي نويسي برنامه (تورفتگي)

تابع تابع نام تابع کار تابع نام کار

1- Math.Abs مطلق مبنای ) Log10 -13 قدر اعشاری لگاریتم10)

2- Acos) رادیان ) کسینوس توانPow -14آرک

3- Asin سینوس عدد Round -15آرک کردن گرد

4- Atan تانژانت عالمتSign -16آرک

5- BigMul بزرگ اعداد سینوسSin -17حاصلضرب

6- Ceiling یا بزرگتر صحیح عددمساوی

18- Sinh هایپربولیک سینوس

7- Floor صحیح جذرSqrt -19جزء

8- Cos حسب بر زاویه کسینوسرادیان

20- Tanتانژانت

9- Cosh هایپربولیک هایپربولیک Tanh -21کسینوس تانژانت

10- DivRem باقیمانده و قسمت اعشار Truncate -22خارج قسمت حذف

11- Exp نپر عدد از نپر )E -23توانی (2.718عدد

12- Log مبنای هر یا نپرین لگاریتمدیگر

24- PI( پی (3.14عدد

Page 12: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

: دستورات : دستورات

ساده( الف

جایگزینی- : 1

x = 2 ; y = Math.Pow ) x , 2 ( + 1 ;

كاهشي -2 يا : افزايشي

+ + x ; x - - ;

ها -3 برنامه زير يا توابع :فراخواني

Console.Clear)(; Console.WriteLine)"Test"(;

مركب( بين :ب دستور ( } { (تعدادي

كنترل( حلقه : )ج و )شرط

Page 13: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

if دستور:

if دستور:

Syntax: if ) exp ( statement1 ; [ else statement 2 ; ]

eg.1: if ) a > b ( Console.WriteLine)a(;

eg.2: if )a < b( Console.WriteLine)a(; else Console.WriteLine)b(;

if )a < b( Console.WriteLine)a(;

else Console.WriteLine)b(;

eg.3: if )a < b(

{

int t = a;

a = b; b = t;

}

eg.4: if )a >= 10 && a < 100(

Console.WriteLine)"Two Digits"(;

Page 14: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

رشته مقایسهها :

رشته مقایسهها :

string str1, str2;

str1 = Console.ReadLine)(;

str2 = Console.ReadLine)(;

if )str1 == str2( //if )str1.CompareTo)str2(==0(

Console.WriteLine)"Equal"(;

if )str1 != str2( //if )str1.CompareTo)str2(!=0(

Console.WriteLine)"Not Equal"(;

//if )str1 < str2( خطاif )str1.CompareTo)str2( < 0( //if )string.Compare)str1, str2( < 0(

Console.WriteLine)"{0} Less Than {1}", str1, str2(;

if )string.Compare)str1, str2, true( == 0( //Ignore Case

Console.WriteLine)"{0} Equal {1}", str1, str2(;

Page 15: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

switch دستور :

switch دستور :

Syntax: switch ) exp ( statement ) باشد كاراكتر يا صحيح ) exp بايد

eg. : switch )a(

{

case 0: Console.WriteLine )"Zero"(;

break;

case 1: Console.WriteLine)"One"(;

break;

case 2:

case 3: Console.WriteLine)"Two or Three"(;

break;

default: Console.WriteLine)"Greater Than or Equal Four "(;

break;

}

Page 16: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

do ... و while دستوراتwhile :

... do و while دستوراتwhile :

Syntax: while ) exp ( statement ;

do statement while ) exp ( ;

eg.1: int x = 1;

while )x <= 10(

{

Console.WriteLine)x(;

x++;

}

//while )x <= 10( Console.WriteLine)x++(;

eg.3: int x = 0 ;

while ) x < 10 ( Console.WriteLine)++x ( ;

// do Console.WriteLine)++x ( ; while ) x < 10 ( ;

eg.2: int x = 1 ; do { Console.WriteLine)x(; x++; } while )x <= 10(;

Page 17: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

در تو های حلقهتو :

در تو های حلقهتو :

int r, c; r = 1; while )r <= 10( { c = 1; while )c <= r( { Console.Write)"{0} ",c(; c++; } r++; Console.Write)"\n"(; //Console.WriteLine)(; }

11 21 2 31 2 3 41 2 3 4 51 2 3 4 5 61 2 3 4 5 6 71 2 3 4 5 6 7 81 2 3 4 5 6 7 8 91 2 3 4 5 6 7 8 9 10

Page 18: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دستورfor :

دستورfor :

Syntax: for ) [exp1] ; [exp2] ; [exp3] ( statement ;

eg.1:

int x ;

for ) x = 1 ; x <= 10 ; x ++ (

Console.WriteLine )x( ;

int x = 1; for ); x <= 10; ( Console.WriteLine)x++(;

int x = 1;

for ); ; (

{

Console.WriteLine)x++(;

if )x > 10( break; // حلقه دستورات همه }

int x = 1;

for ); x <= 10; x++(

Console.WriteLine)x(;

Page 19: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دستورContinue : دستور

Continue :

eg.2: int s = 0, i = 1, n; while )i <= 10( { n = Convert.ToInt32)Console.ReadLine)((; i++; if )n < 0( continue; s += n; } Console.WriteLine)s(;

eg.1: int s = 0, n; for )int i = 1; i <= 10; i++( { n = Convert.ToInt32)Console.ReadLine)((; if )n < 0( continue; s += n; } Console.WriteLine)s(;

Page 20: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دستورgoto :

دستورgoto :

eg.1:

int x = 1;

L1: Console.WriteLine)x(;

x++;

if )x <= 10( goto L1;

Console.ReadKey)(;

Identifier

Page 21: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ها آرايه :

ها آرايه :

type[ ] Array_name ;

int[ ] x = new int[3];

string[ ] s = new string[10];

double[ , ] m = new double[30, 4];

int[] m = new int[5];for (int i = 0; i < 5; i++) m[i] = Convert.ToInt32(Console.ReadLine()); for (int i = 0; i < 5; i++) Console.WriteLine(m[i]);

Page 22: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

int [,] a = new int [2, 3];for )int i = 0; i < 2; i++( for )int j = 0; j < 3; j++( a[i,j] = Convert.ToInt32)Console.ReadLine)((;for )int i = 0; i < 2; i++( for )int j = 0; j < 3; j++( Console.WriteLine)a[i,j](;

int i, j, t;int[] m = new int[5];for )i = 0; i < 5; i++( m[i] = Convert.ToInt32)Console.ReadLine)((;for )i = 0; i < 4; i++( for )j = i + 1; j < 5; j++( if )m[i] > m[j]( {

t = m[i]; m[i] = m[j]; m[j] = t; }

دوبعدي آرايه

آرايه كردن مرتب

باشد : ای رشته آرایه اگر if (string.Compare(m[i],m[j])>0)

Page 23: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

اوليه دهي مقدارها : آرايه

اوليه دهي مقدارها : آرايه

int[ ] a = new int[5]; //{0, 0, 0, 0, 0 }

int[ ] b = new int[ ] { 1, 2, 3, 4, 5 }; //{1, 2, 3, 4, 5 }

int[ ] c = { 1, 2, 3, 4, 5 };

int[ , ] m = { { 1, 2, 3 }, { 4, 5, 6 } };

int[ , ] n = {

{ 1, 2, 3 },

{ 4, 5, 6 }

};

Page 24: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

Define ) :توابعتوابع تعريفتعريفFunction) Define ) :توابعتوابع تعريفتعريف

Function)

آنرا اشكال رفع و خواناتر را برنامه كه مواردي از يكيتوابع از استفاده كند مي آسانتر

روالي . بايستي برنامه اصطالحا Procedural يا Modular )است.باشد (

است زير صورت به تابع يك تعريف كلي .فرم

static type Function_Name)type Arg1, type Arg2, …(

{

Statements

}

Page 25: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

static int sum)int x, int y(

{

int s = x + y ;

return ) s (;

}

static float fact ) int x(

{

float f=1;

for ) int i=2; i<=x; i++(

f*=i;

return ) f (;

}

static char first_rate ) int n (

{

char ans=‘y’;

for ) int i=2; i<n ; i++ (

if ) n%i = = 0 ( ans=‘n’;

return ) ans (;

}

مقدار يك حداكثر تابع هردارد .بازگشتي

بازگشتي مقدار تابع نخواهيم اگرآنرا باشد تعريف void داشته

كنيم . مي

T : مثل ) ( void main ا

Page 26: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

فراخوان خود : توابع(Recursive)فراخوان خود : توابع(Recursive)

بهتر ، كنيم مرتبط خودش با طريقي به را تابعي بتوانيم اگراز است الزم مواقع بعضي در و استفاده Recursion است

.نمائيم

:مثال

5 = !5 * 4 , !4 = !4 * 3 , ... , !1=!1 * 0 , !0=!1

:ويا

5 * 6 = 6 + 4 * 6 , 4 * 6 = 6 + 3 * 6 , ... , 0 * 6 = 0

:ويا

34 = 3 * 33 , 33 = 3 * 32 , ... , 31 = 3 * 30 , 30 = 1

Page 27: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

static double fact(int x){ if (x<=1) return(1); else return(x*fact(x-1));}

static long mul(int x , int y){ if (x==0) return(0); else return(y+mul(x-1,y));}

Static double pow(int x , int y){ if (y==0) return(1); else return(x*pow(x,y-1));}

Page 28: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

به پارامترها ارسال نحوهتوابع :

به پارامترها ارسال نحوهتوابع :

static void test(int x){ x++; Console.WriteLine(x);}static void Main(string[ ] args){ int a = 10; test(a); Console.WriteLine(a); Console.ReadKey();}

1110

static void test(ref int x){ x++; Console.WriteLine(x);}static void Main(string[ ] args){ int a = 10; test(ref a); Console.WriteLine(a); Console.ReadKey();}

1111

Call By ValueCall By Reference

Page 29: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

اي آرايه پارامتر :توابع

اي آرايه پارامتر :توابع

براي پارامتر عنوان به اي آرايه بخواهيم اگراست الزم ، كنيم ارسال اي تابعي آرايه پارامتر

باشيم .داشته

نمائيم ارسال عضو تعداد هر با اي آرايه مجازيم.

static float max_ar) float[ ] n ({ float m = n[0]; for )int i = 1; i < n.Length ; i++( if )n[i] > m( m = n[i]; return )m(;}

Page 30: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

static void Main)string[ ] args({ float[ ] n = new float[ ] { 1, 4, 12, 3, 2 }; sort_ar)n(; for )int i = 0; i < n.Length; i++( Console.WriteLine)n[i](; Console.ReadKey)(;}static void sort_ar)float[ ] a({ for )int i = 1; i < a.Length; i++( for )int j = 0; j < a.Length - i; j++( if )a[j] > a[j + 1]( { float m = a[j]; a[j] = a[j + 1]; a[j + 1] = m; } }

Page 31: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ركورد يا ساختمان يا ساختار (Structure ) :

ركورد يا ساختمان يا ساختار (Structure ) :struct student

{ public string name; public float avg; public int id;}static void Main)string[ ] args({ student x; x.avg = 10; Console.WriteLine)x.avg(;

student[ ] c = new student[30]; c[0].name = "ali"; Console.WriteLine)c[0].name(; Console.ReadKey)(;}

name avg id

Page 32: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ساختار در ساختار :ساختار در :ساختار

struct date

{

public short y;

public byte m, d;

}

struct student

{

public string name;

public float avg;

public int id;

public date birth_date;

}

student s; s.name = "ali"; s.birth_date.y = 1988; Console.WriteLine(s.birth_date.y);

Page 33: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

ورودي دستورConsole.ReadKey :

ورودي دستورConsole.ReadKey :

ConsoleKeyInfo c;c = Console.ReadKey(); //if Alt+b is pressedConsole.WriteLine(c.KeyChar); //bConsole.WriteLine(c.Key); //BConsole.WriteLine(c.Modifiers); //AltConsole.ReadKey();

c = Console.ReadKey(true);//Determines whether to display the pressed key in the console window. true to not display the pressed key; otherwise, false.

Page 34: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

اعداد تولید : تصادفی

اعداد تولید : تصادفی

Random r=new Random();Console.WriteLine(r.Next()); صحیح تصادفی // عددConsole.WriteLine(r.Next(900)); از کوچکتر صحیح تصادفی عدد900 // Console.WriteLine(r.NextDouble()); اعشاری تصادفی //عدد

Page 35: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

Page 36: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

فايلها (Files ) : فايلها

(Files ) :

سطر : Text فايل نتهاي فايل - ( cr / lf ) ا نتهاي يا ( EOF ابايت 123عدد - )26كاراكتر سه

سطر : Binary فايل نتهاي در - ( lf ) ا فايل ندازه FAT ا

خارجي ” c:\\a.txt “و” class.dat “مثل :نام

Page 37: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

متنی فایل(Text):

متنی فایل(Text):

TextWriter tw = new StreamWriter)"d:\\a.txt"(;tw.WriteLine)"Hello"(;tw.WriteLine)"Ali"(;tw.Close)(;

Hello

Ali

TextReader tr = new StreamReader)"d:\\a.txt"(;while )tr.Peek)( != -1({ Console.WriteLine)tr.ReadLine)((;} tr.Close)(;

Page 38: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

باینری فایل(Binary):

باینری فایل(Binary):

Stream s;s = File.Open)"d:\\a.dat", FileMode.Create (;BinaryWriter bw = new BinaryWriter)s(;for )int i = 1; i <= 10; i++( bw.Write)i(;bw.Close)(; 1

2345678910

Stream s;s = File.Open )"d:\\a.dat", FileMode.Open(;BinaryReader br = new BinaryReader)s(;while )br.PeekChar)( != -1( Console.WriteLine)br.ReadInt32)((;br.Close)(;

Page 39: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

بازكردن نحوه :فايلها

بازكردن نحوه :فايلها

نحوهتوصیف

. موجود فایل اگر کند می ایجاد جدید، فایل یک عامل سیستم. افتد می اتفاق خطا ، باشد

CreateNew

. موجود فایل اگر کند می ایجاد جدید، فایل یک عامل سیستم. شود می رونویسی ، باشد

Create

. خطا ، نباشد موجود فایل اگر کند بازمی را فایل عامل سیستم. افتد می اتفاق

Open

می باز و کرده ایجاد را آن بازوگرنه را آن باشد، موجود فایل اگرکند.

OpenOrCreate

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

Truncate

آن انتهای به را گر اشاره و کرده باز را آن باشد، موجود فایل اگر. کند می ایجاد را آن نباشد، اگر و کند می منتقل افزودن برای

Append

Page 40: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

پورتسریال با Serial )کارPort) :

پورتسریال با Serial)کارPort) :

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO.Ports;namespace ConsoleApplication1{ class Program { static void Main)string[ ] args( { SerialPort p = new SerialPort) (; p.PortName = "COM3"; // باشد این مودم پورت .اگر p.BaudRate = 9600; p.Open)(; p.Write)"atdt 09153003003 \r\n"(; // atdt )Dial Tone( atdp )Dial Palse( Console.ReadKey)(; p.Close)(; } }}

Page 41: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

موازی پورت با Parallel )کارPort) :

موازی پورت با Parallel)کارPort) :

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Runtime.InteropServices;namespace ConsoleApplication1{ class Program { [DllImport)"inpout32.dll", EntryPoint = "Out32"(] public static extern void Output)int address, int value(; [DllImport)"inpout32.dll", EntryPoint = "Inp32"(] public static extern int Input)int address(; static void Main)string[] args( { int a; Output)0x378, 64(; a = Input)0x379(; Console.WriteLine)a(; Console.ReadKey)(; } }}

کردن دانلود برایinpout32.dllفایل

اینجاکنید کلیک

Page 42: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

و الگوریتم تمریناتبرنامه و :فلوچارت

و الگوریتم تمریناتبرنامه و :فلوچارت

درجه 1. معادله ضرایب صورت 2دریافت در آن های ریشه ومحاسبهوجود.

.2. کره حجم و جانبی مساحت

اضالع 3. اندازه میتوانند آیا ، کند تعیین و کند دریافت را عدد سه. باشند مثلث

قائم 4. کند، مشخص و دریافت مثلث اضالع بعنوان را عدد سه. نه یا است الزاویه

.5N تاریخ و دریافت .Nرا بنویسد را سال روز امین

.6M) و) ( Rماه چندمین) تاریخ، کند،این تعیین و کرده دریافت را روز. است روزسال

.7N. بنویسد آنرا ارقام مجموع و دریافت را

.8 . جریان حامل سیم یک اطراف در مغناطیسی میدان محاسبهدقیق( ) ابزار و کنترل رشته

.9 :() ای مولفه سه بردار دو خارجی ضربمقادیر 10. نیرو، تعادل یک ومقادیر و b و aدر دریافت را cو و را

( ) . مکانیک رشته کند محاسبهمقدار 11. )Qمحاسبه مکانیک : ( رشته.12( مکانیک : ( رشته اصطکاک محاسبه

...*)2*33*2(

321

321

ibaba

bbb

aaa

kji

BA

0..., SRACQP

AR hh

g

V

D

LFH

RF

DVR l

ee 2

..,64

,.. 2

Page 43: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دورقمی .13. صحیح اعداد مجموع

.50مجموع 14. دریافتی صحیح عدد

آن . 15. حروفی معادل نوشتن و رقمی یک عدد ,0 Zero(دریافت1One(… ,

ها .( 16. علیه مقسوم تعداد ورودی عدد بودن اول )2تعیین

.17 = ) . های علیه مقسوم مجموع عدد ورودی عدد بودن تام تعیین( خودش از کوچکتر

.18 . دریافتی صحیح عدد !)n(فاکتوریل

دریافتی 19. عدد دو . rو nترکیب

بنویسد 20. را دورقمی تام .اعداد

صحیح 21. و nعدد دریافت بنویسد nرا را فیبوناچی سری از . عدد)1,1,2,3,5,8,13,21(. . . ,

نپر 22. دقت ) e = 2.718(عدد حداکثر با زیر فرمول از استفاده با راآورید .بدست

دریافت exحاصل 23. از پس حداکثر xرا با زیر فرمول از استفاده باآورید بدست .دقت

دریافت Sin (x)حاصل 24. از پس با xرا زیر فرمول از استفاده باآورید بدست دقت .حداکثر

)!(!

!

rnr

n

!3

1

!2

1

!1

11e

!3!2!1

132 xxx

e x

!7!5!3

)sin(753 xxx

xx

Page 44: بسم الله الرحمن الرحيم

www.ali-arabi.comwww.ali-arabi.com

دریافتی 25. عدد دو بین اول .yو xاعداد

واریانس 26. دریافتی . 10محاسبه عدد

.27. بعدی دو ماتریس دو مجموع

حاضلضرب 28. محاسبه و بعدی دو ماتریس دو مقادیر و ابعاد دریافت. امکان صورت در دو، آن

هر 29. معدل سپس و دریافت را درس چهار در دانشجو سه نمرات. بنویسد را درس هر و دانشجو

و 30. ها ورودی و نمائید دریافت هم را دروس و افراد نام قبل مسئله در. شود انجام تری مناسب پیغامهای با ها خروجی

تصادفی 31100. سه 3عدد و نمائید ومرتب ریخته آرایه یک در رقمی. دهید نمایش را بزرگتر عدد

معدل 32. و اساس 5نام بر ای شده مرتب لیست و دریافت را دانشجو. دهید نمایش معدل اساس بر سپس و نام

1

)( 2

1

n

xxn

ii