Refbank.Ru - рефераты, курсовые работы, дипломы по разным дисциплинам
Рефераты и курсовые
 Банк готовых работ
Дипломные работы
 Банк дипломных работ
Заказ работы
Заказать Форма заказа
Лучшие дипломы
 Методы кредитно-денежной политики Центрального Банка
 Вексельное обращение в России
Рекомендуем
 
Новые статьи
 Почему темнеют зубы и как с этом...
 Иногда полезно смотреть сериалы целыми...
 Фондовый рынок идет вниз, а криптовалюта...
 Как отслеживают частные...
 Сочинение по русскому и литературе по тексту В. П....
 Компания frizholod предлагает купить...
 У нас можно купить права на...
 Подскажем где и как открыть категорию...
 Сдать курсовую в срок поможет Курсач.эксперт. Быстро,...
 Размышления о том, почему друзья предают. Поможет при...
 Готовая работа по теме - потеря смысла жизни в современном...
 Рассуждения о проблеме влияния окружающего шума на...
 Рассуждения по тексту Владимира Харченко о роли науки в...
 Проблема отношений человека с природой в сочинении с...
 Рассуждение по теме ограниченности...


любое слово все слова вместе  Как искать?Как искать?

Любое слово
- ищутся работы, в названии которых встречается любое слово из запроса (рекомендуется).

Все слова вместе - ищутся работы, в названии которых встречаются все слова вместе из запроса ('строгий' поиск).

Поисковый запрос должен состоять минимум из 4 букв.

В запросе не нужно писать вид работы ("реферат", "курсовая", "диплом" и т.д.).

!!! Для более полного и точного анализа базы рекомендуем производить поиск с использованием символа "*".

К примеру, Вам нужно найти работу на тему:
"Основные принципы финансового менеджмента фирмы".

В этом случае поисковый запрос выглядит так:
основн* принцип* финанс* менеджмент* фирм*
Информатика

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

Контрольная по информатике (5 заданий)



ПЛАН
Задание 1 3
Задание 2 7
Задание 3 10
Задание 4 11
Задание 5 15
ЗАДАНИЕ 1
Напечатать координаты точек, попадающих в заштрихованную фигуру, если координата x изменяется от -3.5 до 4.0 с шагом ?х=0.5, а координата y меняется от -4.2 до 0.2 с шагом ?у=0.4.

Решение:
Первым шагом алгоритма должен быть ввод координат точки: x и y. Для большего удобства при анализе результатов можно вывести введенные значения на экран.
Исследование изображения на рисунке-задании дает нам основание утверждать, что целевая область образуется пересечением: прямой с коэффициентом -1 и смещением +1 и окружности с центром в начале координат и радиусом 1.
Уравнение этой прямой:
y=х-3
Уравнение окружности:
x2+y2=9
Для проверки попадания точки в заданную область нужно проверить условия того, что:
1) Точка лежит выше прямой или на ней, т.е.:
y>= х-3
2) Точка лежит внутри окружности или на ней, т.е.:
x2+y2<=9.
Точка лежит в области, если выполняются оба условия, если же не выполняется хотя бы одно из них, точка лежит вне области. Следовательно, эти условия должны быть объединены логической операцией "И".
Схема алгоритма приведена на рисунке ниже.














Для реализации алгоритма нам будут нужны только переменные для хранения значений координат x и y. В условиях задания не приведены требования к точности вычислений, рисунок представлен с довольно невысокой точностью, поэтому для этих переменных было бы достаточно типа float. Но в соответствии с общим стилем программирования на C выберем для них тип double.
Текст программы начинается с включения фала:
#include
т.к. нам обязательно понадобятся функции стандартного ввода-вывода, которые описаны в этом файле.
Далее идет заголовок и открытие главной функции:
int main(void) {
и объявление переменных:
double x, y;
Для каждой координаты выводится приглашение на ее ввод и вводится ее значение:
printf("Введите координату x >");
scanf("%lf",&x);
printf("Введите координату y >");
scanf("%lf",&y);
Введенные значения координат выводятся на экран:
printf("x=%6.3lf; y=%6.3lf ",x,y);
Далее идет проверка условий попадания точки в область. Оба условия проверяются одним выражением. Поскольку точка попадает в область, если выполняются оба условия вместе, условия в выражении соединены операцией "логическое И":
if ( (y>=х-3)&& (x*x+y*y<=9) )
Если значение логического выражения в условном операторе истинно, то выводится сообщение про попадание:
printf("Точка попадает в область ");
В противном случае выводится сообщение про попадание:
else printf("Точка не попадает в область ");
Полный текст программы приведен ниже.
#include
int main(void) {
double x, y; /* координаты точки */
/* ввод координат */
printf("Введите координату x >");
scanf("%lf",&x);
printf("Введите координату y >");
scanf("%lf",&y);
/* вывод только что введенных значений */
printf("x=%6.3lf; y=%6.3lf ",x,y);
/* проверка условий */
if ( (y>=х-3)
&& (x*x+y*y<=9) )
printf("Точка попадает в область ");
else printf("Точка не попадает в область ");
return 0;
}
Самое важное в отладке этой программы - убедиться в том, что программа выдает правильные результаты при разных комбинациях входных данных. Следовательно, необходимо подобрать такие комбинации, которые были бы показательными для разных случаев размещения точки.
1) точка лежит ниже области - (0.4, 0.4);
2) точка лежит на нижней границе области - (0.5, 0.5);
3) точка лежит внутри области - (0.7, 0.6);
4) точка лежит на верхней границе области - (0.707, 0.707);
5) точка лежит выше области - (0.8, 0.8);
6) точка лежит на правом краю области - (1.0, 0.0);
7) точка лежит на левом краю области - (0.0, 1.0);
ЗАДАНИЕ 2
Вычислить сумму элементов треугольного сектора матрицы Т(25,25), расположенного выше ее главной и побочной диагоналей.
Решение:
По условию задачи нам задан одномерный массив, то есть ряд из 25 элементов:
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20 .
Каждый элемент представляет собой произвольное число в диапазоне от ? ? до + ? . Место элемента в массиве определяет его порядковый номер (от 1 до 20). В данном массиве необходимо найти все отрицательные элементы и выбрать из них наибольший.
В качестве контрольного примера принимаем массив:
1, 5, -4, 17, -14, 2, 35, -7, 10, 25, -13, -11, 4, 6, 7, 0, 5, -8, 16, 3 .
Реализовать решение задачи можно методом перебора элементов массива. Каждый элемент по очереди проверяется на отрицательность и сравнивается с ранее найденными отрицательными элементами. Каждый отрицательный элемент, больший ранее найденного фиксируется как промежуточный результат. В результате после перебора всех элементов будем иметь искомый ответ.
Чтобы выполнить поставленную задачу, необходимо произвести следующие действия:
берем первый элемент массива Ai = A1;
рассмотрим элемент Ai на отрицательность:
если Аi < 0 то п. 3
если Аi ? 0 то см. п. 5;
сравниваем найденный отрицательный элемент с уже имеющимся
Ai > Аотр. наиб. (для первого элемента массива Аотр. наиб. = 0):
если условие выполнено, то п.4;
если нет, то п. 5;
принимаем найденный отрицательный элемент за искомый результат задачи Аотр. наиб. = Ai , и запоминаем его порядковый номер n = i;
выбираем следующий элемент массива Ai и см п. 2, если элемент последний, то п.6;
искомый результат Аотр. наиб. с порядковым номером n.
Для контрольного примера наибольшим отрицательным элементом является А(3) = -4 .
Программу для обработки поставленной задачи на языке высокого уровня BASIC составляем с применением циклических операции, что сокращает длину программы, а, следовательно, и время на ее выполнение.
Листинг программы Примечание
10 DIM A(20)
описание массива 20 B = 0: B1 = 0: N = 0 начальное значение констант 30 FOR I = 1 TO 20 начало цикла ввода элементов массива 40 INPUT A(I) ввод очередного элемента массива 50 NEXT I завершение цикла ввода 60 FOR I = 1 TO 20 начало цикла обработки элементов 70 IF A(I) < 0 THEN 90 проверка элемента на отрицательность 80 GOTO 110 безусловный переход (элемент положителен) 90 B = B1: B1 = A(I): C = I переназначение текущего элемента и его номера 100 IF B1 < B THEN 110 сравнение нового элемента с текущим 105 B = B1: C = I назначение рассматриваемого элемента текущим 110 NEXT I завершение цикла обработки элементов 120 PRINT "A(";N;") = "; B1 вывод результата на монитор 130 STOP останов программы
ЗАДАНИЕ 3
В текстовом файле содержится последовательность действительных чисел. Найти сумму чисел, имеющих четные порядковые номера. Результат дописать в конец исходного файла. Имя файла вводится с клавиатуры.
Решение:
Листинг программы

