Примеры решения задач на тему «Классы: объекты, структуры, массивы, строки …»

Как возводить число в квадрат. Численный эксперимент

Часто, не задумываясь, мы используем стандартные функции, например, вычисляя квадрат числа X, мы пишем z = Math.Pow(X,2). Другой вариант: z = X * X. Какой из них быстрее и во сколько раз? Напишем простенькую программу, использующую класс DateTime. Чтобы разница была заметна, выполним возведение в квадрат N = 2 000 000 000 раз. Тогда: using …

Как возводить число в квадрат. Численный эксперимент Читать далее »

Структура ИЛИ класс. Пример 1

В статье «Классы или структуры, в чем отличия» приведены небольшие примеры, которые, как показал опыт общения с начинающими программистами, недостаточны для более глубокого понимания этих различий. Поэтому будет полезно рассмотреть еще примеры.

Три «кита» ООП. Пример 2

В предыдущем примере были созданы три класса, определяющих три варианта описания одной семьи. Создание популяции (класс Population) на базе первого класса Объекты-популяции должны содержать информацию об n семьях (n=0, 1, 2, … ). Кроме того, необходимо предусмотреть различные способы заполнения массива и вывода данных.

Три «кита» ООП. Пример 1

Как думает программист, использующий технологию ООП ? Зачем нужны инкапсуляция, наследование и полиморфизм? Пусть требуется создать программу, обрабатывающую данные о семьях, имеющих детей. 1. Начнем с традиционной семьи (мать-отец-ребенок). а) cоздадим класс MFC, содержащий следующие поля — имена матери, отца и ребенка, назовем эти поля соответственно: mother, father, child; б) в классе необходим конструктор MFC(string …

Три «кита» ООП. Пример 1 Читать далее »

Примеры решения задач на тему «Классы: объекты, структуры, массивы, строки …»

Содержание подраздела: Три «кита» ООП. Пример 1 Три «кита» ООП. Пример 2 Структура ИЛИ класс. Пример 1 Задача «Найти среднее значение, минимальный и максимальный элемент массива» Задача «Сортировка данных» Задача «Линейный и бинарный поиск» Задача «Пифагоровы треугольники» Задача «Простые числа» Задача «Восемь ферзей» Задача «Поиск наиболее длинной последовательности повторяющихся чисел» Задачи для самостоятельного решения. Массивы …

Примеры решения задач на тему «Классы: объекты, структуры, массивы, строки …» Читать далее »

Задачи для самостоятельного решения. Массивы и строки

Предлагаю для самопроверки решить несколько простых задач, обычно предлагаемых студентам-первокурсникам, которые только начинают изучать программирование. Задачи повышенного уровня сложности решайте после проработки примеров решения задач по теме «Массивы». Некоторые из них уже решаются новичками, см. раздел также Примеры решения задач начинающими программистами — соавторами сайта с комментариями.

Задача «Восемь ферзей»

Постановка задачи Можно ли поставить на пустой шахматной доске восемь ферзей так, чтобы ни один из них не «атаковал» другого, то есть никакие два ферзя не  стояли бы на одном и том же столбце или на одной и той же строке или на одной и той же диагонали? Требуется определить максимально возможное число расстановок 8 …

Задача «Восемь ферзей» Читать далее »

Задача «Простые числа»

Напомним, что простое число — натуральное (целое положительное) число, имеющее ровно два различных натуральных делителя — единицу и самого себя: 2, 3, 5, 7, 11, 13, … . Зачем нужны простые числа? Первая причина имеет теоретическое значение. Наличие большого списка простых чисел позволяет проверять теоремы, которые еще не доказаны. Вторая, более практическая причина, связана с …

Задача «Простые числа» Читать далее »

Задача «Пифагоровы треугольники»

В теории чисел теорема Пифагора стала источником плодотворной идеи: найти целочисленные решения алгебраических уравнений. Пифагорова тройка — это набор целых чисел a, b и c, таких что:  a2 + b2 = c2. Геометрически такая тройка определяет прямоугольный треугольник с целочисленными сторонами. Самая маленькая гипотенуза пифагоровой тройки равна 5. Другие две стороны этого треугольника равны 3 …

Задача «Пифагоровы треугольники» Читать далее »

Задача «Линейный и бинарный поиск»

Постановка задачи Задан массив A из N элементов одного типа. Это могут быть числа, строки, структуры. Число N может быть достаточно велико (например, сотни миллионов). Требуется найти расположение заданного элемента в массиве по запросу b, то есть найти такое k, для которого A[k]=b.  Массив A может быть неупорядоченным, либо упорядоченным по возрастанию/убыванию значений элементов. Для …

Задача «Линейный и бинарный поиск» Читать далее »

Пролистать наверх