Решение задачи-образца

using System;

using System.Collections.Generic;

using System.Text;

 

namespace Первые_учебные_классы

{

class Test

{

static void Main(string[] args)

{

// Шаг 1: Тестирование конструкторов класса, метода Show():

Natur_Chisla Ob1 = new Natur_Chisla();

Ob1.Show();

Natur_Chisla Ob2 = new Natur_Chisla(25,13);

Ob2.Show();

 

// Шаг 2: Тестирование методов чтения, модификации полей класса:

Ob1.Set_x(100);

Ob1.Set_y(57);

Ob1.Show();

Console.WriteLine("Среднее арифметическое чисел Ob1=" + (Ob1.get_x()+Ob1.get_y()) / 2.0);

 

// Шаг 3: Тестирование метода Ostatok() без параметров.

// В этом случае метод работает со значениями объекта Ob2:

Console.WriteLine("Остаток от деления чисел Оb2= " + Ob2.Ostatok());

// Шаг 4: Тестирование перегруженного метода Ostatok(uint a, uint b) - с параметрами.

// Обработка исключения:"Деление на ноль":

// В этом случае метод работает с аргументами a и b:

uint a, b;

Console.WriteLine("Введите два числа!");

a = UInt32.Parse(Console.ReadLine());

b = UInt32.Parse(Console.ReadLine());

Console.WriteLine("Остаток от деления чисел " + a + " на " + b + "= " + Ob1.Ostatok(a, b));

// Шаг 5: Тестирование метода NOD(uint a, uint b):

 

Console.WriteLine("NOD(" + a + ", " + b + ")= " + Ob1.NOD(a, b));

 

// Шаг 6: Тестирование метода NOК(uint a, uint b):

Console.WriteLine("NOK(" + a + ", " + b + ")= " + Ob2.NOK(a, b));

 

// Шаг 7: Тестирование метода Prost(a):

if (Ob2.Prost(a) == true)

Console.WriteLine("Число " + a + "-простое");

else Console.WriteLine("Число " + a + "-составное");

 

// Шаг 8: Тестирование метода Wzaimno_prostie(a,b):

if(Ob1.Wzaimno_prostie(a,b))

Console.WriteLine("Число " + a + " и "+b+"- взаимно-просты");

else Console.WriteLine("Число " + a + " и " + b + "- не взаимно-просты");

 

// Шаг 9: Тестирование метода Cifri(a):

Console.WriteLine("Ведите длинное натуральное число");

a=UInt32.Parse(Console.ReadLine());

Ob1.Cifri(a);

 

 

// Шаг 10: Тестирование метода обмена - Swap1(uint kol1, uint kol2):

uint kol1, kol2;

Console.WriteLine("Введите значение содержания бумажников");

kol1= UInt32.Parse(Console.ReadLine());

kol2= UInt32.Parse(Console.ReadLine());

Ob2.Swap1(kol1,kol2);

Console.WriteLine("Содержания бумажников после обмена: "+kol1+", "+kol2);

 

// Шаг 11: Тестирование метода обмена - Swap2(ref kol1,ref kol2):

Ob2.Swap2(ref kol1,ref kol2);

Console.WriteLine("Содержания бумажников после обмена: "+kol1+", "+kol2);

// Шаг 12: Тестирование перегруженного метода Cifri(uint a, out sbyte kol):

sbyte kol;

Console.WriteLine("Введите длинное натуральное число");

a = UInt32.Parse(Console.ReadLine());

Ob2.Cifri(a,out kol);

Console.WriteLine("В числе " + a + " " + kol + " цифр");

 

// Шаг 13: Тестирование метода Deliteli(int a, out sbyte kol):

uint [] mas;

Console.WriteLine("Введите число для нахождения делителей");

a = UInt32.Parse(Console.ReadLine());

mas = Ob2.Deliteli(a, out kol);

Console.WriteLine("Число " + a + " имеет " + kol + " делителей.Это следующие делители:");

for (sbyte i = 0; i < kol; i++)

Console.Write(mas[i] + " ");

Console.WriteLine();

 

// Шаг 14: Тестирование метода MaxVal(params int[] mas):

int g =87,f =-127;

Console.WriteLine("Максимальное число из двух чисел "+Ob2.MaxVal(g,f));

Console.WriteLine("Максимальное число в наборе чисел "+Ob2.MaxVal(g,f,58,236,-115));

int [] mas1={ 53, -178, 35, 289, 3000, 555 };

Console.WriteLine("Максимальное число в массиве чисел " + Ob2.MaxVal(mas1));

Console.WriteLine("Максимальное число в массиве чисел " + Ob2.MaxVal());

 

 

/* Образец решения задачи

с использованием класса Natur_Chisla:

Задача. С клавиатуры вводится натуральное многозначное число, которое имеет нечетное количество цифр. Разработать метод, который возвращает массив, состоящий из цифр этого числа, а также новое число, полученное путем изменения средней цифры исходного числа: если она четная, то поменять ее на 0; если она нечетная, то поменять ее на 9.*/

uint F, F_new;

Console.WriteLine("Введите натуральное многозначное число, которое имеет нечетное количество цифр");

F = UInt32.Parse(Console.ReadLine());

/* Для проверки нечётности количества цифр числа F в классе Natur_Chisla следует разработать вспомогательный метод, который определяет количество цифр в числе. Назовём его Kol_cifr(uint a).*/

if (Ob1.Kol_cifr(F) % 2 == 0)

Console.WriteLine("В записи числа " + F + " четное количество цифр - " + Ob1.Kol_cifr(F) + "! Введите другое число!");

else

{

Console.WriteLine("В записи числа " + F + " нечетное количество цифр - " + Ob1.Kol_cifr(F));

 

sbyte [] mass = Ob1.Mas_Cifr(F, out F_new);

Console.WriteLine("Полученный массив цифр числа " + F + ":");

for (sbyte j = 0; j < Ob1.Kol_cifr(F); j++)

Console.Write(mass[j] + " ");

Console.WriteLine();

Console.WriteLine("Новое число: " + F_new);

 

}

 

}

}

}

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: