Обучающе-контролирующая программа «Сложение и вычитание отрицательных чисел» - 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});