Назад Вперед Содержание

Вариант 1

1) Первая форма: группа «Авторизация» активна, а кнопка «Регистрация» неактивна. После ввода логина и пароля нажать кнопку «Войти». Проверка на наличие такого логина в списке зарегистрированных пользователей(List). При отсутствии логина в списке зарегистрированных пользователей(List), активировать кнопку «Регистрация»

2) При нажатии на кнопку «Регистрация», переходим к форме 2.

3) Если есть регистрация, проверяем пароль и переходим к третьей форме, иначе сообщаем, что пароль введен неправильно и остаемся на первой форме.

4) Имя и логин пользователя должно отобразиться в третьей форме. Выполнять контроль ввода обязательно.

Для этого используется метод: listBox1.Items.Add(s);

Вариант 2

1) Первая форма, группа «Авторизация» неактивна до нажатия кнопки «ВХОД В СИСТЕМУ» , кнопка «Регистрация» неактивна. После ввода логина и пароля нажать кнопку «Войти». Проверка на наличие такого логина в списке зарегистрированных пользователей(List). При отсутствии логина в списке зарегистрированных пользователей(List), активировать кнопку «Регистрация»

2) При нажатии на кнопку «Регистрация», переходим к форме 2. Выполнять контроль ввода обязательно.

3) Если есть регистрация, проверяем пароль и переходим к третьей форме, иначе сообщаем, что пароль введен неправильно и остаемся на первой форме.

4) Имя и логин пользователя должно отобразиться в третьей форме.

Вариант 3

1) Первая форма, группа «Авторизация» неактивна до нажатия кнопки «ВХОД В СИСТЕМУ», кнопка «Регистрация» неактивна. После ввода логина и пароля нажать кнопку «Войти». Проверка на наличие такого логина в списке зарегистрированных пользователей(List). При отсутствии логина в списке зарегистрированных пользователей(List), активировать кнопку «Регистрация»

2) При нажатии на кнопку «Регистрация», переходим к форме 2.

3) Если есть регистрация, проверяем пароль и переходим к третьей форме, иначе сообщаем, что пароль введен неправильно и остаемся на первой форме.

4) Имя и логин пользователя должно отобразиться в третьей форме. Выполнять контроль ввода обязательно.

Вариант 4

1) Первая форма, группа «Авторизация» неактивна до нажатия кнопки «ВХОД В СИСТЕМУ», кнопка «Регистрация» неактивна. После ввода логина и пароля нажать кнопку «Войти». Проверка на наличие такого логина в списке зарегистрированных пользователей(List). При отсутствии логина в списке зарегистрированных пользователей(List), активировать кнопку «Регистрация»

2)При нажатии на кнопку «Регистрация», переходим к форме 2.

3)Если есть регистрация, проверяем пароль и переходим к третьей форме, иначе сообщаем, что пароль введен неправильно и остаемся на первой форме.

4)Имя и логин пользователя должно отобразиться в третьей форме. Выполнять контроль ввода обязательно.

Вариант 5

Надо промоделировать процесс набора членов команды КВН. Проект должен состоять из трех форм.

В первом окне накапливается список претендентов в команду КВН, он нажимает кнопку «ПЕРЕДАТЬ». Должно отобразиться второе окно с фотографией капитана и заполненный список претендентов. Капитан из них выбирает людей в команду. Список отображается в листбоксе.Затем нажимается кнопка «Показать команду».Должно отобразиться третье окно с кнопками с выбранными именами. При нажании на ктопку у нее должен поменяться цвет.

Вариант 6

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

В первом окне накапливается список цветов, имеющихся в наличие (роза_красная...), нажимается кнопка «ПЕРЕДАТЬ». Должно отобразиться второе окно с заполненным списом растений. Флорист из них выбирает цветы в букет. Список отображается в листбоксе.Затем нажимается кнопка «Показать букет».Должно отобразиться третье окно с кнопками с выбранными растениями. При нажании на ктопку у нее должен фон с изображением этого цветка.

Подсказка

В папке проекта DEBUG -должны быть картинки, названия которых совпадают с надписями на кнопках. Картинку отобразить на кнопке можно так:

           
 кнопка.BackgroundImage = Image.FromFile(кнопка.Text.Trim()+".png");
 кнопка.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;

Вариант 7

Надо промоделировать процесс заказа документов в архиве. Проект должен состоять из трех форм.

В первом окне заказчик вводит свои данные (надо предусмотреть, что архивариус может добавить текстовое поле на форму), нажимается кнопка «ПЕРЕДАТЬ». Должно отобразиться второе окно с отображенными данными заказчика.

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

Вариант 8

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

В первом окне задаются данные учебника (надо предусмотреть, что библиотекарь может добавить текстовое поле на форму), нажимается кнопка «ПЕРЕДАТЬ». Должно отобразиться второе окно с отображенными данными учебника.

