ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
СИСТЕМ УПРАВЛЕНИЯ
И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
Заочный факультет
(дистанционная форма
обучения)
Кафедра
автоматизированных систем управления (АСУ)
ПРОГРАММИРОВАНИЕ
Контрольная работа
№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.
Другие работы по теме:
Риск в задачах линейного программирования
Лабораторная работа №3 Риск в задачах линейного программирования. Задание Предприятие выпускает 2 вида продукции в объмах Н1 и Н2. Известен случайный вектор ограничений -
Риск в задачах линейного программирования
Лабораторная работа №3 Риск в задачах линейного программирования. Задание: Предприятие выпускает 2 вида продукции в объмах Н1 и Н2. Известен случайный вектор ограничений -
Задачи по Математике 3
Задача 1 Решить графическим методом задачу линейного программирования А) найти область допустимых значений многоугольник решений Б) найти оптимумы целевой функции F=2x1 + x2 max min 2X1 + X2 ≥ 4 2X1 - X2 ≤ 0 0 ≤ X1 < 2 0 ≤ X2 < 8 Решение:
Математические методы методы
Общая задача линейного программирования Общей задачей линейного программирования называется задача, которая состоит в определении максимального или минимального значения функции
Основы программирования и алгоритмизации
Методика создания программы, которая выбирает лучшей результат и выводит его на экран с сообщением, что это лучшей результат. Анализ процедуры распознавания простых чисел. Алгоритм и текст программы, переписывающей компоненты файла в обратном порядке.
Создание текстового редактора в Turbo Pascal
Министерство энергетики РФ Уфимский Энергетический Колледж Специальность 2202 Курсовая работа по Основам алгоритмизации и программирования на тему “Создание текстового редактора”
Лабораторная работа №5
Цель работы: изучение условного оператора, оператора отбора, составного оператора и правил программирования разветвляющихся алгоритмов. Задание № 17
Алгоритмизация
Основным в процессе программирования является разработка алгоритма. Это один из наиболее сложных этапов решения задачи с использованием ЭВМ.
Разработка программного продукта на языке высокого уровня
Pascal - высокоуровневый язык программирования общего назначения и интегрированная среда разработки программного обеспечения для платформ DOS и Windows. Входная информация, требуемая для решения задачи и принятые обозначения; описание алгоритма.
Выявление функциональной зависимости в массиве данных
Алгоритмическое решение задач как метод формализации, его использование на современном этапе, применение информационных технологий. Разработка программы для определения функциональной зависимости в массиве данных с помощью языка программирования С++.
Примеры решения задач по программированию
Написание программы вычисления сопротивления электрической цепи, состоящей из двух параллельно и двух последовательно соединенных сопротивлений. Схема машинного алгоритма по условию задачи. Применение операций при написании программ на языке C/C++.
Введение в программирование
Сущность отладки, условия ее выполнения. Ошибки при компиляции программы, создание и изменение исходных символьных файлов. Процесс преобразования кода в машинный. Первый программист, виды трансляторов, классификация и уровни языков программирования.
Разработка форматов хранения программ. Структурирование
Основная цель этого блока, ввод данных для работы программы. Дополнительная цель, вывод информации. Два условия проверки вводимых данных. Первое условие проверки на количество точек. Второе, на правильность ввода координат точек. Созданные подпрограммы.
Решение практической задачи на паскале
ГОУ ВПО «Московский государственный открытый университет» Чебоксарский политехнический институт (филиал) Кафедра информационных технологий и программирования
Создание текстового редактора
Министерство энергетики РФ Уфимский Энергетический Колледж Курсовая работа по Основам алгоритмизации и программирования на тему “Создание текстового редактора”
Программирование и основы алгоритмизации 3
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ ГОСУДАРСТВЕННОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ КАМСКАЯ ГОСУДАРСТВЕННАЯ ИНЖЕНЕРНО - ЭКОНОМИЧЕСКАЯ
Циклические вычислительные процессы
Отчет по лабораторной работе №1. Тема: «Циклические вычислительные процессы». Дисциплина: «Языки программирования и методы трансляции». Цель: Ознакомление с методами работы организации циклических вычислений при использовании языка программирования С.
Визуальное программирование в Delphi
Изучение методов визуального программирования в Delphi. Задание: Построить графики функций ; ; Текст программы: unit Graph; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Реализация программы на Турбо Паскале
Федеральное агентство по образованию “Московский государственный университет приборостроения и информатики” Кафедра ИС-4 «Информационное обеспечение робототехнических и мехатронных систем»
Собельман Владимир Ильич
Собельман Владимир Ильич - крупный специалист, ученый и педагог в области программирования. Владимир Ильич пренадлежит плеяде талантливых математиков, связавших свою жизнь с вычислительной техникой и программированием.
Ляпунов Алексей Андреевич
Ляпунов Алексей Андреевич (1911-73), российский математик, член-корреспондент АН СССР (1964). Автор трудов по теории множеств, математическим вопросам кибернетики, математической лингвистике.
Ершов Андрей Петрович
Основные направления его деятельности связаны с вопросами автоматизации программирования и проблемами теоретического программирования, объектами которого служат математические абстракции программ.