matlabkhooneh

تکالیف فرترن Fortran - گروه مکانیک دانشگاه فردوسی ( کد For0004 )

1 - حاصل هر کدام از عبارت های زیر را محاسبه کنید.

a) 3 ** 3 ** 2
b) (3 ** 3) ** 2
c) 3 ** (3 ** 2)

2 - اگر A = 6 , B = 2 and C = 3 حاصل عبارات زیر را تعیین کنید.

A/B*C
A*B/C
3*A**B
B+A/C
A/B+C

3 - آیا دستورات زیر طبق قواعد درست است؟

integer :: one = 1
one = 0

4 - حاصل عبارات زیر را تعیین کنید.

(a) 13/5*6
(b) (13/5)*6
(c) 13/(5*6)
(d) 13./(5*6)
(e) 13/5*6.
(f) INT(13./5)*6
(g) NINT(13./5)*6
(i) CEILING(13./5)*6
(j) FLOOR(13./5)*6

5 - با توجه به دستورات زیر، نوع و حاصل هر عبارت را تعیین کنید. هم چنین با اضافه کردن پرانتز به هر عبارت، ترتیب محاسبه ی عملگرها را در هر عبارت مشخص کنید.

real:: x=10.0, y=0.01, z=0.5
integer:: i=10, j=25, k=3
a1=i + j + k * i
a2=z * x / 10 + k
a3=z * k + z * j + z * i
a4=i * y - k / x + j

6 - جواب عددی دستورات زیر را تعیین کنید.

a = 9.0 / 1.5 * 0.2
b = 26 / 4 * 3
c = 26 / 4 ** 3
d = ( 10 – ( 7 – 2 ) / 3 ) / ( 7 / 4 – 5 )
e = ( 26 /4 ) ** 3
f = 2 ** ( 9 / 4 )

7- فرض کنید مقدار متغیر های زیر داده شده باشند

a=1.  b=2.5  c=10.  d=3.  i=2 k=3

در دستور های محاسباتی زیر مقدار متغیرهای سمت چپ را بر اساس محاسبات سمت راست تعیین نمایید.

l=i/k
db=b/c
j=c/b
x = a + b / c – d
y = a + b / ( c – d ** I )
r = 3 ** k + 2 * ( I **k )
t = b ** I / c * ( c * d )
n = ( c + 2. * b ) ** i
a1 = k/i*i
da = (-c)**k – (-c)**i

8 - برنامه ای به زبان فرترن بنویسید که حقوق هفتگی یک کارگر که ساعتی کار می کند را محاسبه کند. این برنامه باید از کاربر میزان حقوق کارگر به ازای هر ساعت و ساعات کار در طول هفته را دریافت و سپس حقوق یک هفته را طبق فرمول زیر محاسبه کند.

Write a FORTRAN program that calculates an hourly employee’s weekly pay. The program should ask the user for the person’s pay rate and the number of hours worked during the week. It should then calculate the total pay from the formula:

Total Pay = Hourly Pay Rate × Hours Worked

که باید حقوق دریافتی به ازای یک هفته کار را نمایش دهد. برنامه خود را به ازای 42 ساعت کار و 7.90دلار در هر ساعت امتحان کنید.

Finally, it should display the total weekly pay. Check your program by computing the weekly pay for a person earning $7.90 per hour and working for 42 hours.

9 - انرژی پانسیل یک جسم بسته به ارتفاع آن از سطح زمین توسط معادله زیر محاسبه می شود.

UE=mgh

که در آن m جرم جسم، g شتاب گرانشی زمین و h ارتفاع آن از سطح زمین می باشد. انرژی جنبشی یک جسم در حال حرکت نیز از رابطه زیر به دست می آید:

KE=(1/2)mv2

که در آن m جرم جسم و v سرعت آن است. برنامه ای به زبان فرترن بنویسید که انرژی مکانیکی جسم را محاسبه کند (مجموع دو انرژی پتانسیل و جنبشی جسم). فرض کنید جسم در میدان گرانشی زمین قرار دارد و g = 9.81 m/s2

The potential energy of an object due to its height above the surface of the Earth is given by the equation PE = mgh, where m is the mass of the object, g is the acceleration due to gravity, and h is the height above the surface of the Earth. The kinetic energy of a moving object is given by the equation

KE=(1/2)mv2

where m is the mass of the object and v is the velocity of the object. Write a FORTRAN program for the total energy (potential plus kinetic) possessed by an object in the Earth’s gravitational field

10 - یک توپ را از حال سکون و ارتفاع h از سطح زمین رها کنیم سرعت آن هنگام برخورد با زمین توسط معادله زیر به دست می آید.

\[ v=\sqrt{2gh}\]

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

If a stationary ball is released at a height h above the surface of the Earth, the velocity of the ball v when it hits the Earth is given by the equation:

\[ v=\sqrt{2gh}\]

where g is the acceleration due to gravity, and h is the height above the surface of the Earth (assuming no air friction). Write a Fortran program for the velocity of the ball when it hits the Earth.

11 - برنامه ای به زبان فرترن بنویسید که ارتفاع اولیه توپ را از کاربر دریافت کند و سپس سرعت آن را هنگام برخورد با زمین محاسبه کند (از فرمول سوال قبل استفاده کنید). برنامه را برای محاسبه سرعت توپ هنگام برخورد به زمین به ازای

الف) ارتفاع1متری

ب) ارتفاع10متری

ج) ارتفاع100متری استفاده کنید.

Write a Fortran program that calculates the velocity of the ball v when it hits the Earth from a given height h, using Equation given in previous problem. Use the program to calculate the velocity for a height of (a) 1 meter, (b) 10 meters, and (c) 100 meters.

12 - در تئوری نسبیت انیشتین، طبق معادله زیر جرم ماده با انرژی آن مرتبط است

E=mc2

که در آن E انرژی برحسب ژول، m جرم بر حسب کیلوگرم و c سرعت نور بر حسب متر بر ثانیه است،

فرض کنید که یک نیروگاه هسته ای400مگاواتی (=400میلیون ژول در ثانیه) برق یک شبکه را برای یک سال تامین می کند. برنامه ای به زبان فرترن بنویسید که جرم مصرف شده برای تولید این مقدار انرژی در طول یک سال را در نیروگاه محاسبه کند. (توجه: بازده نیروگاه را %100 فرض کنید)

In Einstein’s Theory of Relativity, the rest mass of matter is related to an equivalent energy by the equation:

E=mc2

where E is the energy in joules, m is mass in kilograms, and c is the speed of light in meters per second (c = 2.9979 × 108 m/s). Suppose that a 400 MW (= 400 million joules per second) nuclear power generating station supplies full power to the electrical grid for a year. Write a program that calculates the amount of mass consumed in the course of the year. (Note: Assume that the generating station is 100% efficient in producing electrical energy.)

13 - برنامه سوال قبل را طوری بازنویسی کنید که میزان انرژی تولید شده و بازهی زمانی (بر حسب ماه) را از کاربر دریافت کرده و سپس جرم را محاسبه کند.

Generalize the program of the previous exercise to calculate the mass consumed by a generating station with a user-specified output power for a user-specified period of months.

14 - برنامه ای به زبان فرترن بنویسید که مربع اعداد زوج بین 0 تا 50 را چاپ کند.

Write a Fortran program required to calculate and print out the squares of all the even integers between 0 and 50

15 - برنامه ای به زبان فرترن بنویسید که تمام مقادیر تابع بالا را برای x های بین 1- تا 3 با گام 0.1 محاسبه و چاپ کند.

Write a Fortran program to evaluate the equation y(x)=x2-3x + 2 for all values of x between −1 and 3, in steps of 0.1.

16 - حلقه های تکرار زیر را امتحان کنید و مشخص کنید هر حلقه چند بارتکرار می شود (تمام متغیرهای استفاده شده در حلقه ها را از نوع  integer فرض کنید)

Examine the following DO statements and determine how many times each loop will be executed (Assume that all loop index variables are integers).

(a) DO irange = -32768, 32767
(b) DO j = 100, 1, -10
(c) DO count = 2, 3, 4
(d) DO index = -4, -7
(e) DO i = -10, 10, 10
(f) DO i = 10, -2, 0
(g) DO

17 - حلقه های تکرار زیر را بررسی و مشخص کنید که مقدار متغیر ires در پایان هر کدام ازحلقه ها چه خواهد بود. هم چنین دفعات تکرار هر حلقه را نیز مشخص کنید. تمام متغیرها را integer فرض کنید.

Examine the following iterative DO loops and determine the value of ires at the end of each of the loops, and also the number of times each loop executes. Assume that all variables are integers.

(a) ires=0
DO index=-10,10
ires=ires + 1
END DO
*************************
(b) ires=0
DO index1=10, 4, -2
DO index2=2, index1, 2
IF (index2>6) EXIT
ires=ires+index2
END DO
END DO

18 - توابع مثلثاتی معمولا به کمک سری های بی نهایت در کامپیوتر محاسبه می شوند. یک سری بی نهایت مجموعه ای از بی نهایت جمله است که با یکدیگر جمع می شوند تا مقدار یک تابع یا یک عبارت را محاسبه کنند. به عنوان مثال سری بی نهایتی که برای تقریب زدن تابع سینوس استفاده می شود عبارت است از

\[ sin(x)=\sum_{n=1}^{\infty }(-1)^{n-1} \frac{x^{2n-1}}{(2n-1)!} \]

Trigonometric functions are usually calculated on computers by using a truncated infinite series. An infinite series is an infinite set of terms that together add up to the value of a particular function or expression. For example, one infinite series used to evaluate the sine of a number is:

که در آن x بر حسب رادیان است. چون یک کامپیوتر زمان کافی برای جمع زدن بی نهایت جمله برای محاسبه سینوس هر زاویه را ندارد، تعداد محدودی ازجملات سری با هم جمع زده می شوند که به آن سری بی نهایت قطع شده می گویند. سری بی نهایت قطع شده برای سینوس به صورت زیر است

where x is in units of radians. Since a computer does not have enough time to add an infinite number of terms for every sine that is calculated, the infinite series is truncated after a finite number of terms. The number of terms that should be kept in the series is just enough to calculate the function to the precision of the floating-point numbers on the computer on which the function is being evaluated. The truncated infinite series for sin x is:

که درآن N تعداد جملاتی از سری است که جمع زده می شوند. برنامه ای به زبان فرترن بنویسید که مقدار یک زاویه را بر حسب درجه از کاربر دریافت و مقدار سینوس آن را به کمک تابع ذاتی سینوس محاسبه کند. سپس مقدار سینوس را به کمک معادله بالا به ازای N=1, 2, 3, . . . , 10محاسبه کند. مقدار درست تابع سینوس را با مقادیری که از محاسبه سینوس به کمک سری به دست می آید، مقایسه کنید. چند جمله ازسری باید با هم جمع شوند تا مقداری مساوی با مقداری که تابع ذاتی سینوس تولید می کند، ایجاد شود.

where N is the number of terms to retain in the series. Write a Fortran program that reads in a value for x in degrees, and then calculates the sine of x using the sine intrinsic function. Next, calculate the sine of x using the above equation with N=1, 2, 3, . . . , 10. Compare the true value of sin x with the values calculated using the truncated infinite series. How many terms are required to calculate sin x to the full accuracy of your computer?

19 - برنامه ای بنویسید که عدد طبیعی N را از کاربر بگیرد و ماتریس مربعی A را N در N در نظر گرفته و درایه های روی قطرهای اصلی و فرعی را یک و بقیه را صفر قرار دهد و آن را نمایش دهد.

20 - با استفاده از آرایه ها، برنامه ای بنویسید که 40 جمله اول دنباله فیبوناچی (1,1,2,3,5,8,13) را محاسبه کند و نمایش دهد. یکی از خواص دنباله فیبوناچی این است که نسبت اعداد متوالی در آن (1/1,2/1,3/2,5/3,8/5) به سمت عددی موسوم به عدد طلاییSqrt(5)+1)/2) میل می کند. برنامه فوق را به گونه ای بنویسید که علاوه بر جملات دنباله، مقادیر نسبت های جملات را نیز محاسبه کند و نمایش دهد.

21 - برنامه ای بنویسید که یک ماتریس با ابعاد دلخواه را از کاربر دریافت کند و ترانهاده آن را به دست آورده و نمایش دهد.

22 - برنامه ای بنویسید که دو عدد طبیعی m و n را از کاربر بگیرد و ماتریس های A , B را به صورت m در n در نظر گرفته و حاصل جمع این دو ماتریس را محاسبه نماید.

23 - یک ماتریس مربعی متقارن است . اگر عناصر واقع در دو طرف قطر اصلی آن برابر باشند، به عبارتی دیگر خود ماتریس با ترانهاده اش یکسان باشد. برنامه ای بنویسید که عناصر یک ماتریس مربعی را دریافت کرده، معین کند ماتریس متقارن است یا نه.

24 - یک روش سریع برای محاسبه مقدار یک چندجمله ای در نقطه ای مشخص استفاده از روش هورنر یا روش ضربه ای تو در تو است. در این روش چندجمله ای را می توان به شکل زیر بازنویسی کرد. این فرم زمان کمتری از کامپیوتر برای محاسبه خواهد گرفت.

برنامه ای بنویسید که درجه چندجمله ای (n) و ضرایب چندجمله ای را بگیرد و مقدار آن را در نقاط بازه[-5,5] که به فاصله 0.5 از هم قرار دارند محاسبه و به شکل مناسبی چاپ کند.

25 - برنامه ای بنویسید که برای یک مجموعه از اعداد حقیقی وارد شده توسط کاربر با استفاده از روابط زیر مقادیر میانگین، واریانس و انحراف معیار آن ها را محاسبه کند و نمایش دهد.

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

اعداد وارد شده

فاصله ی هر عدد تا مقدار میانگین

اگر یک عدد بزرگتر از مجموع میانگین و انحراف معیار باشد، برچسب خوب و اگر کمتر از مقدار میانگین منهای انحراف معیار باشد برچsب بد باید داشته باشد.

26 - برنامه ای بنویسید که اعضای دو مجموعه شامل یک سری عدد صحیح را از کاربر دریافت و سپس اجتماع و اشتراک این مجموعه ها را تعیین کند و نمایش دهد

27 - برنامه ای بنویسید که ابتدا shape یک آرایه ی با rank=2 و سپس اعضای آن را از کاربر دریافت کند و سپس مجموع عناصر هر ردیف و هر ستون را محاسبه کند و نمایش دهد.

28 - یک آرایه ی یک بعدی palindrome است اگر اعضای آن از هر دو طرف یکی باشد مثلا 3،5،7،2،4 palindrome نیست ولی 4،2،6،2،4 palindrome است. برنامه ای بنویسید که تعداد و اعضای یک آرایه ی یک بعدی را از کاربر دریافت کند و چک کند که آیا palindrome است یا خیر.

29 - برنامه ای بنویسید که تعداد و اعضای یک آرایه ی یک بعدی را از کاربر دریافت کند. سپس یک مقدار دلخواه از کاربر دریافت کند و مشخص کند که آیا این عدد دلخواه جزء المان های آرایه هست یا خیر. اگر عضوی از آن آرایه بود برنامه باید موقعیت (اندیس) المان را مشخص کند و نمایش دهد.

30 - از تابع floor می توان برای گرد کردن عددی تا تعداد مشخصی رقم اعشار استفاده کرد. دستور

y = floor( x*10 + .5 ) / 10

x را تا یک رقم بعد از اعشار و دستور

y = floor( x*100 + .5) / 100

x را تا دو رقم بعد از اعشار گرد می کند. برنامه ای بنویسید که با تعریف چهار تابع داخلی به صورت های زیر،عدد دلخواه number را گرد کند

a. round_to_integer(number)
b. round_to_tenths(number)
c. round_to_hundredths(number)
d. round_to_thousandths(number)