Заказчик из них выбирает студентов, которым нужна эта книга. Список отображается в листбоксе.Затем нажимается кнопка «Показать список».Должно отобразиться третье окно с метками с выбранными фамилиями студентов. При нажании на метку у нее должен поменяться цвет фона и цвет букв.

Вариант 9

Проект должен состоять из двух форм.

В первом окне задаются целое число из интервала 3,20 (надо предусмотретьконтроль ввода), нажимается кнопка «Выдать все простые числа», использовать решето Эратосфена. Нажимается кнопка «ПЕРЕДАТЬ ПОСЛЕДНЕЕ ПРОСТОЕ». Должно отобразиться второе окно с отображенными текстового поля с переданным числом витков синусоиды.Нажимается кнопка «Построить график».

Кнопка выход закрывает приложение.

Подсказка

Рисование графиков:

           
            Graphics g = pictureBox1.CreateGraphics();
            int cx = pictureBox1.Width;
            int cy = pictureBox1.Height / 2;
            PointF[] ptf = new PointF[cx];
            ... ... ... ... 
            // Очистим PictureBox
            g.Clear(pictureBox1.BackColor);

            for (int i = 0; i < cx; i++)
            {
                ptf[i].X = аргумент;
                ptf[i].Y = формула вашей функции;
            }
            g.DrawLines(Pens.Red, ptf);
            g.Dispose();

Вариант 10

Проект должен состоять из двух форм.

В первом окне задаются целое число n из интервала 5,10 (надо предусмотреть контроль ввода), нажимается кнопка «Выдать все числа Фибоначчи», Напечатать все числа Фибоначчи с номерами 1, 2, 3....n. Нажимается кнопка «ПЕРЕДАТЬ АРГУМЕНТЫ». Должно отобразиться второе окно с отображенными текстового поля с переданными числоми.Нажимается кнопка «Построить график».Строится график функции у=Log(x) c такими аргументами.

Кнопка выход закрывает приложение.

Подсказка

Рисование графиков:

           
            Graphics g = pictureBox1.CreateGraphics();
            int cx = pictureBox1.Width;
            int cy = pictureBox1.Height / 2;
            PointF[] ptf = new PointF[cx];
            ... ... ... ... 
            // Очистим PictureBox
            g.Clear(pictureBox1.BackColor);

            for (int i = 0; i < cx; i++)
            {
                ptf[i].X = аргумент;
                ptf[i].Y = формула вашей функции;
            }
            g.DrawLines(Pens.Red, ptf);
            g.Dispose();

Вариант 11

Даны две функции: y=ax2+bx+c и z=x3+dx2+ex+f. Выяснить, в каких точках их графики пересекают оси OX и OY, а также пересекаются между собой (если пересекаются). Построить оба графика.

Проект должен состоять из двух форм.

В первом окне задаются коэффициенты функций (a, b, с, d, e, f-надо предусмотреть контроль ввода). Нажимается кнопка «ПЕРЕДАТЬ АРГУМЕНТЫ». Должно отобразиться второе окно с отображенными текстового поля с переданными числами. Нажимается кнопка «Построить графики».Строятся графики обеих функций, также дожны отображаться значения точек, в которых графики пересекают оси оХ и оY, значение точки, где пересекаются сами графики.

Кнопка выход закрывает приложение.

Подсказка

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

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

Рисование графиков:

Прежде всего, следует поместить на форму сам элемент управления Chart. Он располагается в панели элементов в разделе Данные.

Список графиков хранится в свойстве Series, который можно изменить, выбрав соответствующий пункт в окне свойств. Поскольку на одном поле требуется вывести два отдельных графика функций, нужно добавить ещё один элемент. Оба элемента, и существующий и добавленный, нужно соответствующим образом настроить: изменить тип диаграммы ChartType на Spline. Здесь же можно изменить подписи к графикам с абстрактных Series1 и Series2 на конкретные функции – за это отвечает свойство Legend. Наконец, с помощью свойства BorderWidth можно сделать линию графика потолще, а затем поменять цвет линии с помощью свойства Color.

            // Количество точек графика
            int count = (int)Math.Ceiling((Xmax - Xmin) / Step) + 1;
            // Настраиваем оси графика
            ch.ChartAreas[0].AxisX.Minimum = Xmin;
            ch.ChartAreas[0].AxisX.Maximum = Xmax;
            // Определяем шаг сетки
            ch.ChartAreas[0].AxisX.MajorGrid.Interval = Step;
            ch.Series[0].Points.Clear();
            ch.Series[1].Points.Clear();
            for (double x = -1.9; x <= 2; x += 0.1)
            {
                ch.Series[0].Points.AddXY(x, A * x * x + B * x + C);
                ch.Series[1].Points.AddXY(x, x * x * x + D * x * x + E * x + F);
            }

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

Метод binsearch с помощью бинарного поиска выполняет поиск корня на монотонном интервале квадратичного полинома.

Метод f возвращает значение кубического полинома в точке.

