Тверской государственный университет
Опубликован: 02.12.2009 | Доступ: свободный | Студентов: 3204 / 514 | Оценка: 4.41 / 4.23 | Длительность: 11:54:00
ISBN: 978-5-9963-0259-8
Лекция 3:

Выражения и операции

Задачи

  • 1. Построить циклическое консольное меню-приложение "Арифметические операции". Команды меню задают арифметические операции, допустимые в выражениях языка C#. При выборе пункта меню пользователь получает приглашение к вводу одного или двух значений в зависимости от выбранного пункта меню, затем над значениями выполняется соответствующая операция, и ее результат выводится на консоль.
  • 2. Построить Windows-приложение "Арифметические операции". В одно или два текстовых окна пользователь вводит значения. По нажатию командной кнопки, задающей тип арифметической операции, над введенными значениями выполняется соответствующая операция, и ее результат выводится в текстовое окно, предназначенное для вывода значений.
  • 3. Построить циклическое консольное меню-приложение "Логические операции". Команды меню задают логические и условные логические операции, допустимые в выражениях языка C#. При выборе пункта меню пользователь получает приглашение к вводу одного или двух значений в зависимости от выбранного пункта меню, затем над значениями выполняется соответствующая операция, и ее результат выводится на консоль. В зависимости от типа операции значениями могут быть как логические, так и целочисленные константы.
  • 4. Построить Windows-приложение "Логические операции". В одно или два текстовых окна пользователь вводит значения, которые могут быть логическими или целочисленными константами. По нажатию командной кнопки, задающей тип логической или условной логической операции, над введенными значениями выполняется соответствующая операция, и ее результат выводится в текстовое окно, предназначенное для вывода значений.
  • 5. Построить циклическое консольное меню-приложение "Операции отношения и сдвига". Команды меню задают операции отношения или сдвига, допустимые в выражениях языка C#. При выборе пункта меню пользователь получает приглашение к вводу значений, затем над значениями выполняется соответствующая операция, и ее результат выводится на консоль.
  • 6. Построить Windows-приложение "Операции отношения и сдвига". В текстовые окна пользователь вводит значения операндов операции. По нажатию командной кнопки, задающей операцию отношения или сдвига, над введенными значениями выполняется соответствующая операция, и ее результат выводится в текстовое окно, предназначенное для вывода значений.
  • 7. Построить циклическое консольное меню-приложение "Класс Math". Команды меню задают функции, определенные в классе Math. При выборе пункта меню пользователь получает приглашение к вводу значений, затем к значениям применяется соответствующая функция, и ее результат выводится на консоль.
  • 8. Построить Windows-приложение "Класс Math". В одно или два текстовых окна пользователь вводит значения. По нажатию командной кнопки, задающей функцию класса Math, к введенным значениям применяется соответствующая функция, и ее результат выводится в текстовое окно, предназначенное для вывода значений.

Вычисление выражений. Оценка времени вычислений