برنامه باید برای هر عدد دلخواهی که کاربر وارد می کند، با استفاده از تابع های بالا مقدار اولیه، عدد گردشده به نزدیک ترین عدد صحیح، عددگرد شده تا یک رقم بعد از اعشار، عدد گرد شده تا دو رقم بعد از اعشار و عدد گرد شده تاسه رقم بعد از اعشار را چاپ کند.

31 - تابعی به نام hypotenuse تعریف کنید که طول وتر یک مثلث قائم الزاویه را که دو ضلع دیگر آن داده شده اند محاسبه کند. این تابع باید دو آرگومان حقیقی و مثبت را دریافت و وتر رابه صورت یک عدد حقیقی بازگرداند. این تابع را در یک برنامه برای اضلاع دلخواه که کاربر وارد می کند، استفاده و مقدار اضلاع و وتر را چاپ کنید.

32 - تابعی داخلی بنویسید که زمان را به صورت سه آرگومان برای ساعت، دقیقه و ثانیه دریافت کند و تعداد ثانیه هایی را که از آخرین ساعت 12 گذشته بازگرداند.

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

الف) تابع Celsius معادل درجه سانتیگراد دمای فارنهایت را بازمی گرداند.
ب) تابع Fahrenheit معادل فارنهایت دمای سانتیگراد را بازمی گرداند.

34 - برنامه ای بنویسید که با گرفتن مقدار x از کاربر و استفاده از یک تابع خارجی برای محاسبه فاکتوریل، مقدار ex را طبق رابطه زیر محاسبه کند.

\[ e^{x}=1+\frac{1}{1!}+\frac{x^{2}}{2!}+\frac{x^{3}}{3!}+...\]

35 - با استفاده از یک زیرروال به نام circle برنامه ای بنویسید که شعاع دایره ای را از کاربر بگیرد؛ قطر، محیط و مساحت آن را محاسبه و چاپ کند.

36 - برنامه ای بنویسید که مقدار یک زاویه را برحسب رادیان دریافت کند، سپس با استفاده از یک زیرروال مقدار زاویه رابه درجه، دقیقه و ثانیه تبدیل کند و نمایش دهد.

37 - برنامه ای بنویسید که یک ماتریس n*n را دریافت کند و دترمینان آن را محاسبه و چاپ نماید.

38 - برنامه ای بنویسید که با روش عددی سیمپسون Simpson انتگرال عبارت زیر را محاسبه کند.

\[ f(x)=sin(x)\]

39 - برنامه ای بنویسید که با استفاده از روش حذفی گاوس دستگاه معادلات خطی زیر را حل کند.

\[ \left\{\begin{matrix} 3x+2y+4z=4\\ 2x-3y+z=2\\x+y+2z=3\end{matrix}\right.\]

40 - برنامه ای بنویسید که عدد طبیعی N را از کاربر بگیرد و تمام اعداد اول کوچکتر از N را محاسبه و به همراه تعدادشان چاپ کند.

41 - مقدار آلودگی در شهری به این صورت اندازه گیری می شود که در ساعت 12 ظهر از سه نقطه ی شهر نمونه برداری می گردد. نقطه ی اول در یک منطقه صنعتی ، نقطهی دوم در یک منطقه مسکونی و نقطهی سوم در یک ایستگاه سیار که در شهر حرکت می کند نمونه برداری شده و داده ها به مرکز کنترل آلودگی منتقل می شود. در این مرکز ، مقدار متوسط داده های رسیده محاسبه شده و چنانچه این مقدار کمتر از 25 قسمت در میلیون 25ppm باشد ، مرکز اعلام می کند که آلودگی زیر حد خطرناک است و اگر بین 25ppm تا 50ppm باشد ، وضعیت مرکز حد وسط را اعلام می کند و در صورتی که این مقدار بیشتر از 50ppm باشد ، مرکز اعلام می کند که آلودگی به حد خطرناکی رسیده است. برنامه ای بنویسید که محاسبات مرکز کنترل آلودگی را محاسبه و نتایج را مطابق توضیحات یاد شده اعلام نماید.

42 - برنامه ای بنویسید که دو عدد طبیعی M و N را از کاربر بگیرد و ماتریس X را به صورت M در N درنظر گرفته و بردارهای A و B به ترتیب N عضوی و M عضوی را به صورت زیر ساخته و نمایش دهد.

- هر عضو بردار A برابر است با مجموع عناصر یک ستون ماتریس X

- هر عضو بردار B برابر است با مجموع عناصر یک سطر ماتریس X

43 - برنامه ای بنویسید که مختصات دو نقطه متمایز M و N از صفحه بگیرد و معادله ی خطی را که از این دو نقطه می گذرد به شکل AX+BY=C بدست آورده و نمایش دهد.

44 - سری مک لورن تابع سینوس عبارت است از

\[ sin(x)=\sum_{n=0}^{\infty}(-1)^{n}\frac{x^{2n+1}}{(2n+1)!}\]

45 - برنامه ای به زبان فرترن بنویسید که 5 نقطه و مقادیر آن ها در یازه 0 تا 1 را دریافت کند و با استفاده از درونیابی لاگرانژ Lagrange مقدار درونیابی شده برای یک نقطه تست را بدست آورد.

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

\[\left\{\begin{matrix}x_{1}-x_{2}+3x_{2}=2\\3x_{1}-3x_{2}+x_{3}=-1\\x_{1}+x_{2}=3\end{matrix}\right.\]

47 - پروژه شامل مراحل بدست آوردن ماتریس معکوس می باشد. هر گام انجام شده را در یک سابروتین نوشته تا در گام های بعدی مورد استفاده قرار گیرد. کدنویسی فقط در زبان برنامه نویسی فرترن انجام گیرد.

الف ) برنامه ای بنویسید که یک ماتریس دلخواه از مرتبه 5 را دریافت و دترمینان آن را بدست آورد.

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

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

د ) حال ماتریس الحاقی را بدست آورید. ماتریس الحاقی در حقیقت همان ترانهاده ماتریس همسازه است

ه ) اکنون ماتریس معکوس را با ضرب 1 تقسیم بر دترمینان ماتریس و ماتریس الحاقی بدست می آید.

48 - می خواهیم توزیع دما در حالت پایا روی سطح دو بعدی زیر در فواصل 1cm در راستاهای x و y را بدست آوریم.

معادله دیفرانسیلی توزیع دما (  با تولید حرارت ، غیر پایا ، سه بعدی )

معادله دیفرانسیلی توزیع دما ( بدون تولید حرارت ، پایا ، دو بعدی )

معادله گسسته سازی شده توزیع دما در حالت پایا ( بدون تولید حرارت ) و دو بعدی

49 - برنامه ای بنویسید که یک عدد صحیح را به عنوان ورودی بگیرد و بررسی کند آیا این عدد اول است یا خیر. اگر عدد اول نیست، تمامی فاکتورهای آن را به ترتیب صعودی نمایش دهد.

50 - برنامه ای را بنویسید که مقدار x را خوانده و y را بر اساس موارد زیر محاسبه کرده و نمایش دهد.

\[y=\left\{\begin{matrix}5+e^{\sqrt{x}};x>0\\arcsin^{2}(x+1);x=0\\\sqrt[3]{x+5};x<0\end{matrix}\right.\]

51 - برنامه ای به زبان فرترن FORTRAN بنویسید که طول طولانی ترین دنباله اعداد صعودی متوالی در یک آرایه را پیدا کند.

52 - برنامه ای بنویسید که تمام عناصر یک ماتریس را به اندازه یک خانه در جهت عقربه های ساعت بچرخاند. به طوری که عناصر در هر سطر و ستون به سمت راست منتقل شوند.

53 - اگر یک توپرا از حال سکون و ارتفاع h از سطح زمین رها کنیم، سرعت آن هنگام برخورد با زمین توسط معادله زیر به دست می آید.

\[v=\sqrt{2gh}\]

که در آن g شتاب گرانش و h ارتفاع اولیه توپاز سطح زمین است. برنامه ای به زبان فرترن بنویسید که ارتفاع اولیه توپ را از کاربر دریافت کند و سپس سرعت آن را هنگام برخورد با زمین محاسبه کند. برنامه را برای محاسبه سرعت توپ هنگام برخورد به زمین به ازای الف ) ارتفاع 1 متری ب ) ارتفاع 10 متری ج ) ارتفاع 100 متری استفاده کنید. g=9.81m/s2

