Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
техпро лр№2.doc
Скачиваний:
2
Добавлен:
25.09.2019
Размер:
181.76 Кб
Скачать

Старооскольский технологический институт

(филиал) Федерального государственного автономного образовательного

учреждения высшего профессионального образования

«Национальный исследовательский технологический университет «МИСиС»

Лабораторная работа №2

По дисциплине «Технология программирования»

Вариант 1

Выполнила:

ст. группы ИТ-11-1д

Полякова Евгения

Проверил:

Головченко А. Л.

г. Старый Оскол

2012 г.

Задание №1

Задачи на использование операторов условия . Осуществить ввод необходимых данных, выполнить реализацию алгоритма с использованием операторов условия, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование операторов, прерывающих ход программы (breakgoto).

1.Ввести номер года (положительное целое число). Определить количество дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 — являются).

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

UInt32 x;

Console.Write("Введите год " + "\n ");

x = Convert.ToUInt32(Console.ReadLine());

if (x % 4 == 0)

{

if

(x % 100 == 0 && x % 400 != 0)

{

Console.WriteLine("Год не високосный насчитывает 365 дней");

}

else

{

Console.WriteLine("Год високосный насчитывает 366 дней");

}

}

else

{

Console.WriteLine("Год не високосный насчитывает 365 дней");

}

Console.ReadKey();

}

}

}

Задание №2

Задачи на использование операторов варианта . Осуществить ввод необходимых данных, выполнить реализацию алгоритма с использованием операторов варианта, обеспечить вывод полученных результатов. Для решения задачи предварительно составляется блок-схема. Не допускается использование массивов и операторов goto.

1.Даны два целых числа: D (день) и M (месяц), определяющие правильную дату не високосного года. Вывести значения D и M для даты, предшествующей указанной. Если пользователь вводит D и M несоответствующие календарю - выдать сообщение об ошибке.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace Zadanie_2_2

{

class Program

{

static void Main(string[] args)

{

Int32 D, M, y = 1;

string s;

Console.Write("Введите день ");

s = Console.ReadLine();

D = Convert.ToInt32(s);

Console.Write("Введите месяц ");

s = Console.ReadLine();

M = Convert.ToInt32(s);

switch (M)

{

case 1: {

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 31; M = 12; }

else D--;

break; }

case 2:

{

if ((D < 1) || (D > 28)) y = 0;

else

if (D == 1) { D = 31; M --; }

else D--;

break;

}

case 3:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 28; M--; }

else D--;

break;

}

case 4:

{

if ((D < 1) || (D > 30)) y = 0;

else

if (D == 1) { D = 31; M--; }

else D--;

break;

}

case 5:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 30; M--; }

else D--;

break;

}

case 6:

{

if ((D < 1) || (D > 30)) y = 0;

else

if (D == 1) { D = 31; M--; }

else D--;

break;

}

case 7:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 30; M--; }

else D--;

break;

}

case 8:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 31; M--; }

else D--;

break;

}

case 9:

{

if ((D < 1) || (D > 30)) y = 0;

else

if (D == 1) { D = 31; M--; }

else D--;

break;

}

case 10:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 30; M--; }

else D--;

break;

}

case 11:

{

if ((D < 1) || (D > 30)) y = 0;

else

if (D == 1) { D = 31; M--; }

else D--;

break;

}

case 12:

{

if ((D < 1) || (D > 31)) y = 0;

else

if (D == 1) { D = 30; M--; }

else D--;

break;

}

default: { y = 0; break; }

}

{

if(y==1)

Console.Write("Дата, предшествующая указанной {0}.{1}", D, M);

else

Console.Write("Ошибка");

Console.ReadKey();

}

}

}

}