Обучающе-контролирующая программа «Сложение и вычитание отрицательных чисел» - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день. Прошу вашей помощи так как сам не знаю как реализовать данную задачу. Начну с того, что нам раздали темы курсовых работ и мне выпала тема указанная в заголовке. Я написал код(ниже), показал преподавателю, он сказал добавить еще одну возможность, а именно: "добавление собственных примеров в программу через консоль(когда программа уже запущена) и возможность их решения в дальнейшем". Как это сделать я просто понятия не имею, так как с ничем похожим мне не приходилось иметь дело ранее. Буду очень благодарен если кто нибудь поможет. Сам код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace ConsoleApplication32
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите цифру: 1 - теория, 2 - практическое задание, 3 - добавление собственного примера, 4 - решение собственных примеров");
         q:   int a = int.Parse(Console.ReadLine());
 
            switch (a)
            {
                case 1:
                    Console.WriteLine("");
                    Console.Write(" Вычитание - это действие противоположное сложению.\n Если a и b — положительные числа, то вычесть из числа a число b, значит найти такое число c, которое при сложении с числом b даёт число a.\n a + b = c или с + b = a\n Чтобы из одного числа вычесть другое, нужно к уменьшаемому прибавить число противоположное вычитаемому\n Или по другому можно сказать, что вычитание числа «b» — это тоже самое сложение, но с числом противоположным числу b\n a - b = a +(-)b\n Пример: 6 - 8 = 6 +(-)8\n Знак плюс(+) не изменяет знака числа, поэтому если перед скобкой стоит плюс, то знак в скобках не изменяется\n +(+а)= + а\n Знак минус(-), стоящий перед скобками меняет знак на противоположный\n -(+a) = - a\n -(-a) = + a\n -6 + 2 - (-10) - (-1) + (-7) = - 13 + 13 = 0\n Правило знаков сохраняется и в том случае если в скобках алгебраическая сумма чисел\n a - (- b + c) + (d - k + n) = a + b - c + d - k + n\n Обратите внимание, если в скобках стоит несколько чисел и перед скобками стоит знак минус, то должны меняться знаки перед  всеми числами в этих скобках\n");
                 goto q;
 
                case 2:
                    Console.WriteLine(" А теперь пройдем небольшое практическое задание");
                    Console.ReadKey();
                    Console.WriteLine("");
                    Console.WriteLine("Перед тобой будет несколько примеров котрые необходимо решить и записать ответ с клавиатуры");
                    Console.ReadKey();
                    Console.WriteLine("");
                    Console.WriteLine("Ну что, давай начнем. Желаю удачи! ");
                    Console.WriteLine("");
                    Console.ReadKey();
                    Console.WriteLine(" - 3 + 7 = ");
            ab: int x1 = int.Parse(Console.ReadLine());
                    if (x1 == 4)
                        Console.WriteLine(" Молодец, все верно");
                    else
                    {
                        Console.WriteLine("Подумай еще");
                        goto ab;
                    }
                    Console.WriteLine("");
                    Console.WriteLine(" Давай продолжим");
                    Console.WriteLine("");
                    Console.WriteLine(" - 2 + 9 = ");
            ac:           int x2 = int.Parse(Console.ReadLine());
                    if (x2 == 7)
                        Console.WriteLine(" Отлично");
                    else
                    {
                        Console.WriteLine("Подумай еще");
                        goto ac;
                    }
                    Console.WriteLine(" - 1 - 4 = ");
            av:     int x3 = int.Parse(Console.ReadLine());
                    if (x3 == -5)
                        Console.WriteLine(" У тебя хорошо получается");
                    else
                    {
                        Console.WriteLine(" Подумай еще");
                        goto av;
                    }
                    Console.WriteLine(" 7 - 14 = ");
            an:  int x4 = int.Parse(Console.ReadLine());
                    if (x4 == -7)
                        Console.WriteLine(" Хорошо");
                    else
                    {
                        Console.WriteLine(" Подумай еще");
                        goto an;
                    }
                    Console.WriteLine(" А теперь будут примеры по сложнее");
                    Console.WriteLine("");
                    Console.WriteLine(" -11 + 43 =  ");
            am:    int x5 = int.Parse(Console.ReadLine());
                    if (x5 == 32)
                        Console.WriteLine(" Все верно");
                    else
                    {
                        Console.WriteLine(" Подумай еще");
                        goto am;
                    }
                    Console.WriteLine(" Ну и наконец последний пример, надеюсь у тебя получится");
                    Console.WriteLine("");
                    Console.WriteLine(" 9 - 17 = ");
            ad:        int x6 = int.Parse(Console.ReadLine());
                    if (x6 == -8)
                        Console.WriteLine(" Отлично! У тебя все получиось. Ты усвоил тему: Сложение и вычитание отрицательных чисел.");
                    else
                    {
                        Console.WriteLine(" Подумай еще");
                        goto ad;
                    }
                    break;

            }
        }
    }
}

Решение задачи: «Обучающе-контролирующая программа «Сложение и вычитание отрицательных чисел»»

textual
Листинг программы
var customQuestion = new Question();
//Добавляете новые данные
customQuestion.Add(new Question{text = customtext,answer = customAnswer});

Оцени полезность:

8   голосов , оценка 4.125 из 5
Похожие ответы