Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Контрольная работа - Программирование алгоритмов с линейной, разветвляющейся и циклической структурами на алгоритмическом языке Фортран - файл 1.doc


Контрольная работа - Программирование алгоритмов с линейной, разветвляющейся и циклической структурами на алгоритмическом языке Фортран
скачать (120.5 kb.)

Доступные файлы (1):

1.doc121kb.24.11.2011 13:16скачать

содержание
Загрузка...

1.doc

Реклама MarketGid:
Загрузка...
БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра «Строительная механика»

Контрольная работа №1

По информатике на тему: «Программирование алгоритмов с линейной, разветвляющейся и циклической структурами на алгоритмическом языке Фортран»

Студент Шифр 008

Задача 1. Очертание кривой линии на отрезке описывается уравнением .



Исходные данные

Данные для тестового примера





Кол-во частей
разбиения,

Отрезок


008





5





Решение.

  1. Анализ характера кривой. arctg(0.4x) = cos(0.4x)/sin(0.2x+1).

если знаменатель равен нулю, то тангенс равен ∞ и в этой точке линия имеет разрыв. При очень малых значениях cos(0.2x+1) зачения tg(0.2x+1) может оказаться очень большим и не будет иметь практического смысла. Поэтому значение cos(0.2x+1) будем сравнивать с малым числом, например, V = 10-10.

Результаты вычислений вручную h = (B – A)/n = [7 – 2]/5 = 1

Номер точки

x

g1(x)= = 0,6(|x|-3)**2

0.4x

sin(0.4x)

g2(x)= =3*arctg(0.4x)

Y(x)= g1(x)+g2(x)

1

2

0,6

0,8

|0,717|>V

2,024

2,624

2

3

0

1,2

|0,932|>V

2,628

2,628

3

4

0,6

1,6

|1,000|>V

3,037

3,637

4

5

2,4

2

|0,909|>V

3,321

5,721

5

6

5,4

2,4

|0,675|>V

3,528

8,928

6

7

9,6

2,8

|0,335|>V

3,683

13,283

По результатам вычислений построим кривые g1(x), g2(x), y(х). Они представлены на рисунке ниже



Схема программы

Текст программы на фортране

Фиксация имени программы

Функции пользователя

Вывод данных об авторе работы

Заданиее исходных данных и вывод их на экран
Вычисление шага изменения

Вывод на экран оглавления таблицы результатов
Начало цикла. Переменная цикла i

Вычисление текущего значения х Вычисление значения g1(x) Вычисление значения g2(x)

Вычисление значения у Вывод результатов

Конец цикла
Конец текста программы

program Kontr1

G1(x)=0.6*(ABS(x)-3)**2

G2(x)= 3*ATAN(0.4*x)

Print *,'Rabota1 Student Е Shifr 008'
data A,B,N/2.,7.,5/

print 1,A,B,N

V=1.E-10

format(1X,'A,B=',2F8.2, 'N=',I3)

H=(B-A)/N

print *,'H=',H


print 5

5 format(10X,2X,'I',8X,'X',18X,'Q1',12X,'0.4X',7X,'Q2',10X,'Y')

DO I=1,N+1

X=A+H*(I-1)

Q1=G1(X)

IF(sin(0.4*X).LT.V)Q2=777777

IF(ABS(sin(0.4*X)).GT.V)Q2=G2(X)

^ PRINT *,I,X,Q1,0.4*X,Q2,Y

END DO

pause

END



Задача 2. Последовательность из целых чисел задана в виде одномерного массива . Требуется составить программу обработки массива. Алгоритм должен содержать ввод элементов массива и вывод результатов его обработки.



Результат обработки элементов массива ^ B с учетом их признаков

Признаки элементов

Данные для тестового примера

m

c

8

Найти произведение элементов массива и их количество

по модулю больших С

9

5



Схема программы

Текст программы на фортране

Фиксация имени программы

Описание массива B размерностью 9 и переменных С и Р целого типа

Вывод данных об авторе работы

Задаем значения размерности массива и числа С и выводим их на экран по формату

Вводим массив с клавиатуры

Начальное число элементов по модулю больших С=5 равно нулю

Начальное произведение этих элементов равно 1

Начало цикла. Переменная цикла i

Проверяем выполнение условия В(i)<=C и если оно выполняется считаем число таких элементов и находим их произведение

Окончание цикла

Проверяем наличие элементов массива удовлетворяющих условию задачи и если они отсутствуют выводим сообщение об этом(метка 3)

Выводим результаты работы программы на экран
Конец текста программы

program Kontr2

integer C,P,B(9)


Print *,'Rabota2 Student E Shifr 008'

data M,C/9,5/

print 1,M,C

1 format(1X,'M=',I3,5X, 'C=',I3)

READ(5,*) (B(I),I=1,M)

K=0.


P=1.

DO 2 I=1,M
IF (ABS(B(I)).GT.C) K=K+1

IF (ABS(B(I)).GT.C) P=P*B(I)
2 CONTINUE

IF (K.EQ.0) goto 3

print *,'proizvedenie elementov P=',P

3 Print *,'Chislo elementov K=',k

pause

END


Задача 3. Составить программу вычисления значения функции с учетом области определения

по принципу: ввод х – вычисление f(x)



Исходные данные

Данные для тестового примера







а

b

008







3

9



Схема программы

Текст программы на фортране

Фиксация имени программы

Вывод данных об авторе работы

Присваиваем переменным A и B значения и выводим их на экран по формату

Вводим значение X c клавиатуры

Проверяем выполнения попадания введенного значения Х в область определения функции


Вычисляем значение функции если Х<A

Вычисляем значение функции если Х>=A и X<=B

Вычисляем значение функции если X>B

Выводим значение функции на экран
Конец текста программы

program Kontr3

Print *,'Rabota3 Student E Shifr 008'

data A,B/3.,12./

print 1,A,B

1 format(1X,'A=',E12.4,5X, 'B=',E12.4)

2 Print *,'Vvedite X='

READ(5,*) X

P=7./2.

V=1.E-10

if (X**2.GE.P.and.X.LT.A) goto 2

if (sin(0.1*X-2.).GT.V.and.X.LT.B) goto 2

if (X.LT.A) f=2.*X/SQRT(7.-2.*X*X)

if (X.GE.A.and.X.LE.B) f=1./tan(0.2*X)

if (X.GT.B) f=1/sin(0.1*X-2.)

Print *,'F=',F

pause

END



Скачать файл (120.5 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru