Программирование

Тип работы: Все Диплом Задача Курсовая работа Лабораторная работа
Язык программирования: Все Bash C C# C# ASP .NET C++ Delphi Fortran Java JavaScript Pascal ABC Turbo Pascal VBA Ассемблер
Блок-схема: Все Есть Нет
Сортировать по умолчанию цене названию
  • Курсовая работа на C++  с  применением STL методов

    Разработать программу хранящую данные о студентах и их успеваемости по каждой дисциплине. Должны быть реализованы следующие функции:

    - добавление, редактирование, удаление информации о студентах;

    - добавление, редактирование, удаление информации о дисциплинах;

    - поиск информации по фамилии студента, с выводом всех его оценок по дисциплине;

    - поиск информации по дисциплине с выводом количества студентов, изучающих данный предмет;

    - поиск информации по оценкам.

  • Курсовая на C++, Класс для определения двумерных массивов целых чисел

    Создать программу на языке С++ (в среде Microsoft Visual Studio или другой) для решения определенной задачи.

    Составить описание класса для определения двумерных массивов целых чисел (матрицы). Предусмотреть методы для создания и уничтожения объектов, а также вычисление обратной и транспонированной матриц.

    Написать программу, демонстрирующую работу с этим классом. Программа должна:

    – содержать меню, позволяющее осуществить проверку всех методов класса;

    – обеспечивать запрос и ввод с клавиатуры необходимых входных данных, а также контроль возможных ошибок при вводе.

    Самостоятельно предложить производный класс, образуемый методом наследования от исходного класса и содержащий дополнительные функциональные возможности обработки информации, хранящейся в полях (атрибутах) исходного класса.

  • Телефонный справочник, Pascal ABC

    Написать программу «Телефонный справочник». Программа должна хранить номера телефонов, ФИО и адрес. Должны быть предусмотрены ввод новых данных и редактирование имеющихся, поиск по ФИО, по номеру. При закрытии программы и ее повторном запуске информация должна сохраняться.

    Программа выполняет следующие действия:

    - ввод данных;

    - вывод всех данных;

    - поиск информации по названию Ф.И.О. и номеру телефона;

    - удаление по номеру телефона;

    - редактирование данных;

    - вывод на экран всей базы данных.

  • Реализация аркадной игры на Pascal

    Разработать игру «Лабиринт» предназначенную для развития мышления и внимания у детей младшего школьного возраста. Программа должна быть разработана в среде программирования Pascal ABC.

    Задачи, которые требуется реализовать:

    - реализацовать алгоритм генерирования лабиринта;

    - создание фиксированного входа/выхода из лабиринта;

    - управление сложностью лабиринта (реализация уровней в игре);

    - передвижение персонажа по лабиринту (стрелками клавиш);

    - возможность запустить игру заново после прохождения.

  • Шифрование / Дешифрование на JavaScript

    Цель данной работы - разработка приложения для шифрования текстовой информации.

    Задачи:

    - Реализация методов Шифрования/Дешифрования. (Метод Цезаря, XOR-шифрование, Ассиметричное шифрование)

    - Расчёт MD5 и SHA хэшей.

  • Сведения о выполненных экспериментах, на СИ

    Рассматривается модель определенного понятия проблемной области. Описание понятия представлено совокупностью свойств, в общем случае разнотипных. В области программной реализации модель понятия имеет вид структурного типа данных.

    Рассматривается набор экземпляров данного понятия с конечным количеством элементов. Требуется получить программную реализацию заданной обработки такого набора структурированных данных.

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

    Обработка должна быть реализована отдельной функцией. При этом вся необходимая для выполнения обработки информация должна передаваться в функцию через список аргументов. Результат обработки набора структурированных данных должен предаваться из функции также через список аргументов.

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

    Вариант:

    Рассматриваются сведения о выполненных экспериментах. Каждый эксперимент описывается следующим набором характеристик: название, экспериментатор, дата эксперимента, имя файла с результатами. Дата эксперимента записывается в формате гггг/мм/дд-чч.мм.сс Требуется выдать список названий экспериментов, выполненных в указанный интервал времени. Интервал времени задается начальной и конечной датами в формате записи даты в описании эксперимента.

  • Вычисление определенного интеграла методом Симпсона с визуализацией решения

    Составить программу для вычисления определенного интеграла методом Симпсона с визуализацией решения. Вид подынтегральной функции F(x) задать в отдельной функции, остальная часть программы не должна зависеть от конкретной функциональной зависимости. Исходными данными служат начальное и конечное значения переменной x и число интервалов разбиения либо погрешность вычисления интеграла.

    В программе предусмотреть выполнение следующих действий:

    1. Вывод результата.

    2. Вывод графика функции F(x) на заданном интервале.

    3. Графическую иллюстрацию процесса интегрирования.

  • Разработать класс CMatrix C++

    Разработать класс CMatrix для работы с квадратной матрицей, содержащей целые числа.

    Матрица содержит не более 10 строк и столбцов. Класс должен содержать следующие элементы.

    Поля (скрытые):

    - количество строк матрицы (или столбцов, раз она квадратная);

    - массив элементов матрицы размерностью 10*10.

    Методы:

    - конструктор по умолчанию, формирующий матрицу размером 10*10, заполненную нулями;

    - конструктор, формирующий матрицу заданных размеров, заполненную нулями;

    - конструктор, формирующий матрицу заданных размеров, заполненную случайными числами в заданном диапазоне (диапазон задается в виде двух значений – минимального и максимального);

    - конструктор-копировщик;

    - методы-функции для ввода значений матрицы с клавиатуры и для вывода матрицы на экран;

    - метод-функция для транспонирования матрицы (т.е. строки сделать столбцами);

    - методы-функции для вычисления суммы элементов на главной и побочной диагоналях (главная диагональ — от левого верхнего угла к правому нижнему, побочная – от прав. верхнего к левому нижнему)

    Реализовать для разработанного класса методы-операторы:

    +, -, * (плюс, минус, умножить) - для выполнения операций поэлементного суммирования, вычитания и умножений двух матриц одинакового размера;

    == (два знака равенства подряд) - для сравнения двух матриц в условии, результатом этой операции должно быть любое ненулевое значение, если матрицы имеют одинаковые размеры и все соответствующие элементы равны между собой; в противном случае результату присвоить значение 0.

    Разработать программу, которая демонстрировала бы работоспособность всех методов данного класса.

  • Задача на С++

    Реализовать функцию в консольном приложении на языке С/С++, выполняющую поставленную задачу в соответствии с вариантом. При написании программы необходимо:

    − Написать код функции, принимающей в качестве аргументов и возвращающей все необходимые параметры, без использования глобальных переменных.

    − Протестировать функцию для всех возможных исключительных ситуаций, особое значение придается текстам на возникновение ошибок в ходе работы программы.

    − Из наименования функции и принимаемых аргументов должно быть ясно их назначение.

    − В работе должны использоваться только динамические массивы.

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

  • Методом Симпсона с визуализацией решения

    Составить программу для вычисления определенного интеграла методом Симпсона с визуализацией решения. Вид подынтегральной функции F(x) задать в отдельной функции, остальная часть программы не должна зависеть от конкретной функциональной зависимости. Исходными данными служат начальное и конечное значения переменной x и число интервалов разбиения либо погрешность вычисления интеграла.

    В программе предусмотреть выполнение следующих действий:

    1. Вывод результата.

    2. Вывод графика функции F(x) на заданном интервале.

    3. Графическую иллюстрацию процесса интегрирования.

  • Класс «Автомобиль» на С++

    Создать класс «Автомобиль». Разработать методы: ввод марки автомобиля, года выпуска, мощности двигателя, максимальной скорости (добавить по своему усмотрению), вывода на экран информации об автомобиле по запросу. Создать массив объектов класса Автомобиль. Посчитать среднюю скорость всех автомобилей. Найти автомобиль, развивающий максимальную скорость. Предусмотреть вывод соответствующей информации на экран.

  • Динамические массивы на Pascal

    Даны три одномерных массива a, b и c разного размера. Определить какой из массивов имеет наименьшее количество нулевых элементов.

    Требования к программе:

    - inc использовать нельзя;
    - размер и заполнение массивов вводится с клавиатуры или ввод информации должен быть из файла;

    - необходимо для решения использовать подпрограммы, нельзя совмещать решение и ввод или вывод, так же необходимо создать тип массиваж

    - не нужно фиксировать размер массива через const, его нужно вводить каждый раз.

  • Шифр цезаря на С

    Шифр цезаря на на языке С с поддержкой русского и английского языка. Требование к коду: должно работать на Unix системах.

  • Обработка матриц на СИ

    Общее задание

    Составить программу решения задачи. Все числовые значения должны вводиться в процессе исполнения программы. Размерность (единицы измерения) исходных значений должна быть сохранена.

    Задать двумерный массив размерности N x M натуральных случайных чисел из интервала (-10; 10). Предусмотреть автоматический и ручной способ ввода элементов массива. Вывести на экран в виде таблицы исходный массив и преобразованный с соответствующими заголовками.

    Индивидуальное задание

    1. Дана матрица размера N x M. Вывести номер ее последнего столбца, содержащего только положительные элементы. Если таких столбцов нет, то вывести 0.

    2. Дана квадратная матрица порядка М. Зеркально отразить ее элементы относительно главной диагонали матрицы.

    3. Дана матрица размера M x N. Продублировать столбец матрицы, содержащую ее минимальный элемент.

    4. В квадратной матрице найти транспонированную подматрицу размерности k x h, расположенную в верхнем левом углу.

  • Задача на С и С#

    Задачи на использование двоичных и текстовых файлов. Условие вида "дан файл" означает, что пользователем вводится количество элементов и все элементы файла с клавиатуры. Осуществить ввод данных для файла, выполнить реализацию алгоритма обработки и создания нового файла, обеспечить вывод полученных результатов используя отдельные методы.

    При обработке исходного файла считать число элементов в нём неизвестным. Не допускается использование массивов для обработки всего файла. Для решения задачи предварительно составляется блок-схема.

    Индивидульное задание: Пользователь вводит последовательно все элементы матрицы m*n. Массивы использовать нельзя. Записать все числа в текстовый файл по строкам. Прочитать их оттуда и вывести на экран.

  • 6 задач на Java

    Задание 1

    Инициализируйте переменные a, b, с, d присвойте им целочисленные значения (типа int) и выполните вычисление выражений, используя арифметические операторы, тернарный оператор (проверяя делитель):

    (a+b)/(2*a-c)

    (a%b)/(d-1)

    Задание 2

    Общий заработок бригады рабочих составил n руб (значение n вводится с клавиатуры). Его нужно разделить между 5 рабочими. При этом учитывая, что процент выполненных работ каждого рабочего от общего объема работ (100%) разный (например, 1 рабочий выполнил 18% работ, второй – 17% и т.д.). Процент выполненных работ для каждого рабочего водится с клавиатуры. Найдите заработок каждого рабочего.

    Задание 3

    Создайте массив arr1, состоящий из n целых чисел. Размерность массива n и значения элементов массива должны вводиться с клавиатуры. При вводе должна выполняться проверка возможности считать с потока ввода int. Получите массив arr2, значения элементов которого равны квадратам соответствующих значений массив arr1. Выведете элементы массивов на консоль в одну строку.

    Задание 4

    Необходимо оклеить обоями стены в комнате. Длина стен равна a м, а высота b м. Рулон обоев имеет длину c м и ширину d м. Сколько будут стоить обои для всей стены, если цена одного рулона k руб. Создать программу, выполняющую расчет стоимости. Значения a, b, c, d, k должны вводиться с клавиатуры.

    Задание 5

    Создайте абстрактный класс MathAbstract. В нем создайте два метода:

    - operMath() без реализации с параметрами int a, int b;

    - show() без параметров, реализующий вывод строки на экран «Иллюстрация работы с абстрактным классом: арифметические операции».

    Создайте неабстрактные класс MathReal01 – MathReal05 – производные от MathAbstract. В них выполните реализации метода operMath(). Реализации соответствуют выполнению основных арифметических операций (сложение, вычитание, умножение, деление, возведение в степень).

    В основной программе выполните реализацию: вызов всех методов класса MathAbstract и выполнение соответствующих операций. Значения a, b вводятся с клавиатуры.

    Задание 6

    Структура данных. Создать класс, спецификация которого приведена ниже. Определить конструктор и методы setТип(), getТип(), printInfo().

    Реализация. Реализовать класс в основной программе. В основной программе создать списочный массив объектов. Задать критерий (критерии) выбора данных и вывести эти данные на консоль.

    Спецификация. Car: id, Марка, Модель, Год выпуска, Цвет, Цена, Регистрационный номер.

    Создать массив объектов. Вывести:

    1) список автомобилей заданной марки;

    2) список автомобилей заданной модели, которые эксплуатируются больше n лет;

    3) список автомобилей заданного года выпуска, цена которых больше указанной.

    Продемонстрировать подход, в котором реализуется инкапсуляция и обеспечивается модульность.

  • Windows Form - приложение на C++

    Создать Windows-приложение, которое по запрашиваемому количеству строк и столбцов формирует случайным образом двумерный массив А, подсчитывает сумму элементов не кратных 3 по строкам (для нечетных вариантов) или по столбцам (для четных вариантов) получившейся матрицы, полученные результаты заносит в одномерный массив В и сортирует массив В методом пузырька.

  • Windows - приложение на C++

    Элементы массива задать по следующему правилу: введенный параметр является первым элементом массива, последние три элемента в пять раза больше своих индексов, остальные элементы задаются с помощью счетчика случайных чисел.

    Если максимальный элемент вектора из 18 элементов расположен до минимального отсортировать по возрастанию элементы, расположенные после него, иначе до него. Минимальный элемент увеличить в десять раз.

  • Сравнение алгоритмов сортировки, Java

    Реализовать программу, реализующую простейший метод сортировки массивов:

    - сортировку обменом (метод пузырька);

    - сортировку выбором.

    Каждый метод реализуется своей подпрограммой, добавляемой в основную программу по мере разработки. Кроме того, необходима вспомогательная подпрограмма генерации исходного массива случайных целых чисел с заданным числом элементов (не более 10 000) и выводом этого массива на экран .

    Каждый исходный массив должен обрабатываться всеми подпрограммами сортировки с подсчетом и выводом фактического числа выполненных сравнений и пересылок. Поскольку каждый из универсальных методов выполняет сортировку “на месте”, т.е. изменяет исходный массив, то для наглядности работы можно передавать в подпрограмму сортировки копию исходного массива, объявив его как параметр-значение.
    После завершения разработки программы необходимо выполнить всеми методами сортировку нескольких массивов с разным числом элементов (10, 100, 1000, 10000) и провести сравнительный анализ эффективности рассматриваемых методов.

    Главная программа должна реализовать диалог с пользователем для выбора метода сортировки.

    Задание 2 Оформить программу, реализующую метод быстрой сортировки массивов.

    Метод реализуется в виде подпрограммы. Исходный массив должен обрабатываться подпрограммой сортировки с подсчетом и выводом фактического числа выполненных сравнений и пересылок. Выполнить сортировку нескольких массивов с разным числом элементов (10, 100, 1000, 10000).

  • Метод хеш-поиска с разрешением конфликтов методом цепочек

    Реализовать программно метод хеш-поиска с разрешением конфликтов методом цепочек.

    Исходные ключи – любые слова (например – фамилии). Размер хеш-таблицы должен задаваться в программе с помощью константы m. Хеш-функция – такая же, что и в задании 1, но делить надо на константу m. В случае возникновения конфликта при попытке размещения в таблице нового ключа этот ключ добавляется в конец вспомогательного списка. Это требует включения в каждую ячейку хеш-таблицы двух указателей на начало и конец вспомогательного списка.

    Программа должна выполнять следующие действия:

    - добавление нового ключа в таблицу с подсчетом сделанных при этом сравнений;

    - поиск заданного ключа в таблице с подсчетом сделанных при этом сравнений;

    - вывод текущего состояния таблицы на экран;
    - удаление заданного ключа из таблицы.

    Алгоритм удаления:

    - вычислить хеш-функцию и организовать поиск удаляемого элемента в таблице если удаляемый элемент найден в ячейке таблицы, то эта ячейка либо становится пустой (если связанный с ней список пуст), либо в нее записывается значение из первого элемента списка с соответствующим изменением указателей;

    - если удаляемый элемент найден в списке, то производится его удаление с изменением указателей.

    После отладки программы необходимо выполнить ее для разных соотношений числа исходных ключей и размерности таблицы: взять 20 ключей и разместить их поочередно в таблице размерности 9, 17 и 23. Для каждого случая найти суммарное число сравнений, необходимое для размещения ключей и их поиска. Сделать вывод о влиянии размерности таблицы на эффективность поиска.