Базовые языковые конструкции
Автор: taubinAndryxa • Март 2, 2022 • Лабораторная работа • 3,512 Слов (15 Страниц) • 198 Просмотры
МИНОБРНАУКИ РОССИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ
ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
«ЛЭТИ» ИМ. В.И. УЛЬЯНОВА (ЛЕНИНА)
Кафедра САПР
ОТЧЕТ
по лабораторной работе №3
по дисциплине «Объектно-ориентированное программирование»
Тема: Базовые языковые конструкции
Студент гр. 9309 | Пронин А.В | |
Студент гр. 9309 | Иванов Е.В. | |
Студент гр. 9309 | Сидоров А.В. | |
Преподаватель | Колпаков Н.Е. |
Санкт-Петербург
2021
Оглавление
Цель работы. 3
Постановка задачи. 3
Код программы. 3
Результаты работы 7
Выводы. 8
Цель работы
Ознакомиться с базовыми языковыми конструкциями языка C#, повторить работу с исключениями.
Постановка задачи
Написать программу, выполняющую преобразования целочисленного числа в пару месяц-день, после чего добавить ввод года и определение его на високосность.
Код программы
using System;
enum MonthName
{
January,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
}
class WhatDay
{
static void Main()
{
try
{
Console.WriteLine("Please enter a year");
string yearLine = Console.ReadLine();
int yearNum = int.Parse(yearLine);
bool isLeapYear = yearNum % 4 == 0; // Проверка високосности года
int maxDayNum;
if (isLeapYear)
{
Console.WriteLine("Year is leap!");
}
else
{
Console.WriteLine("Year is not leap!");
}
if (!isLeapYear)
{
maxDayNum = 365;
}
else
{
maxDayNum = 366;
}
Console.WriteLine("Please enter a day number between 1 and {0} : ", maxDayNum);
string line = Console.ReadLine();
int dayNum = int.Parse(line);
if (dayNum > 366)
{
throw new ArgumentOutOfRangeException("Day out of range"); // Исключение для високосного года
}
int monthNum = 0;
if (isLeapYear)
{
foreach (int daysInMonth in DaysInLeapMonth) // Расчёт месяц-дата для високосного года
{
if (dayNum <= daysInMonth)
{
break;
}
else
{
dayNum -= daysInMonth;
monthNum++;
}
}
}
else
{
foreach (int daysInMonth in DaysInMonths)// Расчёт месяц-дата для не високосного года
...