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

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

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

    Программа должна сохранить этот текст в динамический массив строк и оперировать далее только с ним.

    Программа должна найти и удалить все повторно встречающиеся предложения (сравнивать их следует посимвольно, но без учета регистра).

    Далее, программа должна запрашивать у пользователя одно из следующих доступных действий (программа должна печатать для этого подсказку. Также следует предусмотреть возможность выхода из программы):

    1) Необходимо во всем тексте найти все вхождения слова "dopsa" и для каждого вхождения вывести номер предложения. позицию слова в предложении, и слова, которые идут перед ним и после него.

    2) В каждом предложении необходимо удалить каждый третий разделитель слов.

    3) Удалить все предложения, в которых у каждого слова совпадают первые 3 символа.

    4) Отсортировать все предложения по уменьшению длины максимально повторяющейся последовательности в них. Например, для предложения "арр1е grap" длина последовательности равна 2, а для предложения "Mammoth is a mammal" длина последовательности равна 4.

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

    Все подзадачи. ввод/вывод должны быть реализованы в виде отдельной функции.

  • Курсовая: Программа для автоматического тестирования знаний на языке C#

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

    В соответствии с данной целью были поставлены следующие задачи:

    -       проанализировать предметную область;

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

    -       осуществить проектирование и разработку приложения.

  • Курсовая: программа для перевода числовой записи суммы в рублях в словесную на языке программирования Java

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

    Задачи:

    -                   анализ и выбор языка программирования;

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

    -                   получение практического опыта по разработке прикладных программ;

    овладение функционалом и инструментарием разработки на языке программирования высокого уровня.

  • Курсовая: Разработка программы «Расчет стоимости покупки»

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

  • Курсовая: рекурсивные и итерационные алгоритмы

    Объектом исследования является рекурсивные и итерационные алгоритмы и их сравнение.

    Целю работы является сравнение рекурсивные и итерационные алгоритмы и рассмотрение примеров их реализации на одном из языков программирования.

    Задачи:

    -                   рассмотреть понятие рекурсии и привести примеры ее реализации;

    -                   рассмотреть понятие итерации и привести примеры ее реализации;

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

  • Курсовая: создание динамической библиотеки на Delphi

    Создать программный модуль, содержащий описание динамической библиотеки, обладающей следующими подпрограммами:

    – организация динамической структуры данных типа очередь;

    – создание очереди, уничтожение очереди, добавление элемента, исключение элемента, определение текущего числа элементов в очереди, очистка очереди.

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

  • Курсовая: Сравнение алгоритмов сортировки вставками и выбором

    Курсовая на тему "Сравнение алгоритмов сортировки вставками и выбором" с применением библиотеки (DLL) 

    Программа написанна на Delphi 7

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

  • Лабораторные работы на Pascal

    Лабораторная работа № 1

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

    Лабораторная работа № 2

    Задание: Составить блок-схему и программу для выполнения действий по индивидуальному заданию, используя оператор выбора. Во всех вариантах предусмотреть проверку корректности исходных данных. При вводе некорректных данных должно выводиться сообщение об ошибке.
    Вариант: Дан номер месяца (1 – январь, 2 – февраль, ...). Вывести название соответствующего времени года («зима», «весна» и т. д.).

    Лабораторная работа № 3

    Задание: Составить блок-схему и программу для заполнения таблицы значений функции y = f(x) на отрезке с указанным шагом изменения аргумента. Вид функции задается в лабораторной работе № 1. Значение функции выводить с точностью до тысячных долей.

    Лабораторная работа № 4

    Задание: Составить блок-схему и программу табулирования двух функций S и Y в заданном диапазоне изменения аргумента x. Здесь n - число слагаемых суммы S.

    Лабораторная работа № 5

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

    Вариант: Скорректировать массив A=(a1, а2, ..., аn), переписав в начало массива группу, содержащую наибольшее число подряд идущих положительных элементов. Элементы массива вводить с клавиатуры.

    Лабораторная работа № 6

    Задание: составить программу заданной обработки матрицы целых чисел. В процессе обработки использовать перестановки элементов внутри массива, не создавая новых массивов. Заполнение исходного массива организовать с помощью генератора случайных чисел. Исходный и обработанный массив выводить на экран. Во всех вариантах работать с ЗАДАНОЙ матрицей, не создавая дополнительных массивов и матриц (кроме случаев, где это предусмотрено вариантом задания).

    Вариант: Даны матрица А(n×(n+1)) и два одномерных массива X=(x1, ..., xn+1) и Y=(y1, ..., yn+1), а также натуральные числа р, q. Образовать новую матрицу размера (n+1)×(n+2) вставкой после строки с номером р матрицы А новой строки с элементами x1,x2, ..., xn+1 и последующей вставкой после столбца с номером q нового столбца с элементами y1,y2, ..., yn+1.

    Лабораторная работа № 7

    Задание: составить программу заданной обработки массива слов. В процессе обработки использовать множественных тип данных. Заполнение исходных данных – с клавиатуры. Исходный и обработанный массив выводить на экран.

    Вариант: Дан массив из n слов произвольной длины (длина слова не превышает 80 символов). Символами могут быть только заглавные латинские буквы. Найти и вывести все гласные буквы (без повторений), которые встретились в двух самых длинных словах.

  • Линейный односвязный список на Pascal

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

    Структура записи:

    - номер поезда (строка, длиной не более 4-х символов);

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

    - время отправления (в формате чч:мм);

    - время в пути (в часах);

    - наличие билетов (целое число);

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

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

    Определить общее количество билетов до заданной станции (название станции запрашивается в диалоге).

    Добавить в список 2 узла: 1- в начало списка, 2 – после узла с максимальным временем пути. Вывести список после добавления узлов.

    Удалить из списка все узлы, соответствующие рейсам, на которые нет билетов. Вывести список после удаления узлов.

    Удалить список.

    Все запросы на ввод данных и все выводы данных должны сопровождаться соответствующими текстовыми пояснениями.

  • Максимальный из элементов массива с четными индексами

    Зданием на курсовую является: В массиве найти максимальный элемент с четным индексом.

    Другая формулировка задачи: среди элементов массива с четными индексами, найти тот, который имеет максимальное значение.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  • Несколько задач на С++

    Задача 1

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

    Написать программу:

    1. Вводит значение для поля объекта первого типа.

    2. Создает объект первого типа.

    3. Вводит значения полей для полей объекта второго типа.

    4. Создает объект второго типа.

    5. Определяет значения полей объекта второго типа.

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

    7. Выводит полученный результат.

    Входные данные

    Первая строка: целое число в десятичном формате Вторая строка: целое число в десятичном формате˽целое число в десятичном фор-мате

    Выходные данные

    Первая строка, с первой позиции: max = целочисленное значение в десятеричном формате.

    Задача 2

    Разработать объект, который обладает следующей функциональностью: - В конструкторе вводит количество элементов целочисленного массива. - В конструкторе создает целочисленный массив заданным количеством элементов. - Конструкторе определяет значения элементов массива. Значение каждого элемента равно квадрату индекса элемента. - Выводит значения элементов массива в обратном порядке. Необходимые свойства объекта определяется разработчиком. Количество элементов массива принадлежит интервалу от 5 до 20. Написать программу: 1. Создает объект посредством оператора new. 2. Выводит значения элементов массива в обратном порядке. 3. Удаляет объект посредством оператора delete.

    Входные данные

    Первая строка (количество элементов массива): целое число в десятичном формате

    Выходные данные

    Первая строка, с первой позиции: целочисленные значения элементов массива в десятеричном формате, каждое значение занимает 5 позиций.

    Задача 3

    Создать объект, который сообщает об отработке конструктора и деструктора. У объекта нет свойств и функциональности. Написать программу, которая: 1. Создает объект.

    Входные данные

    Отсутствует.

    Выходные данные

    Первая строка, с первой позиции: Constructor Вторая строка, с первой позиции: Destructor

    Задача

    Создать класс для объекта стек. Стек хранит целые числа. Имеет характеристики: наименование (строка, не более 10 символов) и размер (целое). Размер стека больше или равно 1.

    Функционал стека:

    -    добавить элемент и вернуть признак успеха (логическое);

    -    извлечь элемент и вернуть признак успеха (логическое);

    -    получить имя стека (строка);

    -    получить размер стека (целое);

    -    получить текущее количество элементов в стеке (целое).

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

    В основной программе реализовать алгоритм:

    1. Ввести имя и размер для первого стека.

    2. Создать объект первого стека.

    3. Ввести имя и размер для второго стека.

    4. Создать объект второго стека.

    5. В цикле:

    5.1. Считывать очередное значение элемента.

    5.2. Добавлять элемент в первый стек, при переполнении завершить цикл.

    5.3. Добавлять элемент во второй стек, при переполнении завершить цикл.

    6. Построчно вывести содержимое стеков.

      Входные данные

      Первая строка:

      «имя стека 1» «размер стека»

      Вторая строка:

      «имя стека 2» «размер стека»

      Третья строка:

      Последовательность целых чисел, разделенных пробелами, в количестве не менее чем размер одного из стеков + 1.

      Выходные данные

      Первая строка:

      «имя стека 1» «размер»

      Вторая строка:

      «имя стека 2» «размер»

      Третья строка:

      «имя стека 1» «имя стека 2»

      Каждое имя стека в третьей строке занимает поле длины 15 позиции и прижата к левому краю.

      Четвертая строка и далее построчно, вывести все элементы стеков:
      «значение элемента стека 1» «значение элемента стека 2»

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

      Каждое значение занимает поле из 15 позиции и прижата к правому краю.

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

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

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

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

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

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

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

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

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

    2. Пара задач на Fortran F90

      Задача 1

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

      Задача 2

      Дана текстовая строка из слов. Слово – набор либо буквенных символов либо цифирных (jjj hgh 567 jj 89 ggikgg 56 … ), разделенных одним либо более пробелами. Определить количество изображённых чисел в строке.

      Задача 3

      Дана текстовая строка из 50 символов, состоящая из одних целых положительных чисел, разделённых одним или более пробелами. Напечатать эти числа в столбик.

    3. Пара задач на СИ

      Задание 1

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

      С использованием массива.

      С использованием указателей.

      Задание 2

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

    4. Приложение «Эллипс». Графика на С++

      Разработка графического интерфейса приложения «Эллипс». В окне приложения отобразить эллипс, высоту, ширину и цвет которого задавать в диалоговой панели.

    5. Программа в Turbo Pascal на тему обработки двумерных массивов

      Ввести с клавиатуры двумерный массив целых чисел размером 7*4. Найти наибольший элемент двумерного массива. Удалить строку, содержащую элемент с максимальным значением.

    6. Программа для фирмы по торговле недвижимостью

      Фирма по торговле недвижимостью «Ваш дом» заказала логотип и ролик, рекламирующий ее деятельность.  В фирме накапливается информация о имеющихся предложениях: близ расположенное метро, улица, тип дома (кирпич, монолит, панель), метраж квартиры, метраж кухни, количество комнат. Программа по запросу с клавиатуры подбирает три предложения на квартиры в указанном районе, с указанным количеством комнат с максимально возможной площадью, расположив их в порядке убывания площади кухни.

    7. Программа на СИ

      Написать программу на языке Си, реализующую следующие функции:

      1. Чтение бинарных данных из файла (входной сигнал, тип float).

      2. Запись бинарных данный в файл (выходной сигнал, тип float).

      3. Динамическое выделение памяти для матриц (функция malloc).

      4. Расчет произведения двух матриц.

      5. Запись текстового файла, содержащего исходные матрицы и их произведение.

      В программе должен быть реализован разбор аргументов командой строки(argc ,*argv). Пример запуска программы:

      ./mult-i input1.bin input2.bin-o output.txt, где input1.bin-бинарный файл с первой матрицей;

      input2.bin - бинарный файл со второй матрицей;

      output.txt - текстовый файл для записи матриц и их произведения.

      Для проверки работы программы реализовать возможность генерации матриц с заданной размерностью  m на n (заполнить случайными числами):

      ./mult-g input1.bin-s 10 15,

      ./mult-g input2.bin-s 15 20.

      Реализовать проверку согласованности форм матриц (число столбцов первой матрицы равно числу во второй матрице).