برنامه نویسی کامپیوتر
DESCRIPTION
برنامه نویسی کامپیوتر. جلسه اول 12/7/1388 مدرس: دکتر خالدیان. معرفی منابع. Fortran 90 for Scientists and Engineers Brian Hahn فرترن 90 (برنامه نویسی در فرترن 90: دوره مقدماتی برای مهندسین. محقیقین. دانشجویان) ترجمه: دکتر محمود مشعل. * ارزشیابی *. تمرینات و امتحانات کلاسی: 12 نمره - PowerPoint PPT PresentationTRANSCRIPT
کامپیوتر نویسی برنامه
اول جلسه12/7/1388
خالدیان: دکتر مدرس
منابع معرفی
• Fortran 90 for Scientists and Engineers
– Brian Hahn
فرترن ) 90فرترن • در نویسی دوره: 90برنامه . . محقیقین مهندسین برای مقدماتی
دانشجویان(مشعل: – محمود دکتر ترجمه
* ارزشیابی *
•: کالسی امتحانات و نمره 12 تمرینات•: ترم پایان 8 امتحان
نمره
•3= حذف غیبت جلسه
میالدی 50دهه •• Fortran: FORmula_TRANslation
• ax²+bx+c=0• ROOT=)-B+SQRT)B**2 -4.*A*C((/)2.*A(
مقادیر • ازای به را راست سمت عبارت محاسبه مقداربنام A, B, Cمتغیر متغیری .ROOTبه بده نسبت
: 1966سال • فرترن 66یا 4میالدی: 1978سال • فرترن 77میالدی• : فرترن جدید 90استاندارد
• ax²+bx+c=0
• ROOT=)-B+SQRT)B**2 -4.*A*C((/)2.*A(
•A, B, C : متغیر•- +، ،SQRT : * معمول ** جبری معانی ، ،معنی=: • به بلکه نیست تساوی معنی به
. است جایگزینیفرترن • در متغیر ثابت 90نام قوانین از
. کند می پیروی مشخصی
نامگذاری قوانین
باشد :• زیر کاراکترهای از فقط بایستی نام.1 : انگلیسی الفبای Zتا Aحروف9تا 0اعداد 2.حرف ”3. زیر underlineیا “ _عالمت
• : کاراکتر تعداد 31حداکثر•. باشد حرف یک بایستی کاراکتر اولیننظیر • متغیرهای از شود می برای SQRTتوصیه
. نشود استفاده نامگذارینیست • مجاز کاراکتر فاصله
مثال چند
• CHICAGO_BEARS• MANCHESTER_UNITED• HEART_OF_MIDLOTHAN• TRASH• XYZ_123• Z• 49ERS• MAN.UTD• L A RAMS• A/B
•: ساده متغیرهای انواعنسبت – کمیتها گوناگون انواع به تواند می متغیر نام
: شود دادهصحیح • (INTEGER)اعداد
اعشاری • (REAL)اعداد
حروف – از یکی با که نامی بدون Nتا Iهر شود شروعصحیح متغیر یک به کند (INTEGER)اعالن می اشاره
به شود شروع دیگر حروف از یک هر با که نامهایی واعشاری متغیر نوع ) (REAL)یک تعیین کند می اشاره
ضمنی(.زیر – دستور با را ضمنی نوع تعیین ایمنی رعایت برای
کرد خاموش برنامه ابتدای درIMPLICIT NONE
ساده خروجی و ورودی
مانیتور • و کلید صفحه طریق از برنامه با نویس برنامه ارتباط• Input: READ*• Output: PRINT*
PROGRAM NUMBERS
REAL A,B,C
READ*,A,B,CPRINT*,A,B,CEND
دستور • با برنامه شروع شود می توصیهPROGRAM. باشد
دستور • بایستی برنامه انتهای داده ENDدر قرارشود.
بر • دستورات که دهد می اجازه مانیتور صفحهتا حداکثر خطوط نوشته 132روی کاراکتر
معموال ) (.120تا 80شوند
• READ*, A,B,C
اعشاری • عدد سه داد خواهد اجازه دستور اینو شود تایپ کلید صفحه از دیگری از پس یکی
کلید فشار از با ENTERپس متغیرهایی به.A,B,Cنامهای شود داده اختصاص
•: اعداد نوشتن5 4 3فاصله •
•3 ENTER
•4 ENTER
•5 ENTER
بر • را متغیرها دهد می اجازه زیر تکمیلی دستور: کرد مشاهده مانیتور صفحه
• PRINT*,A,B,C
کند • می ایجاب فوق دستور دو در ستاره عالمتبر نوشتن یا کلید صفحه طریق از خواندن که
. باشد مانیتور صفحه
ساده برنامه یک
• ! My first Fortran 90 program!• ! Greetings!
• CHARACTER NAME*20
• PRINT*, 'What is your name?'• READ*, NAME• PRINT*, 'Hi, ', NAME• END
برنامه نگارش معمول روشتشکیل • دستور خط تعدادی از فرترن برنامه هر
و متغیر تعریف دستورات شامل که شده . کلمه با برنامه هر باشد می اجرایی دستورات
END . یابد می خاتمه
• PROGRAM FIRST
• فرترن مختلف دستورات
• END PROGRAM FIRST
فرترن در استفاده مورد کاراکترهای
9تا 0ارقام 1.
انگليسي 2. كوچ) Zتا Aحروف و ک(بزرگ
فاصله 3. “_“ خط
زير کاراکترهای 4. :جدول
نویسی برنامه در ریاضی عبارات
عملگر کارآیی
** توان
* ضرب
/ تقسیم
+ مثبت عالمت یا جمع
- منفی عالمت یا تفریق
دیگر برنامه یک• according to the formula• A)t(=174.6)t-1981.2(3
• • PROGRAM AIDS• ! Calculates number of accumulated AIDS cases in USA• INTEGER T ! year • REAL A ! number of cases • • READ*, T • A = 174.6 * )T - 1981.2( ** 3 • PRINT*, 'Accumulated AIDS cases in US by year', T, ':', A• END PROGRAM AIDS•
ریاضی عملگرهای اولویت
می • هست پرانتز داخل آنچه با اولویت هموارهباشد.
توان•ضرب•تقسیم•جمع•منها•
مثال
• 4+3*2-6/2=7
• )4+3(*2-6/2=11
• )4+3*2-6(/2=2
• ))4+3(*2-6(/2=4
INTEGER & REAL
• 2+2=4 or 4.
• 1/2= 0
• 1./2= 0.5
ویژه ! & ;کاراکترهای
سعی • برنامه آنچه به راجع اطالعاتی تواند می نویسنده “!” . کمک به کار این کند ذکر دارد آن به دستیابی در
(EXCLAMATION POINT) توضیحات و شود می انجام. آید می تعجب عالمت از پس
این • در شوند می بیشتر خط یک از دستورات گاهی & از استفاده (AMPERSAND)حالت خط انتهای در
. شود میدستور • یک طول یا 2640حداکثر است 40کاراکتر خط
. شود می نیز خالی جاهای شامل کهحدود • دستور 100با هر برای خط هر روی بر کاراکتر
اتالف کوتاه دستورات به خط یک تمام اختصاصخط. یک در را دستور چند توان می بنابراین فضاست
( - ویرگول نقطه بوسیله و داد .;قرار کرد( جدا یکدیگر از
مثال
• PROGRAM NUMBERS! This program read 3 real numbers and ! prints out them
• REAL A,B,&• C
• READ*,A,B,C; PRINT*,A,B,C• END
مثال
PROGRAM very simple
! This program read 6 real numbers in sets ! of 3 and prints out the sets in reserve ! order
Real one,two,three,four,five,six
READ*,one,two,three; READ*,four,five,six
PRINT*,six,five,four,three,two,one
END program very simple
مثال• PROGRAM very_simple
• ! This program read 6 real numbers in sets • ! of 3 and prints out the sets in reserve • ! order
• INTEGER one,two,three,four,five,six
• READ*,one,two,three; READ*,four,five,six
• PRINT*,six,five,four,three,two,one
• STOP
• END
قرارداد
شوند • تایپ بزرگ حروف با دستورات تمامفرترن • در اجرایی دستور که عباراتی تمام
. شوند تایپ کوچک حروف با نیستندمناسب • اعداد تا شود اعالن کاربر به است بهتر
. کند تایپ را
مثال• Program very_simple• ! This program read 6 real numbers in sets • ! of 3 and prints out the sets in reserve • ! order
• INTEGER one,two,three,four,five,six• PRINT*,"lotfan 2 serie 3 taii adad vared konid"
• READ*,one,two,three; Read*,four,five,six
• PRINT*,six,five,four,three,two,one• STOP
• END
دالر1000سرمایه: 0.09یا % 9سود:
• PROGRAM MONEY• ! Calculates balance after interest compounded• REAL BALANCE, INTEREST, RATE • • BALANCE = 1000 • RATE = 0.09 • INTEREST = RATE * BALANCE • BALANCE = BALANCE + INTEREST • PRINT*, 'New balance:', BALANCE• END PROGRAM MONEY
• PROGRAM Arith
• REAL A, B
• PRINT*, "Enter A and B:"
• READ*, A, B
• PRINT*, "Sum: ", A + B
• PRINT*, "Difference: ", A - B
• PRINT*, "Product: ", A * B
• PRINT*, "Quotient: ", A / B
• END PROGRAM Arith
تمرین
نامها • از فرترن کدامیک نیستند؟ 90در مجاز.1POLTERGEIST.27UP.3R2D2.4PH.D..5A/B/C.6SQRT.7BSC.8F)X(
می • چگونه است؟ اشتباه چیز چه زیر برنامه درکرد؟ تصحیح آنرا توان
• PROGRAM TEST
• READ*,A,B,C
• PRINT*,A,B,C,D
• STOP
• END
شده تصحیح برنامه
• PROGRAM TEST
• READ*,A,B,C
• PRINT*,A,B,C ! hazf D
• STOP
• END
مثال
• The energy stored on a condenser is,
E=CV2/2
where C is the capacitance and V is the potential difference. Write a program to compute the energy for some sample values of C and V.
• PROGRAM Energy
• REAL C, E, V
• READ*, C, V
• E = C * V ** 2 / 2
• PRINT*, "Stored energy:", E
• END PROGRAM Energy
سوال؟