double binsearch(double a, double b, double c, double d, double l, double r)
{
// Если нуля нет,
if ((f(a, b, c, d, l) > 0 && f(a, b, c, d, r) > 0) ||
(f(a, b, c, d, l) < 0 && f(a, b, c, d, r) < 0))
// вернем признак того, что корня нет.
return Double.NaN;
// Иначе, в цикле пока интервал не сузился до погрешности,
while (r - l > 1e-6)
{
// Берем середину интервала,
double m = (l + r) / 2;
// В зависимости от значения функции в точке, переносим границы поиска.
if (((f(a, b, c, d, m) > 0) && (f(a, b, c, d, l) > 0)) ||
((f(a, b, c, d, m) < 0) && (f(a, b, c, d, l) < 0)))
l = m;
else
r = m;
}
// Возвращаем ответ.
return l;
}

Вариант 12

Проект должен состоять из двух форм.

В первом окне задаются целое число n из интервала 5,10 (надо предусмотреть контроль ввода), нажимается кнопка «Выдать все числа Pella», Напечатать все числа Pella с номерами 1, 2, 3....n. Нажимается кнопка «ПЕРЕДАТЬ АРГУМЕНТЫ».

Число Пелля — целое число, входящее в качестве знаменателя в бесконечную последовательность подходящих дробей для квадратного корня из 2. Первые числа Пелля — 1, 2, 5, 12 и 29.

Числа Пелля задаются линейным рекуррентным соотношением:

Должно отобразиться второе окно с отображенными текстового поля с переданными числоми.Нажимается кнопка «Построить график».Строится график функции у=Log10(x) c такими аргументами.

Кнопка выход закрывает приложение.

Подсказка

Рисование графиков:

           
            Graphics g = pictureBox1.CreateGraphics();
            int cx = pictureBox1.Width;
            int cy = pictureBox1.Height / 2;
            PointF[] ptf = new PointF[cx];
            ... ... ... ... 
            // Очистим PictureBox
            g.Clear(pictureBox1.BackColor);

            for (int i = 0; i < cx; i++)
            {
                ptf[i].X = аргумент;
                ptf[i].Y = формула вашей функции;
            }
            g.DrawLines(Pens.Red, ptf);
            g.Dispose();

Вариант 13

Проект должен состоять из двух форм.

В первом окне задаются целое число n =10000 (надо предусмотреть контроль ввода), нажимается кнопка «Выдать все совершенные числа ». Напечатать все 4 числа. Нажимается кнопка «ПЕРЕДАТЬ АРГУМЕНТЫ».

Совершенным называется натуральное число, равное сумме всех своих собственных делителей (то есть всех положительных делителей, отличных от самого? числа), например 6=1+2+3)

Совершенные числа образуют последовательность:6,28,496,8128....

Должно отобразиться второе окно с отображенными текстового поля с переданными числами.Нажимается кнопка «Отсортировать по цифрам».В другое текстовое поле выводятся числа, с отсортированніми цифрами.

Кнопка выход закрывает приложение.

Вариант 14

Вычислить площадь плоской фигуры, ограниченной двумя функциями.y=a*cos(b*x+c) и y=a*tg(b*x+c).Построить графики функций.

Вариант 15

Вычислить площадь плоской фигуры, ограниченной двумя функциями.y=a*cos(b*x+c) и y=a*tg(b*x+c).Построить графики функций.

Подсказка

 public class functions
     {
        /// 
        /// коэффициенты в функциях
        /// 
        public double a;
        public double b;
        public double c;

        /// 
        /// пределы интегрирования
        /// 
        public double x1;
        public double x2;

        public functions(double a, double b, double c, double x1, double x2)
        {
            this.a = a;
            this.b = b;
            this.c = c;
            this.x1 = x1;
            this.x2 = x2;
        }

        /// 
        /// Метод, вычисляющий значение функции y=a*cos(b*x+c).
        /// 
        /// 
        /// значение функции y=a*cos(b*x+c)
        public double f1(double x)
        {
            double y2 = Math.Pow(a, b * x + c);
            return y2;
        }
        /// 
        /// Метод, вычисляющий значение функции y=a*tg(b*x+c).
        /// 
        /// 
        /// значение функции y=a*tg(b*x+c)
       
        public double f2(double x)
        {
            double y1 = a * Math.Cos(b * x + c);
            return y1;
        }

        /// 
        /// Подынтегральная функция
        /// 
        /// 
        /// Модуль разности функций

        private double F(double x)
        {
            double m = Math.Abs(f1(x) - f2(x));
            return m;
        }

        /// 
        /// Нахождение площади методом Гаусса
        /// 
        /// Площадь фигуры образованной двумя функциями 
        public double Gauss()
        {
            double I;
            double c = 0.5 * (x2 - x1);
            double d = 0.5 * (x2 + x1);
            double e = 0.5 * (x2 - x1)/Math.Sqrt(3);

            I = c * (F(d - e) + F(d + e));
            return I;
        }

Назад Вперед Содержание