Вычисление выражения построить так, чтобы минимизировать время его вычисления. Оцените время вычисления выражения в условных единицах (уе), исходя из следующих предположений: присваивание - 1 уе, операции сдвига -2 уе, сложение, вычитание - 3 уе, умножение - 5 уе, деление - 7 уе, вызов стандартной функции - 13 уе.

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

  • 9. Построить консольное приложение "Expression1". Приложение вычисляет значение x и выводит его на консоль, где
    x=\frac{(123+527*31/73^2)*(123-527*31/73^2)}{\sqrt[3]{123+527*31/73^2}+233}
  • 10. Построить Windows-приложение "Expression1". Приложение вычисляет значение x и выводит его в текстовое окно, где
    x=\frac{(123+527*31/73^2)*(123-527*31/73^2)}{\sqrt[3]{123+527*31/73^2}+233}
  • 11. Построить консольное приложение "Expression2". Приложение вычисляет значение x и выводит его на консоль, где
    x=\frac{2^5(12,3+52,7*31/73^{2,5})*(12,3-52,7*31/73^{2,5})}{\sqrt[3]{12,3+52,7*31/73^{2,5}}-0,233*10^4/2^7}
  • 12. Построить Windows-приложение "Expression2". Приложение вычисляет значение x и выводит его в текстовое окно, где
    x=\frac{2^5(12,3+52,7*31/73^{2,5})*(12,3-52,7*31/73^{2,5})}{\sqrt[3]{12,3+52,7*31/73^{2,5}}-0,233*10^4/2^7}
  • 13. Построить консольное приложение "Expression3". Приложение вычисляет значение x и выводит его на консоль, где
    x=\frac{2^5(\sin(12,3)+cos(52,7*31/73^{2,5})*(\sin(12,3)-\cos(52,7*31/73^{2,5}))}{\lg(\sqrt[3]{12,3+52,7*31/73^{2,5}})-0,233*10^4/2^7}
  • 14. Построить Windows-приложение "Expression3". Приложение вычисляет значение x и выводит его в текстовое окно, где
    x=\frac{2^5(\sin(12,3)+cos(52,7*31/73^{2,5})*(\sin(12,3)-\cos(52,7*31/73^{2,5}))}{\lg(\sqrt[3]{12,3+52,7*31/73^{2,5}})-0,233*10^4/2^7}
  • 15. Построить консольное приложение "Expression4". Приложение вычисляет значение x и выводит его на консоль, где
    x=\frac{2^n(\sin(a)+cos(b*c/d^m))*(\sin(a)-\cos(b*c/d^m))}{\lg(\sqrt[3]{a+b*c/d^m})-e/2^p}
    В вычисляемом выражении m, n, p, a, b, c, d, e - это имена переменных, значения которых задает пользователь.
  • 16. Построить Windows-приложение "Expression4". Приложение вычисляет значение x и выводит его в текстовое окно, где
    x=\frac{2^n(\sin(a)+cos(b*c/d^m))*(\sin(a)-\cos(b*c/d^m))}{\lg(\sqrt[3]{a+b*c/d^m})-e/2^p}
    Вычисление выражения построить так, чтобы минимизировать время его вычисления. В вычисляемом выражении m, n, p, a, b, c, d, e - это имена переменных, значения которых задаются в соответствующих текстовых окнах.
  • 17. (**) Построить консольное приложение "Expression5". Приложение вычисляет значение x и время T в миллисекундах и тиках, требуемое для n-кратного (n =100000) его вычисления, где
    x=\frac{2^n(\sin(a)+cos(b*c/d^m))*(\sin(a)-\cos(b*c/d^m))}{\lg(\sqrt[3]{a+b*c/d^m})-e/2^p}
    Для вычисления времени использовать возможности класса DateTime. Вычисление выражения построить разными способами. Проанализировать, как это влияет на эффективность вычислений по времени.
  • 18. (**) Построить Windows-приложение "Expression5". Приложение вычисляет значение x и время T в миллисекундах и тиках, требуемое для n-кратного (n =100000) его вычисления, где
    x=\frac{2^n(\sin(a)+cos(b*c/d^m))*(\sin(a)-\cos(b*c/d^m))}{\lg(\sqrt[3]{a+b*c/d^m})-e/2^p}
    Для вычисления времени использовать возможности класса DateTime. Вычисление выражения построить разными способами. Проанализировать, как это влияет на эффективность вычислений по времени.

Геометрические фигуры

  • 19. Построить Windows-приложение "Круг". Дано: r - радиус круга, alpha - центральный угол в градусах. Вычислить: диаметр, длину окружности, площадь круга, площадь сектора, площадь сегмента и длину хорды, определяемую центральным углом.
  • 20. Построить Windows-приложение "Квадрат". Дано: сторона квадрата - a. Точки B и C расположены на сторонах квадрата, примыкающих к вершине квадрата A. Расстояние AB = b, AC = c. Вычислить: площадь четырехугольника OBAC, где О - центр квадрата. Вычислить OB, OC и углы четырехугольника.
  • 21. Построить Windows-приложение "Треугольник". Дано: стороны треугольника a,b,c. Вычислить остальные элементы треугольника.
  • 22. Построить Windows-приложение "Круг и Точка". Дано: r - радиус круга, X_s, Y_s - координаты центра круга, X_t, Y_t - координаты точки. Определить, принадлежит ли точка кругу.
  • 23. Построить Windows-приложение "Квадрат и Точка ". Дано: сторона квадрата - a, X_s, Y_s - координаты центра квадрата, X_t, Y_t - координаты точки. Определить, принадлежит ли точка квадрату.

Преобразования типов

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

  • 24. Постройте Windows-приложение, в котором тип источника - string, тип цели - один из подтипов арифметического типа, выбираемый из списка. Преобразование выполните с использованием метода Parse и методом класса Convert.
  • 25. Постройте Windows-приложение, в котором тип источника - string, тип цели - логический. Преобразование выполните с использованием метода Parse и методом класса Convert.
  • 26. Постройте Windows-приложение, в котором тип источника - int, тип цели - один из подтипов арифметического типа, выбираемый из списка. Преобразование выполните с использованием приведения типа, методом Parse и методом класса Convert.
  • 27. Постройте Windows-приложение, в котором тип источника - double, тип цели - один из подтипов арифметического типа, выбираемый из списка. Преобразование выполните с использованием приведения типа, методом Parse и методом класса Convert.
  • 28. Постройте Windows-приложение, в котором тип источника - int, тип цели - char. Преобразование выполните с использованием приведения типа, методом Parse и методом класса Convert.
  • 29. Постройте Windows-приложение, в котором тип источника - int, тип цели - все типы, для которых существует безопасное преобразование, выполняемое автоматически.
  • 30. Постройте Windows-приложение, в котором тип источника - double, тип цели - все типы, для которых существует безопасное преобразование, выполняемое автоматически.
  • 31. Постройте Windows-приложение, в котором тип источника - char, тип цели - все типы, Для которых существует безопасное преобразование, выполняемое автоматически.

Проекты

  • 32. Построить Windows-приложение "Стандартный калькулятор", аналогичный Windows-калькулятору - приложению Calculator в режиме Standard.
  • 33. Построить Windows-приложение "Научный калькулятор", аналогичный Windows-калькулятору - приложению Calculator в режиме Scientific.
Дарья Федотова
Дарья Федотова
Надежда Савина
Надежда Савина

Записалась на платный курс Программирование на С# http://www.intuit.ru/studies/professional_retraining/951/video_courses/356/info. Оплату пока не производила.

Могу ли я скачать/прочитать текст прослушиваемых лекций? Особенно интересуют задания

Владимир Романов
Владимир Романов
Россия, Москва, МПУ им Н.К. Крупской