рефераты Знание — сила. Библиотека научных работ.
~ Портал библиофилов и любителей литературы ~
 

МЕНЮ

рефератыГлавная
рефератыБаза готовых рефератов дипломов курсовых
рефератыБанковское дело
рефератыГосударство и право
рефератыЖурналистика издательское дело и СМИ
рефератыИностранные языки и языкознание
рефератыПраво
рефератыПредпринимательство
рефератыПрограммирование и комп-ры
рефератыПсихология
рефератыУголовное право
рефератыУголовный процесс
рефератыУправление персоналом
рефератыНовые или неперечисленные

рефераты

РЕКЛАМА


рефераты

ИНТЕРЕСНОЕ

рефераты

рефераты

 

Контрольная по информатике

рефераты

Контрольная по информатике

Министерство общего и профессионального образования

Российской Федерации

Алтайский государственный технический университет

им. И.И. Ползунова

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

по дисциплине «Информатика и вычислительная техника»

Вариант 0

Выполнил: студент гр. 9М-91 заочн. ф-та

Проверил: преподаватель

Ильин Валентин Иванович

Барнаул 1999

Задание.

Вычислить произведение элементов массива, превышающих заданное

число С, то есть yk > C, для х ? [a,b] и изменяющегося с шагом

h.

1 + x + ? x, где x < 5

yk= ? 2 – cosx, где 5 ? x ? 8

ln (1+x), где x > 8

Этап 1. Обозначения.

X – значение аргумента x;

Y - значение yk;

C – заданное число;

А – начальное значение аргумента x;

В – конечное значение аргумента x;

Н – шаг изменения аргумента x;

Р – произведение элементов yk массива.

Этап 2. Обсуждение алгоритма.

Задается начальное значение аргумента x = a и начальное значение

произведения элементов массива Р = 1. Так как, число повторений цикла

заранее неизвестно, организуется циклический (итерациооный) вычислительный

прцесс. Внутри цикла осуществляется проверка значений х, и в зависимости от

того x < 5, или 5 ? x ? 8, или x > 8, выбирается формула для вычисления

значений yk. Кроме того, есливыполняется условие x < 5, то проверяется еще

одн условие х ? 0 (так как подкоренное выражение при вычислении yk не может

быть отрицательным). Вслучае выполнения этого условия, значению yk

присваивается значение yk = 1 (для того, чтобы при вычислении не изменилось

значение произведения Р, а процесс перешел к вычислению следующего значения

yk при следующем значении х). Затем, на основании полученного значения yk

проверяется условие yk > С. Если оно выполняется, то значение

произведения Р умножается на полученное значение yk. После этого, аргумент

х увеличивается на шаг h. Цикл выполняется до тех пор, пока текущее

значение х не превысит значения b – конечное значение аргумента х.

Этап 3. Структурная схема.

Структурная схема представлена на рис.1.

Рисунок 1.

Этап 4. Текст программы.

PROGRAM_KR0;

VAR_A,B,C,H,P,X,Y:REAL;

BEGIN

WRITELN(‘Введите значения a и b’);

READLN(A,B);

WRITELN(‘Введите шаг Н и число С’);

READLN(H,C);

X:=A;

P:=1;

WHILE_X<=B_DO

BEGIN

IF_X<5_THEN_IF_X>=0_THEN_Y:=1+X+SQRT(X);

ELSE_Y:=1;

ELSE_IF_X>8_THEN_Y:=LN(1+X);

ELSE_Y:=SQRT(2-COS(X));

IF_Y>C_THEN_P:=P*Y;

X:=X+H;

END;

WRITE(‘Произведение элеменьов массива равно’, P:8:2);

END.

Пояснения к программе.

Когда после запуска программы на экране появится текст:

Введите значения a и b,

нужно на клавиатуре выбрать конкретные числа, которые будут присвоены этим

переменным.

Затем появится сообщение:

Введите шаг Н и число С.

Необходимо ввести также конкретные значения этих переменых. После этого

программа начнет выполнение вычислительного процесса. В результате работы

программы на экране появится текст:

Произведение элеменьов массива равно число.

Лабораторные работы.

Вариант 10.

Тема 1. Линейный вычислительный процесс.

Задание 1. Составить программу для вычисления значения х и

произвести вычисления на компьютере.

[pic]

PROGRAM_LR1;

VAR_A,B,D,P,G:REAL;

BEGIN

WRITE(’Введите через пробел значения a, b, d, p, g’);

READ(A,B,D,P,G);

Х:=A*SIN(SQR(P))+B*SQR(COS(P))/(A*D*(SQR(P)+SQR(G)));

WRITE(’X=’,X:7:2);

END.

Тема 2. Разветвляющиеся вычислительный процесс.

Задание 2. Составить структурную схему и написать программу

вычисления значения у(х) для любого значения

аргумента х.

sin2?x+cos?x,, если x > 5

y =

x3+x2+1, если x ? 1

PROGRAM_LR2;

VAR_X,Y:REAL;

BEGIN

WRITELN(’Введите х’);

READLN(X);