54 - ابتدا یک برنامه به زبان فرترن بنویسید که x و y از کاربر دریافت کند و به کمک یک ساختار 4 حاله if مقدار f(x,y) را محاسبه کند و سپس برنامه خود را بازنویسی کنید و به کمک if های تو در تو مقدار f(x,y)  را محاسبه کنید. برنامه باید به گونه ای نوشته شود که بخش خارجی شروط x را مورد ارزیابی قرار دهد و بخش داخلی شروط y را بررسی کند. مطمئن شوید که به هرکدام از بخش های برنامه خود نام اختصاص دهید.

\[\left\{\begin{matrix}f(x,y)=x+y& x>0,y>0 \\f(x,y)=x+y^{2}& x>0,y<0 \\f(x,y)=x^{2}+y &x<0,y>0  \\ f(x,y)=x^{2}+y^{2}& x<0,y<0 \\\end{matrix}\right.\]

55 - برنامه ای به زبان فرترن بنویسید که تمام مقادیر تابع y(x)=x2 -3x+2  را برای x های بین 1- تا 3 با گام 0.1محاسبه و چاپ کند.

56 - حلقه های تکرار زیر را بررسی و مشخص کنید که مقدار متغیر res در پایان هر کدام از حلقه ها چه خواهد بود. همچنین دفعات تکرار هر حلقه را نیز مشخص کنید. تمام متغیرها را integer فرض کنید.

ires=0
DO index=-10,10
       ires=ires+1
END DO

 

ires=0
DO index1=10,4,-2
     DO index2=2,index1,2
         IF (index2>6) EXIT
         ires=ires+index2
     END DO
END DO

57 - برنامه ای بنویسید که با گرفتن مقدار x از کاربر و استفاده از یک تابع خارجی برای محاسبه فاکتوریل، مقدار ex را طبق رابطه زیر محاسبه کند. سپس مجدد برنامه را با استفاده از یک زیرروال ( سابروتین - زیربرنامه ) بنویسید.

\[e^{x}=1+\frac{x}{1!}+\frac{x^{2}}{2!}+\frac{x^{3}}{3!}+...\]

58 - یک ماتریس مربعی متقارن است اگر عناصر واقع در دو طرف قطر اصلی آن برابر باشند، به عبارتی دیگر خود ماتریس با ترانهاده اش یکسان باشد. برنامه ای بنویسید که عناصر یک ماتریس مربعی را دریافت کند و بررسی کند که آیا متقارن است یا خیر.

59 -

 

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

پشتیبانی ( تلفن ثابت دفتر متلب خونه ) : 02191307193  

تلگرام و ایتا :  09364847193

تکالیف فرترن Fortran - ماتریس ها ( کد For0003 )

1 - برنامه ای بنویسید که جمع اعداد موجود در سطرها و ستون های یک ماتریس 10*10 را به طور جداگانه محاسبه و نمایش دهد.

2 - برنامه ای بنویسید که یک رشته با طول مشخص n را گرفته و حروف های این رشته را در یک آرایه یک بعدی ثبت کرده و سپس یک حرف دلخواه را نیز از ورودی دریافت کرده و تعداد دفعات تکرار آن حرف را در لیست معین کند.

3 - برنامه ای بنویسید که اعداد اول دو رقمی کوچکتر از 100 را در آرایه ای به ترتیب ذخیره و چاپ نماید.

4 - برنامه ای بنویسید که ابتدا n و m سپس عناصر یک ماتریس m × n را بگیرد و حاصل‌جمع عناصر روی قطر اصلی آن ماتریس را از حاصل جمع عناصر روی قطر فرعی کم کرده و سپس چاپ نماید.

5 - یک برنامه به زبان فرترن بنوسید که x و y را از کاربر دریافت کند و به کمک 4 دستور if مقدار f را مطابق رابطه زیر محاسبه کند. سپس برنامه خود را بازنویسی کنید و به کمک if های تو در تو مقدار f را محاسبه کنید. برنامه باید به گونه ای نوشته شود که بخش خارجی شروط x را مورد ارزیابی قرار دهد و بخش داخلی شروط y را بررسی کند. 

\[ f(x,y)=\begin{bmatrix} x+y& x\geq 0 \;\;\; y\geq 0\\ x+y^{2}& x\geq 0 \;\;\; y< 0\\ x^{2}+y& x< 0 \;\;\; y\geq 0\\ x^{2}+y^{2}& x< 0 \;\;\; y< 0 \\\end{bmatrix}\]

6 - برنامه ای به زبان فرترن بنویسید که که مقدار تابع زیر را به ازای هر x واردشده توسط کاربر مادامی که x<0.1  است محاسبه کنید ( توجه کنید که لگاریتم طبیعی در مبنای e محاسبه می شود). از یک ساختار شرطی if برای تشخیص مجاز بودن مقدار x وارد شده استفاده کنید و مقدار تابع را محاسبه کنید و در غیر این صورت یک پیغام خطای مناسب چاپ کنید.

\[ y=ln \frac{1}{1-x}\]

که در آن P2 توان اندازه گیری شده و P1 توان مرجع (watt milli 1 ) است. این معادله لگاریتم بر مبنای 10 را استفاده می کند که برای ورودی های صفر و منفی تعریف نشده است. برنامه ای بنویسید که توان را محاسبه کند به طوری که برای مقادیر صفر و منفی واردشده پیغام خطا چاپ و کاربر را از غیر مجاز بودن اعداد واردشده مطلع کند.

7 -  برنامه ای بنویسید که عدد صحیحی که فقط شامل 0 و 1 است (یعنی یک عدد صحیح "دودویی") را بخواند و معادل دهدهی آن را چاپ کند. راهنمایی: از عملگر تقسیم و تابع پیمانه (mod) برای جدا کردن متوالی ارقام دودویی از راست به چپ استفاده نمایید.

همانطور که در سیستم اعداد دهدهی، رقم سمت راست دارای ارزش مکانی 1 و سمتی چپی آن دارای ارزش مکانی 10 ،سپس 100 و سپس 1000 و ... است؛ در سیستم اعداد دودویی، رقم سمت راست دارای ارزش مکانی 1، سپس 2، سپس 4، سپس 8 و ... می باشد. بنابراین عدد دهدهی 234 را میتوان به صورت 4*1 + 3*10 + 2*100 تعبیر کرد.

8 - برنامه ای بنویسید که تانژانت x را با استفاده از سری های توانی زیر تا 6 رقم محاسبه کند.

\[sin(x)=\frac{x}{1!}-\frac{x^{3}}{3!}+\frac{x^{5}}{5!}-...\]

\[cos(x)=1-\frac{x^{32}}{2!}+\frac{x^{4}}{4!}-...\]

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

8 - برنامه ای بنویسید که عدد N را از کاربر دریافت کند و اعداد فرد را از یک تا N محاسبه کند و نمایش دهد.

9 - برنامه ای بنویسید که 10 جفت مقدار Y,X را از کاربر دریافت کرده و حاصل جمع، قدرمطلق تفاضل، حاصلضرب و باقی مانده تقسیم عدد بزرگتر بر کوچکتر را محاسبه کند و برای هر جفت ورودی جداگانه نمایش دهد.

10 - برنامه ای بنویسید که مقدار y=5x3+10x2-3x+7 را به ازای x=[-5,5] را محاسبه کرده و x و y را در دو ستون مقابل هم نمایش دهد.

11 - برنامه ای بنویسید که مجموع و تعداد تمام اعداد واقع بین عدد های 1 و 300 را که بر سه و هفت بخشپذیرند محاسبه کرده و آنها را نمایش دهد.

12 - برنامه ای بنویسید که مجموع 25 جمله اول سری زیر را محاسبه کند و نمایش دهد.

\[S=-1+\frac{1}{2}-\frac{1}{4}+\frac{1}{6}-\frac{1}{8}+...\]

13 - برنامه ای بنویسید که مجموع 10 جمله اول سری زیر را محاسبه کند و نمایش دهد.

\[SUM=1- \frac{2}{1!} +\frac{4}{3!}-\frac{6}{5!}+\frac{8}{7!}-...\]

14 - برنامه ای به زبان فرترن بنویسید که با استفاده از روش تصنیف Bisection ریشه تابع cos(x) را محاسبه کند. ( ورودی ها : ابتدای بازه ، انتهای بازه ، تعداد تکرار ، خطا )

15 - برنامه ای بنویسید که دو عدد 20 رقمی را به صورت رقم به رقم از ورودی دریافت کند و آن ها را با هم جمع کند و نتیجه را چاپ کند.

16 - برنامه ای بنویسید که ابتدا 10 عد از ورودی دریافت کند. سپس بیشینه این اعداد را چاپ کند.

17 - برنامه ای بنویسید که سن و کد جنسیت ( 0 برای آقایان و 1برای خانم ها ) را برای n کاربر مراجعه کننده به یک سامانه در طول مدت یک شبانه روز دریافت کرده ، مطابق با جدول زیر رده سنی آن ها را تشخیص داده و اعلام کند تعداد کاربران مراجعه کننده به سامانه در هر رده بندی سنی به تفکیک زن و مرد چند نفر است.

محدوده سنی رده سنی
8 تا 18 سال 1
18 تا 35 سال 2
35 تا 65 سال 3
65 به بالا 4

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

چاپ نتایج از ستون 4 ام هر سطر آغاز شود.

بین هر سطر و سطر بعدی یک سطر خالی باشد.

18 - برنامه ای بنویسید که نام و نام خانوادگی و شماره دانشجویی را با پیغام مناسب دریافت و در خروجی با پیام مناسب چام کند (نام،نام خانوادگی،شماره دانشجویی معکوس)

19 - برنامه ای بنویسید که یک عدد را از کاربر بگیرد . آن را در متغییری به نام x ذخیره کند. با استفاده از آن عبارت زیر را محاسبه کند و مقدار y را با پیغام مناسب نمایش دهد.

\[y=x^{3}+3x^{2}+6x+6\]

20 - برنامه ای بنویسید که n معادله n مجهول را براساس روش ماتریسی (کرامر) حل نماید. در این برنامه لازم است ضرایب معادلات به صورت فایل متنی (input) در ورودی برنامه فراخوانده شود و مجهولات نیز به صورت فایل متنی (Output) در خروجی برنامه ثبت شود.

21 - برنامه ای بنویسید که مساحت یک چند ضلعی را براساس فرمول مساحت گاوس (فرمول نقشه بردار- الگوریتم بند کفش) با دادن مختصات هر یک از رئوس آن در دستگاه کارتزین محاسبه نماید. در این برنامه لازم است مختصات نقاط به صورت فایل متنی (input) در ورودی برنامه فراخوانده شود و مساحت به دست آمده نیز به صورت فایل متنی (Output) در خروجی برنامه ثبت شود.

22 - برنامه ای بنویسید که انتگرال عددی توابع زیر را به روش ذوزنقه ای محاسبه نماید. در این برنامه لازم است ورودی اطلاعات به صورت فایل متنی (input) در ورودی برنامه فراخوانده شود و نتیجه به دست آمده نیز به صورت فایل متنی (output) در خروجی برنامه ثبت شود.

23 - برنامه ای بنویسید که تولید و چاپ کردن اعداد دنباله ی فیبوناچی را تا زمانی ادامه دهد که مجموع اعداد چاپ شده از 50000 بیشتر نباشد.

24 -  با استفاده از قاعده سیمپسون Simpson انتگرال زیر را حل کنید.

\[f(x)=\int_{0}^{2} x^{2}dx\]

25 - با استفاده از قاعده ذوزنقه ای انتگرال زیر را حل کنید.

\[f(x)=\int_{0}^{2} x^{2}dx\]

26 - برنامه ای بنویسید که درجه حرارت را بر حسب سانتی گراد دریافت کردهو بر حسب فارنهایت ، رانکین و کلوین محاسبه و با فرمت مناسب چاپ نماید.

27 - برنامه ای بنویسید که عدد n را از کاربر دریافت کرده و !n را محاسبه کند.

28 - برنامه ای بنویسید که عدد طبیعی x را از ورودی خوانده و مجموع ارقام آن رابه همراه خود عدد چاپ کند ( از حلقه محدود DO-END DO استفاده شود )

29 - برنامه ای بنویسید که دو عدد 16 رقمی A و B را از کاربر گرفته و حاصل جمع آن ها را محاسبه و چاپ نماید.

30 - برنامه ای با متغییرهای مناسب بنویسید و تمامی 12 تابع مورد استفاده برای آرایه ها را در آن تست کنید.

DOT_PRODUCT , MATMUL , SHAPE , RESHAPE , MAXVAL , MAXLOC , MINVAL , MINLOC , PRODUCT , SUM , SIZE , TRANSPOSE

31 - برنامه ای بنویسید که یک عدد صحیح را به عنوان ورودی بگیرد و بررسی کند آیا عدد اول است یا خیر. اگر عدد اول نیست، تمامی فاکتورهای آن را به ترتیب صعودی نمایش دهد.

32 - برنامه ای را بنویسید که مقدار x را خوانده و y را بر اساس زیر محاسبه کرده و نمایش دهید.

 

33 - برنامه ای به زبان FORTRAN بنویسید که طول طولانی ترین دنباله از اعداد صعودی متوالی در یک آرایه را پیدا کند.

34 - برنامه ای بنویسید که تمام عناصر یک ماتریس را به اندازه یک خانه در جهت عقربه های ساعت بچرخاند. به طوری که عناصر در هر سطر و ستون به سمت راست منتقل شوند.

35 -

36 -

37 -

38 -

39 -

40 -

41 -

42 -

43 -

44 -

45 -

46 -

47 -

48 -

49 -

50 -

| جهت سفارش پروژه و تکلیف برنامه نویسی فرترن Fortran لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف فرترن Fortran - شرط های متداخل ( کد For0002 )

1 - برنامه ای بنویسید که طو و عرض یک مستطیل را گرفته ، محیط و مساخت آن را نمایش دهد.

2 - برنامه ای بنویسید که طول سه ضلع یک مثلث را گرفته ، اگر مثلث قائم الزاویه است ، مساحت آن را و گرنه محیط آن را محاسبه و چاپ کند.

3 - برنامه ای بنویسید که تمام اعداد فرد سه رقمی را زیر هم نمایش دهد.

4 - برنامه ای بنویسید که 50 عدد اعشاری ( به صورت آرایه یک بعدی ) را گرفته و مشخص کند چند تای آن ها با میانگین اعداد وارد شده حداکثر یک واحد فاصله دارد.

5 - برنامه ای بنویسید که بتواند ریشه های یک معادله درجه دوم را با دریافت ضرایب معادله در خروجی برنامه محاسبه کرده و چاپ کند و اگر معادله فاقد ریشه حقیقی اس در خروجی پیام مناسبی مبتنی بر عدم وجود جواب چاپ کند.

6 - برنامه ای به زبان فرترن Fortran بنویسید که بتواند با دریافت سه عدد حقیقی a,b,c در ورودی برنامه اولا با استفاده از ساختار بلوک IF کنترل کند که این اعداد مربوط به اضلاع یک مثلث هستند یا خیر؟ و در قسمت بعدی اگر اضلاع مثلث بودند ، محیط و مساحت این مثلث را محاسبه کرده و در خروجی برنامه نمایش دهد.

7 - برنامه ای به زبان فرترن  Fortran بنویسید که با دریافت سه عدد N, M , L توسط یک ساختار بلوک شرطی IF متداخل ، حداکثر MAX و حداقل MIN و جایگاه عضو حداکثر و عضو حداقل را محاسبه کرده و در خروجی برنامه نمایش دهد.

8 - برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار Exit … Do بتواند با دریافت مقدار حد بالای مجموع اعداد صحیح متوالی توان اول به عنوان Limit ، مقدار جمله N ام متناظر با این سری اعداد صحیح را محاسبه کرده و در خروجی برنامه با فرمت مناسبی نشان دهد.

\[S_{n}=1+2+3+...+(N-1)+N>Limit\]

9 -  برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار Exit … Do بتواند با دریافت مقدار حد بالای مجموع اعداد صحیح متوالی توان دوم به عنوان Limit ، مقدار جمله Nام متناظر با این سری اعداد صحیح را محاسبه کرده و در خروجی برنامه با فرمت مناسبی نشان دهد.

\[P_{n}=1^{2}+2^{2}+3^{2}+...+(N-1)^{2}+N^{2}>Limit\]

10 - برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار Exit … Do بتواند با دریافت مقدار حد بالای مجموع اعداد صحیح متوالی توان سوم به عنوان Limit ، مقدار جمله Nام متناظر با این سری اعداد صحیح را محاسبه کرده و در خروجی برنامه با فرمت مناسبی نشان دهد. 

\[Q_{n}=1^{3}+2^{3}+3^{3}+...+(N-1)^{3}+N^{3}>Limit\]

11 - فرض کنید می خواهیم برنامه به زبان فرترن Fortran ای بنویسیم که در این برنامه معدل نمرات اخذ شده شما دانشجویان کلاس برنامه نویسی کامپیوتر در 4 درس در این ترم محاسبه شده و چاپ گردد. با فرض اینکه تعداد دانشجویان کلاس برابر 45=N نفر باشد، با استفاده از ساختار بلوک حلقه تکرار دو سطحی متداخل شمارنده داراین برنامه را بگونه ای بنویسید که در حلقه بالاسری که روی تعداد دانشجویان بسته شده است، نام و نام خانوادگی هر دانشجو پرسیده شده و با وارد شدن به حلقه داخلی که روی تعداد دروس نتظیم می گردد، نمره هر درس آن دانشجو ( بین 0 تا 20 ) پرسیده شده و با روش متوسط گیری معدل وی محاسبه و چاپ گردد. ( خروجی به صورت فرمت مناسبی چاپ گردد.)

12 - یکی از روش های عددی معروف برای محاسبه جذر یک عدد ، روش تقسیم و متوسط گیری می باشد. به گونه ای که اگر بخواهیم با روش تکراری و جایگزینی متوالی جذر یک عدد مثل A را محاسبه کنیم می توان یک حدس اولیه برای مقدار جذر آن بزنیم ( مثال 5/A یا هر مقدار اولیه دلخواه دیگری) و مقدار آن را در متغیر X1 قرار دهیم. سپس با روش تقسیم و متوسط گیری طبق فرمول بازگشتی زیر ، مقدار جدید رابطه را بدست آورده و آنرا در X2 قرار دهیم. و این فرآیند تقسیم و متوسط گیری را تا جایی ادامه دهیم تا با تقریب مناسبی مقدار جذر A برایمان حاصل گردد. برنامه فرترن Fortran ای بنویسید که با استفاده از ساختار حلقه تکرار یک سطحی Exit … Do برنامه فرترن خواسته مسئله فوق را بنویسید.

13 - برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار حلقه تکرار Loop-Do بتواند اعداد پنج رقمی مضرب 5 ، تعدادشان و مجموع شان را محاسبه کرده و در فایل خروجی برنامه به نام فایل out.2-fig1 چاپ و ذخیره نماید.

14 - برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار حلقه تکرار Loop-Do بتواند دیجیت ها یا ارقام تشکیل دهنده اعداد چهار رقمی مضرب 3 را محاسبه کرده و در فایل خروجی برنامه به نام out.3-fig2 چاپ و دخیره نماید.

راهنمایی: منظور از دیجیت های یک عدد صحیح ، ارقام تشکیل دهنده آن عدد می باشد نظیر یکان، دهگان، صدگان و هزارگان با استفاده از روش خارج قسمت گیری و باقیمانده گیری بر 11 از طریق فانکشن های INT و Mod محاسبه می گردند. مثالٌ دیجیت ها یا ارقام عدد چهاررقمی 2352 برابر 2 ، 5 ، 3 و 2 می باشند.

15 - برنامه فرترن Fortran ای بنویسید که این برنامه با دریافت عدد صحیح N در ورودی برنامه ، مقسوم علیه های این عدد را محاسبه کرده و خود مقسوم علیه ها ، تعدادشان و مجموع شان (به جز خود عدد) را محاسبه نموده و در خروجی برنامه با فرمت توضیحی مناسبی چاپ نماید.

16 - برنامه فرترن Fortran ای بنویسید که این برنامه با استفاده از ساختار حلقه های تکرار دو سطحی متداخل با دریافت تعداد دانشجویان یک کلاس مثلا N و تعداد دروس هر دانشجو مثلا m و نام و نام خانوادگی هر دانشجو داخل حلقه تکرار Loop Do داخلی ، نمرات این دروس را از کاربر پرسیده و معدل دانشجو را در دروس اخذ شده محاسبه کرده و در شرایط کمتر بودن از 12 پیغام مشروطی و در صورت بالاتر بودن از 12 پیغام دانشجوی تلاشگر را در جلوی نام دانشجویان در فایل خروجی برنامه نشان دهد.

17 - برنامه فرترن Fortran ای بنویسید که این برنامه بتواند با استفاده از ساختار حلقه تکرار Exit-Do یا Do While و با دریافت N جفت عدد صحیح نظیر b , a در ورودی برنامه، با استفاده از روش تفریق های متوالی ، خارج قسمت تقسیم این دو عدد را محاسبه کرده و در فایل خروجی برنامه به نام 4-fig6 با فرمت توصیفی مناسبی چاپ نماید.

راهنمایی: الزم است اولین عدد یعنی a از دومین عدد به جهت انجام تقسیم از طریق تفریق های متوالی بزرگتر باشد، از طریق ساختار بلوک IF در ابتدای برنامه پس از دریافتa و b از کاربر شرطی بنویسید که اگر a از b بزرگتر نبود، جای آنها را تعویضکرده وسپس وارد فرآیند بلوک حلقه گردد. 

18 - برنامه فرترن Fortran ای بنویسید که بتواند با دریافت عدد صحیح N در ورودی مجموع توان دوم اعداد صحیح متوالی تا N را محاسبه کرده و در خروجی برنامه نشان دهد.

19 - برنامه فرترن Fortran ای بنویسید که بتواند با دریافت عدد صحیح M در ورودی مجموع توان سوم اعداد صحیح متوالی تا M را محاسبه کرده و در خروجی برنامه نشان دهد . همچنین یک متغیر منطقی Logical در برنامه تعریف کرده که در صورتیکه این مجموع با مقدار محاسباتی فرمول زیر یکسان شد، جواب صحیح TRUE را اعلام نماید.

\[S_{m}=(\frac{m(m+1)}{2})^{2}\]

20 - برنامه ای بنویسید که اعداد را از ورودی خوانده و تعداد اعداد منفی ، مثبت و صفر را مشخص کند و این روند تا زمانی که کاربر تمایل داشته باشد ادامه یابد.

21 - برنامه ای بنویسید که ماتریس 4*3 زیر را به گونه ای بسازد که بدون وارد کردن تک تک عناصر ، عناصر ماتریس زیر باشد. 

\[\begin{bmatrix}1 & 4 & 9& 16 \\1 & 4 & 9& 16\\1 & 4 & 9 & 16\\\end{bmatrix}\]

22 - فلوچارت و برنامه ای را طراحی کنید که عدد n را از کاربر بگیرد و یکی ماتریس  n*n بسازد که مقادیر درایه های آن برابر حاصل جمع دو برابر شماره سطر و سه برابر شماره ستون آن باشد. سپس با جابجایی محل سط رو ستون آن ماتریس دیگری بسازد. در نهایت درایه های نظیر به نظیر دو ماتریس از یکدیگر کسر شه و هرسه ماتریس را نمایش دهد.

23 - یکی از روش های برای محاسبه مجذور عدد N محاسبه حاصل جمع N عدد فرد متوالی یعنی اعداد 1 تا 2N-1 است. برنامه ای بنویسید که یک عدد از کاربر بگیرد و با این روش مجذور آن را محاسبه کند.

24 - برنامه ای بنویسید که 20 عدد را از ورودی بگیرد و آن ها را در آرایه َ ذخیره کند. سپس عناصر خانه های 1 تا 10 را با عناصر خانه های 11 تا 20 عوض نماید. به عنوان مثال عنصر خانه اول به خانه 11 و عنصر خانه 11 به خانه اول منتقل شود.

25 -  سری مک لورن تابع سینوس عبارت است از 

\[sin(x)=x-\frac{x^{3}}{3!}+\frac{x^{5}}{5!}-...=\sum_{n=0}^{\infty}(-1)^{n}\frac{x^{2n+1}}{(2n+1)!}\]

برنامه ای بنویسید که مقدار تابع سینوس را با استفاده از بسط فوق تا تعداد جمله مشخصی که کاربر اعلام می کند محاسبه و چاپ نماید.

26 - برنامه ای بنویسید که عدد n ( صحیح و مثبت ) را از صفحه کلید خوانده و توان دو آن را به استفاده از مجموع n عدد فرد از یک  محاسبه و چاپ کند.

27 - برنامه ای بنویسید که عناصر ماتریس m*n و مقادیر m و n را از صفحه کلید به طوری که m  مخالف n باشد را بگیرد . آنگاه ماتریس گفته شده را ترانهاده نموده و سپس ماتریس اولیه و ترانهاده آن را به صورت ماتریس چاپ کند.

28 - برنامه ای بنویسید که طرح زیر را به ازای n=6 چاپ کند.

 

29 - برنامه ای بنویسید که تابع زیر را در بازه [100 , 100- ] محاسبه کند.

30 - سابروتینی subrotine بنویسید که مختصات جدید یک نقطه را از مختصات قدیم آن محاسبه کند. مشروط بر آنکه محورها در جهت خلاف عقربه های ساعت به اندازه a دوران نماید. رابطه بین مختصات جدید و قدیم به شرح زیر است.

\[x'=xcos(a)+ysin(a)\\y'=-xsin(a)+ycos(a) \]

31 - برنامه ای بنویسید که یک عدد صحیح مثبت را از ورودی گرفته و وجود آن در سری فیبوناچی را بررسی نماید و در صورت وجود ، موقعیت آن را چاپ کند.

32 - جناس قلب یا پالیندروم، عدد یا متنی است که از هر دو طرف به طور یکسانی خوانده شود. برای مثال هر یک از اعداد پنج رقمی روبرو جناس قلب هستند: 11611 ، 45554 ، 55555 ، 12321 . برنامهای بنویسید که یک عدد صحیح 7 رقمی را بگیرد و جناس قلب بودن آن را معلوم کند.

33 - برنامه ای را بنویسید که اعداد فرد سه رقمی را از بزرگ به کوچک چاپ کند.

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

| جهت سفارش پروژه و تکلیف برنامه نویسی فرترن Fortran لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد.

تکالیف فرترن Fortran - سری فیبوناچی ( کد For0001 )

1 -برنامه ای به زبان فرترن 90 بنویسید تا 10 عدد کاتوره ای بین 0 تا 1 تولید کرده و سپس حاصل ضرب این 10 عدد تولید شده را نیز در پایان محاسبه و چاپ نماید.

2 - برنامه ای به زبان فرترن 90 بنویسید تا 100 عدد کاتوره ای در بازه 0 تا 1 تولید کند. سپس احتمال آنکه اعداد تولید شده در محدوده 0.4 تا 0.6 قرار بگیرد را محاسبه کرده و نتیجه را چاپ کند.

3 - برنامه ای به زبان فرترن 90 بنویسید تا اگر مقادیر پارامترهای a=2, b=5 , c=10 , d=5 مشخص شده باشند، آنگاه نتایج درستی / نادرستی گزاره های زیر را اعلام کند.

\[\begin{matrix} (a>b).AND.(b==c)\\ (b==d).AND.(b<c)\\ (b<d).AND.(.NOT.(b<c))\\ (a>d).OR.(b<c) \end{matrix}\]

4 - برنامه ای به زبان فرترن 90 بنویسید تا کلیه توان های عدد 2 را که کوچکتر از عدد 100 هستند را چاپ کند.

5 - برنامه ای به زبان فرترن 90 بنویسید تا پس از تولید 100 عدد کاتوره ای بین 0 تا 1 ، تعداد اعداد بزرگتر و کوچکتر از 0.5 را محاسبه نماید.

6 - برنامه ای به زبان فرترن 90 بنویسید تا اعداد فیبوناچی را مطابق الگوی زیر و با رابطه بازگشتی محاسبه و چاپ نماید.

 

7 - برنامه ای به زبان فرترن  Fortran  بنویسید که اعداد دورقمی سری فیبوناچی را چاپ کند.

8 - برنامه ای به زبان فرترن Fortran بنویسید که مقدار تابع  cosh(x)را برای یک x دلخواه که از ورودی دریافت می شود با استفاده از بسط مک لورن این تابع یعنی سری زیر را با دقت 0.001 محاسبه و اعلام کند. همچنین اعلام کند که از چند جمله سری برای دستیابی به این دقت استفاده شده است. ( دقت مقدار را با استفاده از اختلاف مقدار تابع در دو تکرار متوالی بررسی کنید. )

9 - انواع داده ها در فرترن را نام برده و ویژگی های هر یک را به اختصار توضیح دهید.

10 - برنامه ای به زبان فرترن بنویسید تا در آن محیط و مساحت دایره را به شعاع 2 سانتی متر را محاسبه نماید.

11 - برنامه ای به زبان فرترن 90 بنویسید تا پس از تولید 1000 عدد صحیح کاتوره ای بین 0 تا 10 ،تعداد اعداد بزرگتر از 5 را محاسبه و چاپ نماید.

12 - برنامه ای به زبان فرترن 90 بنویسید که چهار عدد را خوانده و عدد کوچکتر را بنویسد.

13 - برنامه ای به زبان فرترن 90 بنویسید که تمام اعداد چهار رقمی که بر 7 بخش پذیرند اما بر 3 بخش پذیر نیستند را زیر هم نمایش دهد.

14 - برنامه ای به زبان فرترن 90 بنویسید که عدد صحیحی را دریافت کند و زوج و فرد بودن آن را گزارش دهد.

15 - برنامه ای به زبان فرترن بنویسید که 10 عدد ( به صورت آرایه یک بعدی ) را گرفته و بزرگترین و کوچکترین عدد را بازگرداند.

16 - برنامهای بنویسید که n معادله n مجهول را براساس روش ماتریسی (کرامر) حل نماید. در این برنامه لازم است ضرایب معادلات به صورت فایل متنی (input) در ورودی برنامه فراخوانده شود و مجهولات نیز به صورت فایل متنی (Output ) در خروجی برنامه ثبت شود.

\[\left\{\begin{matrix} a_{11}x_{1}+a_{12}x_{2}+...+a_{1n}x_{n}=b_{1}\\ a_{21}x_{1}+a_{22}x_{2}+...+a_{2n}x_{n}=b_{2}\\\;\;\;\;\;\;\;\;...\;\;\;\;\;\;\;\;\;\;\;\;=\;\;\;\;...\\ a_{n1}x_{1}+a_{n2}x_{2}+...+a_{nn}x_{n}=b_{n}\\\end{matrix}\right.\]

17 - برنامهای بنویسید که مساحت یک چند ضلعی را براساس فرمول مساحت گاوس (فرمول نقشه بردار- الگوریتم بند کفش) با دادن مختصات هر یک از رئوس آن در دستگاه کارتزین محاسبه نماید. در این برنامه لازم است مختصات نقاط به صورت فایل متنی (input (در ورودی برنامه فراخوانده شود و مساحت به دست آمده نیز به صورت فایل متنی (Output (در خروجی برنامه ثبت شود.

18 - برنامه ای بنویسید که انتگرال عددی توابع زیر را به روش ذوزنقه ای محاسبه نماید. در این برنامه لازم است ورودی اطلاعات به صورت فایل متنی (input) در ورودی برنامه فراخوانده شود و نتیجه به دست آمده نیز به صورت فایل متنی (output) در خروجی برنامه ثبت شود.

\[f(x)=\int_{i}^{j} a_{1}x^{n}+a_{2}x^{n-1}+...+a_{n} \\f(x)=\int_{i}^{j} sin(x) \\f(x)=\int_{i}^{j} cos(x) \\f(x)=\int_{i}^{j} tan(x) \\f(x)=\int_{i}^{j} ln(x) \]

19 - برنامه ای در محیط اجرایی فرترن 90 تهیه نمایید تا بتواند با استفاده از آرایه های تک بعدی عددی و کاراکتری ، و نیز استفاده از قوانین شرطی و حلقۀ تکرار یک سطحی، برای یک شرکت خرید و فروش اتومبیل، بر اساس اعلام فهرست حسابداری مبنی بر تعداد خرید و فروش اتومبیل در هر ماه، در هر چهار ماه سال و در طول یکسال، فروش بیشینه، کمینه و متوسط را با گزارش نام ماه میلادی آن ، و شرایط رضایت بخش بودن فروش ماهانه برحسب شاخصی ، گزارش خروجی با فرمتی مناسب پس از اجرای برنامه ارائه دهد.

20 - برنامه ای به زبان فرترن 90 بنویسید که کاربر تعدادی عدد صحیح n و عدد حقیقی R را از ورودی دریافت کند، سپس بدون عمل توان، مقدار Rرا با سه رقم اعشاربدست آورده و چاپ نماید.

21 - برنامه ای به زبان فرترن 90 بنویسید که کاربر به دفعات، مقسوم علیه های تعدادی عدد دو رقمی را محاسبه، سپس تعداد مقسوم علیه های زوج و فرد هر کدام را به همراه خود مقسوم علیه ها مشخص کرده و در سطرهای جداگانه ای چاپ نماید.

22 - برنامه ای به زبان فرترن 90 بنویسید که کاربر به دفعات، تعدادی عدد اعشاری را دریافت نماید. سپس میانگین. کوچکترین و بزرگترین عدد بین اعداد وارد شده را بدون استفاده از توابع کتابخانه ای پیدا کرده و هر کدام را در سطر جداگانه ای با مشخص کردن نام آن ها چاپ کند.

23 - برنامه ای بنویسید که عدد n را از ورودی دریافت کند و اگر آن عدد زوج بود مجموع اعداد زوج ماقبل آن عدد را محاسبه نماید و اگر آن عدد فرد بود میانگین اعداد فرد ماقبل آن عدد را محاسبه نماید.

24 - دستور حل معادلات جبری به روش نیوتن را بنویسید. یک معادله را به دلخواه تعریف کنید و دستور مناسب را برای یافتن پاسخ بنویسید.

25 - برنامه ای بنویسید که شماره ماه را از ورودی بخواند.با دستور if چاپ کند در چه فصلی از سال هستیم.

26 - برنامه ای بنویسید که شعاع دایرهای را که در مربعی محصور است دریافت، سپس اختالف مساحت دایره و مربع محصور کننده آن را محاسبه و چاپ کند.

27 - قرار است که یک تانکر نفت به شکل یک استوانه که دارای یک درپوش به صورت کلاهک مخروطی است، ساخته شود. ارتفاع مخروط برابر با شعاع استوانه است و ظرفیت تانکر (تنها شامل قسمت استوانه ای) برابر با 500 مترمکعب است. برای ساختن هر مترمربع از بدنه استوانه این تانکر مبلغ 30 دلار و برای ساختن هر مترمربع از بدنه مخروط 40 دلار هزینه می گردد. برنامه ای بنویسید که شعاع قاعده استوانه را گرفته و با توجه به حجم مخزن، ارتفاع استوانه و نیز هزینه ساخت تانکر را محاسبه نماید.

28 - برنامه ای بنویسید که دو مقدار را از ورودی خوانده، مقدار بزرگتر را چاپ کند و در صورت برابری دو مقدار پیغام are values two equal را چاپ کند.

29 - برنامه ای بنویسید مقدار را از که 3 ورودی خوانده آنها را به ترتیب نزولی در خروجی چاپ از بزرگ به کوچک چاپ کند.

30 - برنامه ای بنویسید که دستمزد کارگران یک کارخانه را مطابق با شرایط زیر به گونهای تعیین کند که هر کارگر ماکزیمم پاداش را دریافت کند:

برای کارگرانی که دارای بیش از 10 سال سابقه کار بوده و سن آنها کمتر از 30 سال است،حقوق خالص به علاوه 15 درصد حقوق به صورت پاداش پرداخت شود.

برای کارگرانی که دارای بیش از 15 سال سابقه کار بوده یا سن آنها 40 سال یا بیشتر است،حقوق خالص به علاوه 20 درصد حقوق به صورت پاداش پرداخت شود.

برای کارگرانی که دارای بیش از 25 سال سابقه کار بوده یا سن آنها 50 سال یا بیشتر است،حقوق خالص به علاوه 25 درصد حقوق به صورت پاداش پرداخت شود.

برای کارگرانی که دارای بیش از 10 سال سابقه کار بوده و سن آنها 30 سال یا بیشتر است، حقوق خالص به علاوه 10 درصد حقوق به صورت پاداش پرداخت شود.

به مابقی کارگران، (یعنی کارگرانی که کمتر از 10 سال سابقه کار دارند)، حقوق خالص به علاوه 5 درصد حقوق به صورت پاداش پرداخت شود.

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

به ازای مبالغ خرید کمتر از 200 هزار تومان هزینه ارسال برای مشتریان داخل شهر برابر حاصلضرب مسافت (برحسب کیلومتر) در 200 تومان و برای مشتریان خارج از شهر اگر فاصله کمتر از 20 کیلومتر باشد مشابه هزینه داخل شهر و اگر بیشتر از 20 کیلومتر باشد از رابطه 4000+ 150 * (20 -مسافت) محاسبه شود. به ازای مبالغ خرید بالاتر از 200 هزار تومان برای مشتریان داخل شهر ارسال رایگان و برای مشتریان خارج از شهر از رابطه 100 * (20 -مسافت) محاسبه شود.

32 - برنامه ای بنویسید که شماره دانشجویی، تعداد درس، نمرات و واحد هر درس برای نمرات یک ترم تعدادی از دانشجویان را از ورودی خوانده، شماره دانشجویی و معدل آنها را چاپ کند. مشخص کند که چند نفر از دانشجویان معدلشان بیش از 17 است.

33 - برنامه ای بنویسید که شماره پروژه و سود حاصله از تعدادی پروژه انجام شده توسط یک شرکت سرمایه گذاری را از ورودی خوانده، سپس شماره پروژه و سود مرتبط با پروژه سود آور اول را چاپ کند.

34 - اگر ax2+bx+c=0 باشد، برنامه ای بنویسید که a , b, c را از کاربر بگیرد و تعیین کند که معادله چند ریشه دارد و ریشه های آن را چاپ کند.

| جهت سفارش پروژه و تکلیف برنامه نویسی فرترن Fortran لطفا در شبکه های تلگرام و واتساپ موضوع و سوال مورد نظر را به شماره  989364847193+ ارسال نمایید، تا پس از بررسی هزینه خدمت شما اعلام گردد

موضوعات
Designed By M A T L A B K H O O N E H