ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
по тематическому блоку №1ЗАДАЧИ
Задача 1. Написать программу, которая выводит на экран 50 первых членов последовательности: а) 1, 5, 2, 4, 3, 6, 10, 7, 9, 8, … б) 1, 100, 99, 2, 98, 97, 96, 3, 95, 94, 93, 92, … в) 0, 10, 11, 20, 21, 22, 30, 31, 32, 33, … Задача 2. Рассчитайте сумму первых 100 членов ряда, описываемого формулой: i / (100-i)! (i – номер элемента ряда; расчет значения факториала необходимо реализовать в виде самостоятельной функции.
Задача 3. Дана функция f = a * sin(w * t), где t – время в секундах. Параметры a и w – постоянные и вводятся с клавиатуры. Необходимо с использованием метода прямоугольников приближенно рассчитать значение интеграла функции f на интервале 0-50 секунд (шаг интегрирования – 0,1 секунды). Задача 4. С клавиатуры вводится положительное целое число N. Необходимо вывести на экран все простые числа, не превышающие N.
Задача 5 (Выполняется без использования компьютера!). Массивы А и В из пяти целых заполнены единицами. Какими числами (указать в порядке следования) будут заполнены массивы после выполнения следующего фрагмента программы: а) i=0; k=4; while (i<5) { B[k] = 0; for (j=0; j<i; j++) { B[k]+=A[j]; A[j]=B[k]; }; k--; i++; };
б) i=0; s=0; for (i=0; i<5; i+=2) { s += A[i]; j = 0; while (i+j < 5) { B[i+j] = s; j++; } }
Задача 6. В массиве A[10] задана последовательность чисел: 3, 4, 6, 2, 1, 7, 9, 0, 12, 2. Описаны также целочисленные переменные I, K, X. Каков смысл (охарактеризуйте цель работы данного алгоритма словесно) и каков результат выполнения следующего фрагмента программы: X = 0; K = 0; for (I=0; I<3; X+=A[I], I++); for (I=1; I < 8; I++) { S = A[I] + A[I+1] + A[I+2]; if (S > X) { X = S; K = I; } }; for (I=0;I<3;I++) printf (“%d ”, K+I);
Задача 7. Задан (и уже заполнен положительными числами) массив int A[50]. Необходимо написать фрагмент программы, который: а) выведет на экран число, чаще всех остальных встречающееся в массиве А (для данного фрагмента программы построить блок-схему алгоритма); б) рассчитает сумму чисел, являющихся квадратами каких-либо прочих элементов массива; в) выведет числа из массива в виде таблицы, в которой номер строки будет соответствовать минимальному количеству десятков, которое превосходят соответствующие элементы массива. Например: 1) 8, 4, 6 2) 19, 17, 10, 12 3) 22, 28 ... Задача 8. С клавиатуры вводится текущая дата с указанием дня недели. Необходимо: а) написать программу, в которой (после ввода текущей даты и дня недели) с клавиатуры будут циклически вводиться другие даты без указания дня недели (признак окончания ввода – нулевой год) и выводиться на экран соответствующие этим датам названия дней недели (даты – с годами от нуля до плюс бесконечности); б) изменить программу, реализовав расчет дня недели в виде самостоятельной функции, получающей две даты и одно название дня недели в качестве входных параметров; в) вывести на экран в табличной форме (столбцы – дни недели) календарь на текущий месяц. Порядок представления дат в программе – произвольный.
Задача 9. Жесткий стержень АВ длиной L опирается вершинами о пол (вершина А) и стену (вершина В). Необходимо промоделировать изменение координаты Y вершины В в процессе скольжения стержня в вертикальной плоскости вдоль стены (в начальный момент вершина А отстоит от стены на расстояние b, после чего начинает двигаться по линии пола с постоянной скоростью V). Шаг моделирования принять равным Q = 1/24 с. а) Необходимо изобразить схему алгоритма, позволяющего промоделировать процесс и его изменение в зависимости от заданных значений b, V и L; б) Разработать программу, моделирующую процесс с учетом возможности изменения заданных значений b, V и L. ______________________________________________________
Математическое описание процесса, используемое при решении задачи:
XA = b + V t, YA = 0 => YB = (L2 - (b + V t)2)1/2
Задача 10. Опишите структуры данных, которые могут сохранить информацию о состоянии «кубика Рубика», и объясните, как будут фиксироваться данные о цвете и размещении клеток.
Задача 11. Площадка терминала, отведенная для размещения контейнеров с грузами, позволяет разместить 5 рядов по 40 контейнеров. Допускается складирование контейнеров в «один на другой», но не более, чем в 3 яруса. Каждый контейнер характеризуется номером, наименованиями отправителя и получателя (оба наименования – не более 30 символов). Необходимо: а) описать структуры данных, необходимые для хранения информации о текущей загрузке площадки; б) реализовать фрагмент программы, который позволит внести с клавиатуры все данные о размещении и характеристиках всех имеющихся контейнеров (учитывать, что терминал может быть загружен не полностью); в) реализовать фрагмент программы, который позволит вывести на экран точные координаты всех контейнеров, имеющих заданную (введенную с клавиатуры) пару «отправитель – получатель»; г) реализовать фрагмент программы, который производит расчет общего количества пустых позиций для контейнеров на терминале; д) реализовать фрагмент программы, который сможет «ответить на вопрос»: существует ли возможность размещения всех имеющихся контейнеров «в один слой» (на 1-ом ярусе)? е) предложить (с использованием динамических структур данных) вариант описания данных о загрузке терминала (такой, при котором количество блоков данных о характеристиках контейнеров будет строго соответствовать общему числу имеющихся контейнеров); ж) используя структуры данных, предложенные для пункта (е), выполнить задания пунктов (в) и (г).
Задача 12. С клавиатуры вводится размерность динамического массива целых. После этого в программе необходимо создать указанный динамический массив, заполнить его числами с клавиатуры и выполнить следующие действия: а) рассчитать, сколько элементов массива могли бы быть корректно представлены типом char; б) поменять местами элементы массива, симметричные (по значению индекса) относительно среднего элемента; в) вывести элементы массива в порядке убывания; г) построить второй динамический массив, который необходимо (без лишних затрат динамической памяти) заполнить только отрицательными элементами первого массива.
Задача 13. Секция ячеек автоматической камеры хранения имеет планировку «4 ячейки в высоту – 15 ячеек в ширину». Каждая ячейка характеризуется информацией о занятости («занята/свободна») и об установленном четырехзначном коде (для занятых). Опишите структуры данных, необходимые для хранения информации по одной секции.
Задача 14. Заданы следующие описания: struct A { int* xp[10]; int d[5]; int* k; }; struct B { A* xt; B* r; }; … void main() { B *h, *p, *t, g[50]; … }
С использованием перечисленных переменных постройте и заполните (для всех целочисленных данных – единицами) структуры данных, изображенные на рис.1.
Рис.1. Структуры данных
Не нашли, что искали? Воспользуйтесь поиском:
|