РефератыИнформатикаОсОсновы алгоритмизации и программирования кр 1, вар1

Основы алгоритмизации и программирования кр 1, вар1

Основы алгоритмизации и программирования кр 1, вар1

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ


СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)


Заочный факультет


(дистанционная форма обучения)


Кафедра автоматизированных систем управления (АСУ)


ПРОГРАММИРОВАНИЕ


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


Дата выполнения работы: 04.08.2003


Дата проверки:_________


Оценка:_________


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


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


2003 г.


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


№ варианта – 1.


Задание:


Задан массив чисел X[1..15]
.


Определить значение переменной у. Исходные данные и результат напечатать с пояснительным текстом.



у=


0,000135´А4, если А1³0.


Где А1
– сумма элементов массива Х;


А4
– сумма косинусов положительных элементов массива Х;


М1
– количество элементов массива Х, значения которых меньше А1.


Для решения задачи составим структурную схему алгоритма.


Для этого определиим используемые переменные и их тип.


Х[1..15]
– массив, состоящий из 15 элементов, каждый из которых записан в


экспоненциальной форме и имеет вещественный тип данных;


i
– номер очередного элемента;


n
– номер конечного элемента массива;


М1
- количество элементов массива, значения которых меньше суммы всех элементов массива.


Переменные i, n, M1
имеют целочисленный тип данных;


А1
– используется для подсчета суммы всех элементов массива Х;


А4
- используется для подсчета сумм косинусов положительных элементов массива Х;


у
- искомая по условию задачи переменная.


Переменные А1, А4, у
имеют вещественный тип данных.


Алгоритм выполнения:


Для генерации элементов массива используем процедуру


Randomize;


n:=15;


i:=1;


Генерируем элементы массива Х с помощью функции random
и выводим их на экран


while
i<=n do


begin


writeln (i,'-й член массива',random:10);


x[i]:=random;


i:=i+1;


end
;


Цикл будет повторятся n раз (в данном случае 15), генерируя новый элемент массива Х и заполняя таким образом массив данных.


Задаем начальные вычисляемые значения и выводим их на экран.


A1:=0;


A4:=0;


y:=0;


M1:=0;


Для вычисления суммы всех элементов массива Х и занесения этой суммы в переменную А1 используем цикл


i:=1;


while
i<=n do


begin


A1:=A1+X[i];


i:=i+1;


end
;


Определение на положительность каждого элемента массива.


Если элемент положителен, определяем его косинус и суммируем его значение в переменную

А4


i:=1;


while
i<=n do


begin


if
X[i]>0


then
A4:=A4+cos(X[i]);


i:=i+1;


end
;


Определяем, меньше ли значения каждого элемента массива Х[i] по сравнению


с суммой всех элементов массива A1. Те элементы, значения которых меньше A1, суммируются количественно в переменную М1


i:=1;


while
i<=n do


begin


if
X[i]<A1


then
M1:=M1+1;


i:=i+1;


end
;


Проверка условия задачи и определение искомого значения у в соответствии с условием.


if
A1<0 then


y:=(A4*2.8E-03+A1)/(M1*A1+3E-01)


else


y:=A4*1.35E-04;


Листинг программы:


program kr1var1;


uses crt;


var


{задаем переменные и их тип}


X: array [1..15] of real;


i,n,M1:integer;


A1,A4,y:real;


s1:string;


begin


clrscr;


{используем процедуру генерации элементов массива}


randomize;


writeln;


n:=15;


i:=1;


{генерируем элементы массива Х и выводим их на экран}


while i<=n do


begin


writeln (i,'-й член массива',random:10);


x[i]:=random;


i:=i+1;


end;


{задание начальных значений и вывод их на экран}


A1:=0;


A4:=0;


y:=0;


M1:=0;


writeln;


writeln ('A1: ',A1:10);


writeln ('A4: ',A4:10);


writeln ('M1: ',M1);


writeln ('y: ',y:10);


{суммирование элементов массива и определение А1}


i:=1;


while i<=n do


begin


A1:=A1+X[i];


i:=i+1;


end;


{определение на положительность каждого элемента массива,


если элемент положителен, определяем его косинус и суммируем


значение записывается в переменную А4}


i:=1;


while i<=n do


begin


if X[i]>0


then A4:=A4+cos(X[i]);


i:=i+1;


end;


{определяем, меньше ли значения каждого элемента массива по сравнению


с суммой всех элементов массива. Те элементы, значения которых меньше суммы


всех элементов массива,суммируются количественно в переменную М1}


i:=1;


while i<=n do


begin


if X[i]<A1


then M1:=M1+1;


i:=i+1;


end;


{проверка условия задачи и определение искомого значения у


Вывод на экран результатов вычислений}


if A1<0 then


y:=(A4*2.8E-03+A1)/(M1*A1+3E-01)


else


y:=A4*1.35E-04;


writeln;


writeln;


writeln ('A1: ',A1:10);


writeln ('A4: ',A4:10);


writeln ('M1: ',M1);


writeln ('y: ',y:10);


readln;


end.

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Основы алгоритмизации и программирования кр 1, вар1

Слов:602
Символов:6874
Размер:13.43 Кб.