IF_X>5_THEN_Y:=SQR(SIN(SQRT(X)))+COS(SQRT(X));

WRITE(’Y=’,Y:8:2);

ELSE_IF_X<=1_THEN_Y:=SQR(X)*X+SQR(X)+1;

WRITE(’Y=’,Y:8:2);

ELSE_WRITE(’Y не определено при

данном

значении Х);

END.

Тема 3. Циклический вычислительный процесс (структурный и итерационный).

Задание 3. Составить структурную схему и программу для

вычисления таблицы значений функции y=f(x) на

отрезке [a,b], если х на этом отрезке изменяется с шагом

h.

x ? [14, 16], h=0.5

PROGRAM_LR3;

VAR_A,B,H,X,Y:REAL;

BEGIN

WRITELN(’Введите a,b,h’);

READLN(A,B,H);

X:=A;

WRITELN(’I___X___I___Y___I’);

REPEAT

Y:=(X-SIN(X))/(LN(X)+1);

WRITELN(’I’,X:7:2,’I’,Y:7:2,’I’);

X:=X+H:

UNTIL_X>B;

END.

Задание 4. Составить структурную схему и программу для

вычисления значения функции:

PROGRAM_LR4;

VAR_K,M,N:INTEGER;

S,P:REAL;

BEGIN

WRITELN(’Введите m и n’);

READLN(M,N);

S:=0;

FOR_K:=M_TO_N_DO

BEGIN

P:=(SQR(K)+5)/(SQR(K)*K+K);

S:=S+P;

END;

WRITE(’S=’,S:10:4);

END.

Тема 4. Програмирование алгоритмов циклической структуры с использованием

массивов.

Задание 5. Составить структурную схему и программу с

использованием одномерных массивов.

В заданной последовательности x1,x2,x3,...,xn

отрицательные числа заменить на их квадраты.

PROGRAM_LR5;

CONST_N1=100;

VAR_K,N:INTEGER;

X:ARRAY[1..N1]_OF_REAL;

BEGIN

WRITE(’Введите количество чисел в последовательности n=’);

READLN(N);

WRITELN(’Введите элементы последовательности’);

FOR_K:=1_TO_N_DO

BEGIN

READ(X[K]);

IF_X[K]<=0_THEN_X[K]:=SQR(X[K]);

WRITELN(X[K]);

END;

END.

Задание 6. Составить структурную схему и программу с

использованием двумерных массивов.

Получить элементы матрицы А=I IaijI I, i = 1..m, j = 1..n

i – j + 1, если i ? j

aij =

i / (? i + j), если i = j

m = n = 3

PROGRAM_LR6;

VAR_I,J,M,N:INTEGER;

A:ARRAY[1..10,1..10]_OF_REAL;

BEGIN

WRITELN(’Введите m, n’);

READLN(M,N);

FOR_I:=1_TO_M_DO

BEGIN

FOR_J:=1_TO_N_DO

BEGIN

IF_I=J_THEN_A[I,J]:=I/SQRT(J+1);

ELSE_A[I,J]:=I-J+1;

A[I,J]:=ABS(A[I,J]);

WRITELN(’A[’,I:2,’,’,J:2,’]=’,A[I,J]:10:3);

END;

END;

END.

Задание 7. Составить программу, в которой вычисление

факториала F = k! (k! = 1*2*3*…*k) выделить в

отдельный модуль.

PROGRAM_LR7;

VAR_M,N:INTEGER;

Y:REAL;

FUNCTION_FACT(K:INTEGER): INTEGER;

VAR_F,I,K:INTEGER;

BEGIN

F:=1;

FOR_I:=1_TO_K_DO

F:=F*I;

FACT:=F;

END;

BEGIN

WRITE(’Введите m и n’);

READLN(M,N);

Y:=(FACT(N)- FACT(M))/(2* FACT(N)- FACT(M+1));

WRITE(’Y=’,Y:10:4);

END.

-----------------------

[pic]

Вывод x

Конец

Ввод a, b, d, p, g

Начало

[pic]

Вывод y

Вывод y

x ? 1

x > 5

[pic]

Вывод «Y – не определено»

Конец

Ввод x

Начало

[pic]

[pic]

Вывод x, y

x > b

x = x + h

Конец

Ввод a, b, h

Начало

[pic]

[pic]

[pic]

[pic]

[pic]

[pic]

[pic]

S = S + P

k = m, n, +1

Вывод S

S = 0

Конец

Ввод m, n

Начало

xk ? 0

Ввод xk

xk = xk2

k = 1, n, +1

Вывод S

Конец

Ввод n

Начало

aij = IaijI

y = i / (? i + j)

j = 1, n, +1

i = j

aij = i – j + 1

i = 1, m, +1

Вывод aij

Ввод m, n

Начало

Конец

[pic]

Конец

Вывод P

P = P * y

y < C

x ? 0

[pic]

[pic]

x > 8

[pic]

[pic]

x < 5

x ? b

x = x + h

P = 1

x = a

Ввод a, b, C, h

Начало



рефераты





Рекомендуем



рефераты

ОБЪЯВЛЕНИЯ


рефераты

© «Библиотека»