Примечание а) с оператором IF...THEN 10 HOME очистка экрана * 20 X1 = 0 : X2 = 1 : S = 0.1 задание интервала 30 X = X1 начальное значение Х 40 Y = 2 * SQR (X) - 3 * ATN(X) + 0.2 вычисление функции 50 PRINT "X = "; X ; "Y = "; Y печать результатов ** 60 X = X + S новое значение Х 70 IF X > X2 THEN 90 проверка интервала 80 GOTO 40 переход к вычислению 90 STOP остановка
б) с оператором FOR...NEXT 10 HOME очистка экрана * 20 FOR X = 0 TO 1 STEP 0.1 начало цикла 30 Y = 2 * SQR (X) - 3 * ATN(X) + 0.2 вычисление функции 40 PRINT "X = "; X ; "Y = "; Y печать результатов ** 50 NEXT X окончание цикла 60 STOP остановка * - оператор очистки экрана для АГАТ-Бейсик, для Quik-Basik или Turbo-Basik необходимо заменить на CLS;
** - для Quik-Basik или Turbo-Basik вывод на принтер осуществляется оператором LPRINT.
Сравнение двух вариантов программы позволяет сделать вывод, что использование оператора FOR ... NEXT позволяет сократить длину программы, а следовательно и время её выполнения.
ЗАДАНИЕ 4
Вычислить первую норму двух матриц: А(20,10) и В(40,20)
10 ¦?¦1= max ?|ai,j| i=1,20 j=1
20 ¦?¦1= max ?|bi,j| i=1,40 j=1
Задачу решить с использованием подпрограммы.
Решение:
Главная диагональ проходит в массиве от левого верхнего угла к правому нижнему. Необходимо получить суммы элементов массива на главной диагонали и всех диагоналях, параллельных главной диагонали (всего 11 сумм) и выбрать из них максимальную. Диагонали условно нумеруем, начиная с правого верхнего угла против часовой стрелки. Угловые элементы диагонали не содержат и во внимание не принимаются.
Порядок действий по решению задачи следующий:
1) находим суммы элементов диагоналей S, так как все диагонали параллельны главной диагонали, то начальными для диагоналей являюся элементы первой строки (кроме последнего) и первого столбца (кроме последнего); все последующие элементы диагонали смещены относительно предыдущего на один столбец и одну строку.
Сложив элементы диагоналей, получаем по числу диагоналей 11 сумм S1 - S11, которые составляют одномерный массив.
2) выбираем очередное значения суммы;
3) если Si+1 >Si , то Smax = Si+1;
4) если значения кончились, то п.5, иначе п.2;
5) получаем искомый результат Smax.
Решение контрольного примера:
а) находим суммы диагоналей
S1 = 5 + 2 = 7
S2 = 3 + 4 + 1 = 8
S3 = 1 + 6 + 2 + 8 = 17
S4 = 8 + 4 + 4 + 2 + 3 = 21
S5 = 4 + 1 + 8 + 4 + 1 + 7 = 25
S6 = 2 + 7 + 6 + 9 + 1 + 9 + 1 = 35
S7 = 5 + 5 + 8 + 2 + 8 + 8 = 36
S8 = 9 + 6 + 8 + 1 + 7 = 31
S9 = 5 + 4 + 3 + 2 = 14
S10 = 5 + 2 + 6 = 13
S11 = 6 + 5 = 11
б) выбираем из значений сумм максимальное Smax = S7 = 36 .

