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

Тип работы: Все Задача Курсовая работа Лабораторная работа Ответы на вопросы
Язык программирования: Все Bash Basic C C# C# ASP .NET C++ Delphi Fortran Free Basic HTML Java JavaScript Pascal Pascal ABC Turbo Pascal VBA Visual Basic Ассемблер
Блок-схема: Все Есть Нет
Сортировать по умолчанию цене названию
  • Работу можно выполнять на встроенном ассемблере системы программирования Turbo Pascal, однако, рекомендуется на автономном (отдельном или внешнем) ассемблере.
    Выбрать простую математическую задачу, легко разрешимую на Паскале, например Y = A * X2. Задачу согласовать с преподавателем.
    Написать программу на ассемблере, например, для указанной выше задачи: 
    Вариант 2 - (A * X^4 + B * X^3 + C * X^2 + D * X) div E 
    Вариант 2 - 9*A + 7*B + 2*C

  • База данных "Фонотека" на Pascal

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

  • Базовый веб-браузер

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

    Web-браузер

    Цель работы: Разработать браузер, выполняющий базовые функции, используя язык программирования C#.

    Задание:

    Разработать браузер, реализующий функции:

    • Назад, Вперед, Домой;
    • Добавления и удаления страницы из «Избранного»;
    • Хранения истории посещений;
    • Добавления/удаления новой вкладки.

    Лабораторная работа считается защищенной, если:

    • приложение содержит кнопки Назад, Вперед, Домой с соответствующим функционалом;
    • приложение умеет добавлять/удалять страницы из «Избранного»;
    • приложение хранит историю посещений с URL-адресом страницы и датой/временем посещения;
    • приложение имеет приемлемый для браузера интерфейс с возможность добавления/удаления вкладок;
  • Бинарное дерево на Java

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

    - в прямом порядке.

    - в симметричном порядке.

  • Битовые операции. СИ

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

  • Написать две программы в консоли, языке java:                                                                         20:5'

    1   Программа просит пользователя ввести число любое ("введите число:"), далее, а на выходе мы должны получить ряд простых чисел (простые это те которые делятся на 1 и на самих себя)

    Например ввел 100 и из 100 программа отбирает эти простые числа и выводит их пользователю!

    2     Программа просит пользователя ввести строку (любую) ("введите строку") и из

    этой строки программа должна определить есть в ней полиндром или нет!

    Написать пользователю есть полиндром или полиндром отсутствует в данной строке!

  • Выполнить задание на C++

    Практическая работа № 5

    Алгоритм поиска в отсортированных массивах

     

    Постановка задачи

    Составить программу поиска заданного элемента по ключу в одномерном целочисленном массиве A[n], используя алгоритм согласно варианту индивидуального задания. Провести тестирование программы на исходном массиве, сформированном вводом с клавиатуры. Рабочий массив A сформировать с использованием генератора псевдослучайных чисел. Провести контрольные прогоны программы для размеров массива n = 100, 1000, 10000, 100000 и 1000000 элементов в трех режимах: на массивах, строго убывающих, строго возрастающих и случайных чисел и сделать вывод о зависимости (устойчивости) алгоритма от исходной упорядоченности массива.

    Провести эмпирическую (практическую) оценку вычислительной сложности алгоритма, для чего предусмотреть в программе подсчет фактического количества операций сравнения Сф.

    Полученные результаты свести в сводную таблицу. Построить в одной координатной плоскости графики зависимости теоретической О(n)=f(С(n)) и эмпирической (Сф(n)) вычислительной сложности алгоритма от количества элементов в массиве n.

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

    Провести анализ полученных результатов. Сделать выводы о проделанной работе, основанные на полученных результатах.

     

    Сводная таблица результатов

    n

    f(C)

    100

     

     

    1000

     

     

    10000

     

     

    100000

     

     

    1000000

     

     

     

    Варианты индивидуальных заданий

    Алгоритм

    5.1

    Двоичного поиска

    5.2

    С использованием бинарного дерева поиска

    5.3

    Фибоначчиего поиска 

    5.4

    Поиска хэшированием

    5.5

    Поиска по бору

    5.6

    Поиска Рабина-Карпа

     

    Практическая работа № 6

    Алгоритмы поиска строк в тексте

     

    Постановка задачи

    Составить программу поиска первого вхождения заданной строки P длиной m символов в тексте S, размером n символов, используя алгоритм согласно варианту индивидуального задания. Уточнение: настоящая задача поиска сводится к нахождению в тексте (массиве) S индекса, начиная с которого строка P полностью совпадает с фрагментом текста S. В частном случае заданная строка может отсутствовать в тексте.

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

    Рабочий текст (массив) сформировать из произвольного текстового файла, например, романа Л.Н. Толстого «Война и мир». Провести контрольные прогоны программы как минимум на трех текстовых файлах различной длины.

    Провести эмпирическую (практическую) оценку вычислительной сложности алгоритма, для чего предусмотреть в программе подсчет фактического количества операций посимвольного сравнения Сф и сдвигов подстроки Мф относительно текста.

    Полученные результаты свести в сводную таблицу. Построить в одной координатной плоскости графики зависимости теоретической О(n)=f(С+М) и эмпирической (Сф+Мф) вычислительной сложности алгоритма от размера текста (количества элементов в массиве) n.

    Сравнить вычислительную сложность алгоритма с вычислительной сложностью алгоритма прямого поиска строки.

    Провести анализ полученных результатов. Сделать выводы о проделанной работе, основанные на полученных результатах.

     

    Сводная таблица результатов

    n

    f(C+М)

    Cф+Мф

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Варианты индивидуальных заданий

    Алгоритм

    6.1

    Прямого поиска строки

    6.2

    Кнута-Морриса-Пратта

    6.3

    Бойера-Мура 

    6.4

    Поиска хэшированием

     

    Практическое задание №7

    Линейные динамические списки

    1. 1.              Однонаправленные списки

    Постановка задачи

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

    Реализуйте программу решения задачи варианта.

    Вариант 1

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

    Вариант 2

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

    Вариант 3

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

    Вариант 4

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

     

    1. 2.    Двунаправленные списки

    Постановка задачи

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

    Требования к разработке.

    1. Разработать структуру узла списка, структура информационной части узла определена вариантом. Для определения структуры узла списка, используйте тип struct. Сохраните определение структуры узла в заголовочном файле.
    2. Разработайте функции для выполнения операции над линейным динамическим списком:
    • вывод списка в двух направлениях
    • поиск узла с заданным значением (операция должна возвращать указатель на узел с заданным значением).
    1. Дополнительные операции над списком, указанные вариантом оформите в виде функций и включите в отдельный файл с расширением cpp. Подключите к этому файлу заголовочный файл с определением структуры узла.
    2. Разработайте программу, управляемую текстовым меню, и включите в меню  демонстрацию выполнения всех операций задания и варианта.
    3. Проведите тестирование операций.
    4. Оцените сложность алгоритма первой дополнительной операции для реализации линейного списка:
    • на линейном динамическом списке
    • на одномерном массиве.

     

    Примечание. В определении информационной части узла варианта, подчеркнутое поле считать полем ключа.

    Варианты

    Вариант

    Тип информационной части узла списка

    Дополнительные Операции

    1

    Номер зач. книжки, Номер группы, Оценка.

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

    Удалить узлы с указанным номером группы.

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

    2

     

     

    Номер телефона (из 7 цифр), время разговора (целое число), номер телефона вызываемого абонента.

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

    Удалить последний узел  с заданным значением телефона.

    Подсчитать суммарное время разговора с заданного телефона.

    3

    Номер абонемента, Название книги, дата выдачи, дата возврата, дата фактического возврата.

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

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

    Удалить узлы, в которых дата возврата и дата фактического возврата совпадают.

    Определить количество книг, заданного абонемента.

    4

    Номер мед. полиса, Дата обращения, Код диагноза (число).

    Вставка нового узла перед первым узлом с заданным значением Мед. полиса, если такого нет, то узел вставить в конец списка.

    Удаление из списка всех узлов с заданным значением Кода диагноза.

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

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

    5

    Номер счета в банке, дата, вид операции (приход или расход), сумма вклада.

    Вставка нового узла перед первым узлом.

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

    Создать новый список из исходного, которого будет содержать остаток по всем видам операций одного счета, указав вид операции – приход, и текущую дату. 

    6

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

    Вставить новый узел после последнего узла с заданным номером автобуса.

    Удалить все узлы заданного автобуса.

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

     

     

  • Оператор цикла.

    2.14 Программа. Даны натуральное n и n вещественных пар (x,y). Рассматривая пары (x,y) как координаты точек на плоскости, определить радиус наименьшего круга ( с центром в начале координат ), внутрь которого попадают все эти точки.

    2.20 Не используя стандартные функции (за исключением abs), вычислить с точностью  eps>0:

    Д)  y=arctgx=x - x^3/3 + x^5/5 - ... + (-1)^n*x^(2n+1)/(2n+1) + ... ( abs(x)<1 );

    Регулярные типы: векторы.

    3.2 Для решения каких из следующих задач нужны массивы, а в каких задачах можно обойтись и без них?

    Б) Дано 50 чисел. Определить, сколько среди них отличных от последнего числа.

    3.10. Упорядочить массив Х по возрастанию ( т.е. переставить его элементы так, чтобы для всех k выполнялось x(k)<=x(k+1) ), используя следующий алгоритм сортировки ( упорядочения ):

    А) СОРТИРОВКА ВЫБОРОМ: отыскивается максимальный элемент массива и переносится в конец массива; затем этот метод применяется для ко всем элементам, кроме последнего ( он уже находится на своем окончательном месте), и т.д.

    Регулярные типы: матрицы.

    Программа. Определить, является ли заданная целая квадратная матрица10-го порядка ортонормированной, т.е. такой, в которой скалярное произведение каждой пары различных строк равно 0, а скалярное произведение каждой строки на себя равно 1.

     

     

     

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

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

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

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

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

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

  • Генератор надежных паролей, Delphi

    Функционал программы генерирования паролей:

    1. Пользователь вводит критерии для формирования пароля:

    - Длину пароля (n);

    - Выбирает допустимые наборы символов.

    2. Программа из доступных символов произвольно выбирает n - е количество символов и отображает пользователю.

  • Две задачи на Pascal

    Задача 1

    Дан файл SCHOOL, в котором содержится информация о школьниках:

    1) Ф.И.О.

    2) год рождения, месяц, число

    3) оценки экзаменов

    а) отсортировать записи по возрастанию среднего экзаменационного балла;

    б) по запросу по Ф.И.О. - выдать средний балл;

    в) распечатать ведомость школьников со средним баллом меньше 3.

    Задача 2

    Построить график функции y(x) и таблицу значений y(x) с шагом измерения аргумента h.

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

    y = x 3 - 2x 2 +1 , h=0.02

  • Две задачи на С++

    Задание 1

    Создать шаблонный класс матриц NхN. Шаблонный класс должен содержать:

    1. Конструкторы (без параметров, с параметрами, копирования), деструктор, оператор присваивания.

    2. Перегруженный метод det ().

    3. Перегруженные операторы – =, –, * =, *, <<, >>.

    Методы и операторы класса должны работать как для неконстантных, так и для константных объектов.

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

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

    Задание 2

    Напишите программу, которая вычисляет производную функции f(x) = sin(x) численно и аналитически и выводит результаты в текстовый файл в четыре колонки: аргумент, значение функции, значение производной (численное), значение производной (вычисленное аналитически). Между колонками должен быть минимум один пробел. Аргумент функции изменяется в диапазоне [0, 4π] с шагом 1 ∙ 10-1.

  • Две задачи по информатике
    1. Основной поток создает другой поток, передавая ему параметр. Параметр может принимать два значения: 0 или 1. Если параметр равен 1, то второй поток создает файл размером 10 Кб.
    2. Создать два потока. Один создает файл нулевой длины и завершается, а другой дожидается появления файла, созданного первым потоком, записывает в файл 1000 случайных чисел типа DOUBLE и также завершается. После этого основной поток удаляет файл.
  • Динамические массивы на Pascal

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

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

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

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

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

  • Задан ряд последовательных натуральных чисел от M до N (M < N), из которого удаляют сначала все числа, стоящие на нечетных местах. Затем, из оставшегося ряда удаляют все числа, стоящие в нем на четных местах. Эти действия повторяют до тех пор, пока не останется одно число.
    Требуется написать программу, которая находит оставшееся число.
    Входные данные
    Входной файл INPUT.TXT содержит число M в первой строке и число N во второй (M < N < 109).

  • Тема: Простые вычисления по формулам.

    Задание. Составить программу для вычисления значения функции по формуле. Значение аргумента x=0,1.

  • Другое, Информатика С# билет

    Операторы цикла while, do while и for.

    Напишите программный код.

    Ввести массив из 13 действительных чисел. Найти максимальный элемент относительно первого элемента.Подсказка: Создать массив и заполнить его удобно заполнять с помощью цикла for. (Создать массив: int[] table = new int[5]; Обратиться к элементу массива: table[l]). Для нахождения максимального значения необходимо создать переменную и присвоить ему значение первого элемента массива. Далее необходимо пройти по всем элементам массива с помощью цикла и если значение больше переменной, то присвоить ему новое значение массива)

    Оператор if

    Напишите программный код.

    Ввести два действительных числа. Заменить первое число нулем, если оно меньше или равно второму, и оставить числа без изменений в противном случае.

    Оператор switch

    Напишите программный код.

    Ввести символ. Если введенный символ равен то вывести «доллар», если введенный символ равен 'F', то вывести «фунт», если введенный символ равен то вывести «рубль».

  • Даны два файла одного и того же типа. С помощью процедур BlockRead и BlockWrite добавить к первому файлу содержимое второго файла, а ко второму файлу — содержимое первого.

  • Другое, Программирование Pascal

    Максимально простая программа для формирования билетов на экзамен, желательно на паскале. Что бы билет можно было вывести в ворде.