Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практика_програмування.docx
Скачиваний:
3
Добавлен:
08.11.2019
Размер:
1.09 Mб
Скачать

Задача 3

Описати рекурсивну функцію pow(x,n) від натурального x (x≠0) та цілого n, яка обраховує величину x^n за формулою:

x^n=

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace ConsoleApplication1

{

class a

{

public double p;

public double pow(int x, int n)

{

if (n == 0)

p = 1;

else

if (n < 0)

p = 1 / pow(x, -n);

else

p = x * pow(x, n-1);

return p;

}

}

class Program

{

static void Main(string[] args)

{

a A =new a();

Console.WriteLine("Введiть x та n");

int x = Int32.Parse(Console.ReadLine());

int n = Int32.Parse(Console.ReadLine());

if (x == 0)

{

Console.WriteLine("Данi введено не коректно");

}

else

{

double b = A.pow(x, n);

Console.WriteLine(b);

}

Console.ReadKey();

}

}

}

Задача 4

В заданий непустий текст входять лише цифри і букви. Визначити, чи задовольняє він наступній умові: текст починається з деякої ненулевої цифри, за якою слідують тільки букви, і їх кількість рівна числовому значенню цієї цифри.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Text.RegularExpressions;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

string str;

string strpat = "1";

Console.WriteLine("Введiть текст");

str = Convert.ToString(Console.ReadLine());

if (str[0] == ('1'|'2'|'3'|'4'|'5'|'6'|'7'|'8'|'9'))

{

strpat = "[0-9]{1}([a-zA-Zа-яА-Я])";

}

else

{

strpat = @"\b[0-9]{1}([a-zA-Zа-яА-Я])";

}

Regex pat = new Regex(strpat);

Match match = pat.Match(str); ;

if (match.Success)

{

if ((str[0] != '0') & (Int32.Parse(Convert.ToString(str[0])) == str.Length - 1))

Console.WriteLine("Текст задовольняє умовi");

else

Console.WriteLine("Текст не задовольняє умовi");

}

else

Console.WriteLine("Текст не задовольняє умовi");

Console.ReadKey();

}

}

}

Задача 5

Дано натуральне і дійсні числа x1,y1,…,xn,yn. Розглядаючи пари xi,yi як координати точок на площині, визначити радіус найменшого круга (з центром в точці початку координат), в середину якого потрапляють всі ці точки.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace ConsoleApplication1

{

class Program

{

static void Main(string[] args)

{

Console.WriteLine("Введiть кiлькiсть пар");

int p = int.Parse(Console.ReadLine());

Console.WriteLine("Введiть пари чисел, кожна пара з нового рядка");

int[,] num = new int[p, 2];

double[] len = new double[p];

int i;

for (i = 0; i < p; i++)

{

string str = Console.ReadLine();

for (int j = 0; j < 2; j++)

{

int El = Convert.ToInt32(str.Split(' ')[j]);

num[i, j] = El;

}

}

for (i = 0; i < p; i++)

{

len[i] = Math.Pow(num[i, 0] * num[i, 0] + num[i, 1] * num[i, 1], 0.5);

}

Console.WriteLine("Радiус шуканого круга = "+len.Max());

Console.ReadLine();

}

}

}