Подготовка к контрольной (группы 8.4, 8.5, 8.6) >>
Подготовка к контрольной (группы 8.1, 8.2, 8.3) >>
Подготовка к контрольной (группы 8.1, 8.2, 8.3) >>
Список теоретических вопросов
- Структуры программы на языке С++.
- Запись алгоритма с помощью блок-схемы.
- Базовые типы данных в С++: bool, char, int, short int, unsigned int, float, double. Их описание, допустимые значения, размер в памяти компьютера.
- Объявление переменной, присваивание и инициализация: что это за действия и в чем разница?
- Что такое препроцессорная директива?
- Библиотеки iostream, math, vector и их назначение.
- Стандартный ввод - вывод в С++. Правила организации вывода данных. непечатаемые символы.
- Стандартные арифметические операции. Зависимость результата арифметической операции от типа операндов.
- Основные математические функции
- Оператор ветвления: полное и неполное ветвление. Синтаксис операции ветвления и обозначение с помощью блок-схем.
- Операторы сравнения. Логические операторы. Сложные условия.
- Оператор цикла while. Отличие оператора с предусловием от оператора с постусловием. Синтаксис цикла while и do..while. Запись циклического алгоритма с помощью блок-схем.
- Задача анализа цифр числа: поиск количества цифр в числе, их суммы, наибольшей или наименьшей цифры в числе.
- Оператор цикла for. Синтаксис оператора, запись в виде блок-схем. Взаимозаменяемость конструкции цикла for и while. Сокращенная форма арифметических операций.
- Операторы break и continue. Назначение операторов, принцип использования, синтаксис.
- Алгоритм Евклида поиска НОД двух чисел. Блок-схема и реализация на языке С++.
- Массив. Определение. Структура массива. Объявление и работа с элементами вектора.
- Методы работы с вектором: размер, добавление и удаление элемента в конец вектора.
- Алгоритм ввода элементов массива с клавиатуры.
- Генератор случайных чисел. Генерация случайного числа в заданном диапазоне. Генерация случайной десятичной дроби. Необходимые библиотеки для использования генератора случайных чисел.
- Генерация массивы случайных чисел в заданном диапазоне.
- Подпрограммы в С++. Определение, назначение и различие функций и процедур. Синтаксис описания функций и процедур.
- Передача параметров по ссылке и по значению. Как определить, когда следует передавать параметры по ссылке, а когда - по значению?
- Локальные и глобальные переменные. Области видимости переменных.
Список задач
- Определить и вывести на экран наибольшее среди трех введенных чисел.
- Определить и вывести на экран наименьшее среди трех введенных чисел.
- Поменять местами значение в двух переменных, не прибегая к использованию третьей переменной.
- Определить принадлежность точки A(x,y) одной из координатных четвертей.
- Даны координаты трех точек: A(x1,y1), B(x2, y2), C(x3, y3). Определить наиболее удаленную от начала координат точку.
- Определить и вывести на экран корни квадратного уравнения ax2+bx+c = 0.
- Определить и вывести на экран корень линейного уравнения kx+b = 0.
- Проверить, является ли число простым.
- Найти наибольший делитель данного натурального числа.
- Найти количество делителей данного натурального числа.
- Подсчитать количество разрядов(цифр) данного натурального числа.
- Подсчитать сумму цифр данного натурального числа.
- Определить максимальную цифру данного натурального числа.
- Определить минимальную цифру данного натурального числа.
- Определить максимальную четную цифру данного натурального числа.
- Определить минимальную нечетную цифру данного натурального числа.
- Дано натуральное число N. Определить, сколько четных цифр встречается в записи этого числа.
- Подсчитать, сколько раз в данном числе встречается заданная цифра.
- Дано натуральное число. Определить, встречается ли в записи числа заданная цифра. Сперва вводят число, затем - цифру. Вывести YES или NO.
- Определить, сколько в записи числа “замкнутых областей”: так цифры 0, 9, 6, 4 дают по одной замкнутой области, цифра 8 - дает две замкнутые области. Например, число 3489 содержит четыре замкнутые области.
- Подсчитайте, сколько среди данных N чисел нулей, положительных чисел, отрицательных чисел.
- Вычислите сумму данных N натуральных чисел.
- По заданным сторонам треугольника a, b, c проверить, можно ли составить треугольник и рассчитать его площадь по формуле Герона.
- Рассчитать НОД двух натуральных чисел.
- Дана простая дробь вида a/b. Требуется сократить эту дробь и вывести ответ на экран.
- Рассчитать НОК двух натуральных чисел.
- Рассчитать НОД трех натуральных чисел.
- По данному натуральному n вычислите сумму 12+22+...+n2.
- Вводятся 4 числа: a, b, c и d. Выведите все числа на отрезке от a до b, дающие остаток c при делении на d. Если таких чисел не существует, то ничего выводить не нужно.
- Вычислите N! ("эн-факториал") – произведение всех натуральных чисел от 1 до N ( N!=1∙2∙…∙ N).
- Вводятся целые числа a и b. Выведите все числа на отрезке от a до b, оканчивающиеся числом 7. Если таких чисел нет, то ничего выводить не нужно.
- Напишите программу, вычисляющую 2N. Модуль math.h подключать нельзя!
- Напишите программу, вычисляющую aN. Модуль math.h подключать нельзя!
- Вычислите сумму данных N натуральных чисел. (Вводится число N, а затем N чисел, сумму которых необходимо вычислить.)
- Найдите все целые решения уравнения ax3 + bx2 + cx + d = 0 на отрезке [n1,n2] и выведите их в порядке возрастания. Если на данном отрезке нет ни одного решения, то ничего выводить не нужно. В программу вводятся числа a, b, c, d, n1, n2.
- По данному действительному числу a и натуральному n вычислите сумму числового ряда вида:
1, a, a2, … ,an. - Напишите программу, которая вводит два целых числа и находит их произведение, не используя операцию умножения. Учтите, что числа могут быть отрицательными.
- Напишите программу, которая вводит натуральные числа a и b , и выводит квадраты натуральных чисел в диапазоне [ a , b ] .
- Натуральное число называется числом Армстронга, если сумма цифр числа, возведенных в K -ю степень (где K – количество цифр в числе) равна самому числу. Например,
153 = 13 + 53 + 33.
Напишите программу, которая находит все числа Армстронга на отрезке [ a , b ] . - Натуральное число называется автоморфным , если оно равно последним цифрам своего квадрата. Например, 252 = 625. Напишите программу, которая находит все автоморфные числа на отрезке [ a , b ] .
- Напишите программу, которая определяет, верно ли, что введённое число содержит две одинаковых цифры, стоящие рядом (как, например, 221).
- Напишите программу, которая определяет, верно ли, что введённое число состоит из одинаковых цифр (как, например, число 222).
- Совершенным называется число, равное сумме всех своих делителей, меньших его самого (например, число 6=1+2+3). Напишите программу, которая вводит натуральное число N и определяет, является ли число N совершенным.
- В некоторых видах спорта выступление каждого спортсмена оценивается несколькими судьями, затем из всех оценок удаляются минимальная и максимальная, а из оставшихся берется среднее арифметическое. Если максимальную или минимальную оценку поставили несколько судей, то удаляется только одна из них. Вам дано количество судей и все оценки, которые они дали. Выведите оценку, которая пойдет в зачет данному спортсмену.
- Напишите программу, которая заполняет массив квадратами натуральных чисел от 1 до N.
- Напишите программу, которая заполняет массив кубами натуральных чисел от N до 1.
- Напишите программу, которая заполняет массив первыми N натуральными числами в обратном порядке (начиная с последнего) и выводит его.
- Напишите программу, которая заполняет массив из N элементов степенями числа 2, начиная с 21 до 2N
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 100]. Определить есть ли в массиве элементы, отличающиеся от минимального ровно на 1
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 1000]. Определить сколько элементов в массиве начинаются с заданной цифры.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 100]. Определить, сколько в массиве элементов, у которых в разряде десятков стоит четная цифра. Сам массив обязательно вывести на экран!
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Найти самый маленький элемент массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Найти самый большой элемент массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Найти самый маленький по модулю элемент массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Напишите программу, которая находит в массиве количество элементов, равных максимальному.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Напишите программу, которая находит в массиве номера элементов, равных минимальному.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Напишите программу, которая переставляет соседние элементы массива: 1-й со 2-м, 3-й с 4-м и т.д. Нумерация элементов начинается с единицы.
- Напишите программу, которая находит в массиве самую длинную цепочку одинаковых элементов. Программа должна вывести значение элемента, который встречается наибольшее число раз подряд, и длину этой цепочки. Если в массиве есть несколько цепочек максимальной длины, нужно вывести данные по первой из них
- Напишите программу, которая выполняет реверс массива: меняет местами первый и последний элементы, второй и предпоследний и т.д.
- Реверс массива – это перестановка элементов в обратном порядке: меняются местами первый и последний элементы, второй и предпоследний и т.д. Напишите программу, которая выполняет реверс двух половин массива по отдельности.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 100]. Найти самый большой четный элемент массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить сумму элементов массива
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить среднее арифметическое всех элементов массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 100]. Определить сумму всех четных элементов массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [0, 100]. Определить количество элементов массива, содержащих в разряде десятков цифру 1.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить элемент, меньше всего отличающийся от минимального в массиве.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить элемент, меньше всего отличающийся от среднего арифметического всех элементов в массиве.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить элемент, больше всего отличающийся от среднего арифметического всех элементов в массиве.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить второй по величине элемент в массиве. (*Решить задачу за один проход по массиву)
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить второй минимальный элемент в массиве. (*Решить задачу за один проход по массиву)
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить, есть ли в массиве пара соседних элементов, сумма которых дает 0.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Определить, есть ли в массиве пара элементов, сумма которых дает 0.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Вставить число x после элемента с номером k.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Вставить число x в начало массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Вставить число x после каждого четного элемента массива.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Вставить число x на каждую четную позицию в массиве.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Удалить из массива элемент с номером k.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Удалить из массива первый элемент.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Удалить из массива элемент с номером k.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. После каждого отрицательного элемента массива вставить 0.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Удалить из массива элементы начиная с номера n1 до номера n2 включительно.
- Ряд чисел Фибоначчи задается следующим образом: первые два числа равны 1 ( F1 = F2 = 1 ), а каждое следующее равно сумму двух предыдущих: Fi = Fi - 1 + Fi - 2 . Напишите программу, которая вводит натуральное число N и заполняет массив из N элементов первыми N числами Фибоначчи.
- Дан массив, длина и элементы которого введены с клавиатуры. Определить образуют ли элементы массива монотонно возрастающую последовательность (то есть каждый элемент не меньше, чем предыдущий)
- Дан массив, длина и элементы которого введены с клавиатуры. Определить образуют ли элементы массива монотонно убывающую последовательность (то есть каждый элемент не больше, чем предыдущий)
- Дан массив, длина и элементы которого введены с клавиатуры. Определить образуют ли элементы массива монотонную последовательность (последовательность может быть как возрастающей, так и убывающей)
- Дан массив, длина и элементы которого введены с клавиатуры. Определить количество в массиве локальных максимумов: то есть элементов, больших обоих своих соседей.
- Дан массив, длина и элементы которого введены с клавиатуры. Определить количество в массиве локальных минимумов: то есть элементов, меньших обоих своих соседей.
- По данному натуральному числу создать массив, содержащий цифры этого числа.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Выполнить циклический сдвиг всех элементов массива вправо на один. При этом первый элемент переместится на второе место, второй - на третье и т.п. Последний элемент должен переместиться на первое место.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Выполнить циклический сдвиг всех элементов массива влево на один.
- Найдите максимальный и минимальный элементы в массиве и поменяйте их местами.
- Распечатайте те элементы массива, которые равны сумме двух своих соседей. Первый и последний элементы имеют только по одному соседу, поэтому искомыми быть не могут.
- На вход программе подается последовательность чисел от 1 до 9, заканчивающаяся нулем. Всего будет введено не более 100 чисел. Подсчитайте в этой последовательности количество единиц, количество двоек, количество троек и т.д. и выдайте результат.
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. Найдите два числа, произведение которых максимально. (*Вложенные циклы не используйте.)
- Дано N. Сгенерировать и вывести на экран массив случайных чисел в диапазоне [-100, 100]. После этого во второй строке распечатайте только те значения элементов массива, которые встречаются в нем ровно один раз. Элементы следует распечатывать в том порядке, в котором они встречаются в массиве.
Комментариев нет:
Отправить комментарий