ЛР №5

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Вінницький Національний Технічний Університет

Факультет інформаційних технологій та комп’ютерної інженерії


Кафедра обчислювальної техніки

Лабораторна робота №5
з програмування
Тема: “Виключні ситуації’’

Виконала
студентка гр. КІ-23мсз
Язвінська Д.І.
Перевірив
Кисюк Д.В.

Вінниця 2023
Варіант 11
Скласти програму знаходження сили всесвітнього тяжіння з
використанням обробки виключних ситуацій для від‘ємних та нульових
даних.

using System;
using System.Text;

class Program
{
static void Main()
{
Console.InputEncoding = Console.OutputEncoding = Encoding.Unicode;
try
{
// Запит введення маси першого об'єкта
double m1 = GetPositiveInput("Введіть масу першого об'єкта (кг): ");

// Запит введення маси другого об'єкта


double m2 = GetPositiveInput("Введіть масу другого об'єкта (кг): ");

// Запит введення відстані між об'єктами


double r = GetPositiveInput("Введіть відстань між об'єктами (м): ");

// Гравітаційна постійна Ньютона


const double G = 6.67430e-11;

// Перевірка на від'ємні або нульові значення мас або відстані


if (m1 <= 0 || m2 <= 0 || r <= 0)
{
Console.WriteLine("Маса та відстань повинні бути додатніми числами і не = 0.");
}
else
{
// Обчислення сили тяжіння
double force = (G * m1 * m2) / (r * r);
Console.WriteLine($"Сила тяжіння між об'єктами: {force} ньютонів");
}
}
catch (FormatException)
{
// Обробка виключення, якщо введені дані мають неправильний формат
Console.WriteLine("Помилка: невірний формат введених даних.");
}
catch (Exception ex)
{
// Обробка інших виключень
Console.WriteLine($"Помилка: {ex.Message}");
}
}

// Метод для отримання позитивного введення в консолі


static double GetPositiveInput(string prompt)
{
double input;
do
{
Console.Write(prompt);
} while (!double.TryParse(Console.ReadLine(), out input) || input <= 0);
return input;
}
}

You might also like