Листинг программы 10 DIM B(7, 7), S(11) 20 FOR I = 1 TO 7 30 FOR J = 1 TO 7 40 READ B(I, J) 50 NEXT J 60 NEXT I 70 S(1) = B(1, 6) + B(2, 7) 80 S(2) = B(1, 5) + B(2, 6) + B(3, 7) 90 S(3) = B(1, 4) + B(2, 5) + B(3, 6) + B(4, 7) 100 S(4) = B(1, 3) + B(2, 4) + B(3, 5) + B(4, 6) + B(5, 7) 110 S(5) = B(1, 2) + B(2, 3) + B(3, 4) + B(4, 5) + B(5, 6) + B(6, 7) 120 S(6) = B(1, 1) + B(2, 2) + B(3, 3) + B(4, 4) + B(5, 5) + B(6, 6) + B(7, 7) 130 S(7) = B(2, 1) + B(3, 2) + B(4, 3) + B(5, 4) + B(6, 5) + B(7, 6) 140 S(8) = B(3, 1) + B(4, 2) + B(5, 3) + B(6, 4) + B(7, 5) 150 S(9) = B(4, 1) + B(5, 2) + B(6, 3) + B(7, 4) 160 S(10) = B(5, 1) + B(6, 2) + B(7, 3) 170 S(11) = B(6, 1) + B(7, 2) 180 FOR N = 1 TO 11 190 IF S(N) > S THEN S = S(N) 195 PRINT "S(";N;")=", S(N) 200 NEXT N 210 PRINT "Smax =", S 220 DATA 2, 4, 8, 1, 3, 5, 1 230 DATA 5, 7, 1, 4, 6, 4, 2 240 DATA 9, 5, 6, 8, 4, 2, 1 250 DATA 5, 6, 8, 9, 4, 2, 8 260 DATA 5, 4, 8, 2, 1, 1, 3 270 DATA 6, 2, 3, 1, 8, 9, 7 280 DATA 4, 5, 6, 2, 7, 8, 1 290 STOP
ЗАДАНИЕ 5
В текстовом файле содержится последовательность действительных чисел. Построить динамический список и переписать в него указанную последовательность. В полученном списке минимальный элемент заменить на величину R. Измененную последовательность из списка переписать в результирующий файл. Имена исходного и результирующего файлов, а также значение R вводятся с клавиатуры.
Решение:
Простое число - число, которое делится на 1 и на само себя. Поиск больших простых чисел связан с привлечением современной компьютерной техники и основан на специальном алгоритме Люка-Лемера, который связан с понятиями чисел Мерсенна, Ферма, Каллена и т. п. За приемлемое время современные вычислительные средства позволяют разложить числа в 100 знаков. Самое большое найденное простое число на сегодня состоит из 11811 цифр. Простые числа длиной в несколько знаков целесообразно искать последовательным делением на весь ряд предшествующих простых чисел.
Программа построена на алгоритме, который, отталкиваясь от первого простого числа (2) последовательно находит все последующие простые числа в границах заданного диапазона. Последнее число из подобного ряда будет наибольшим и принимается в качестве ответа для задания. Поиск производится последовательным делением на все простые числа, предшествующие рассматриваемому числу. Каждое найденное простое число включается в список делителей и участвует в поиске следующего простого числа.
10 PRINT "ПОИСК ПРОСТЫХ ЧИСЕЛ" название программы
20 INPUT "Диапазон поиска от 0 до ", A ввод верхней границы поиска
30 PRINT 2 печать первого простого числа
40 DIM C(A) описание массива
50 B=2: F=1: C(1)=2 задание констант
60 B=B+1 вычисление числа для исследования
70 FOR I=1 TO F открытие цикла
80 D=B/C(I) деление числа на известные простые числа
90 E=INT(D) округление результата
100 IF E=D THEN 60 проверка деления нацело
110 NEXT I конец цикла
120 F=F+1 увеличение количества чисел в списке
130 C(F)=B запись в список нового простого числа
140 IF B>A THEN 180 проверка на выход из диапазона поиска
150 PRINT B печать найденного простого числа
160 K=B запоминание последнего из найденного
170 GOTO 60 переход к новому исследуемому
180 PRINT "Наибольшее простое число: ",K печать результата
190 STOP останов

2

Работа на этой странице представлена для Вашего ознакомления в текстовом (сокращенном) виде. Для того, чтобы получить полностью оформленную работу в формате Word, со всеми сносками, таблицами, рисунками, графиками, приложениями и т.д., достаточно просто её СКАЧАТЬ.



Мы выполняем любые темы
экономические
гуманитарные
юридические
технические
Закажите сейчас
Лучшие работы
 Вымогательство
 Водно-солевой обмен
Ваши отзывы
Краткий обзор наиболее многообещающих MMO игрушек текущего года В данной публикации мы кратко опишем для вас пару самых популярных и новых MMO игр от ведущих игровых студий нашей планеты например про мморпг онлайн игры , чтобы вы смогли выбрать игрушку по-нраву, которая будет помогать вам приятно проводить не один скучный зимний вечерок. Обзоры и все о новинках игр ММО на сайте - mmostrike.ru
Donaldpussy

Copyright © refbank.ru 2005-2024
Все права на представленные на сайте материалы принадлежат refbank.ru.
Перепечатка, копирование материалов без разрешения администрации сайта запрещено.