• Предмет: Информатика
  • Автор: julesvv
  • Вопрос задан 4 месяца назад

Напишіть програму мовою с#, яка створює файл, що містить всі прості числа файлу output.

Ответы

Ответ дал: Stephan2
1

using System;

using System.IO;

class Program

{

   static bool IsPrime(int number)

   {

       if (number < 2)

           return false;

       for (int i = 2; i <= Math.Sqrt(number); i++)

       {

           if (number % i == 0)

               return false;

       }

       return true;

   }

   static void Main(string[] args)

   {

       // Відкриваємо вхідний та вихідний файли

       StreamReader input = new StreamReader("output.txt");

       StreamWriter output = new StreamWriter("primes.txt");

       string line;

       while ((line = input.ReadLine()) != null)

       {

           int number = int.Parse(line);

           if (IsPrime(number))

           {

               // Записуємо просте число у вихідний файл

               output.WriteLine(number);

           }

       }

       // Закриваємо файли

       input.Close();

       output.Close();

       Console.WriteLine("Програма завершила роботу.");

   }

}




У цій програмі використовується функція IsPrime, яка перевіряє, чи є число простим. Для кожного числа з вхідного файлу output.txt перевіряється, чи є воно простим, і якщо так, то записується у вихідний файл primes.txt. Обидва файли відкриваються за допомогою класів StreamReader та StreamWriter. Після завершення роботи з файлами вони закриваються за допомогою методів Close.


Stephan2: Можна кращий?
Ответ дал: archie242
1

Відповідь:

using System;

using System.IO;

class Program

{

   static void Main(string[] args)

   {

       int n = 100; // максимальне число для перевірки на простоту

       string fileName = "primes.txt"; // назва файлу для запису простих чисел

       // Відкриваємо файл для запису

       StreamWriter sw = new StreamWriter(fileName);

       for (int i = 2; i <= n; i++)

       {

           bool isPrime = true;

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

           {

               if (i % j == 0)

               {

                   isPrime = false;

                   break;

               }

           }

           if (isPrime)

           {

               sw.WriteLine(i); // записуємо просте число у файл

           }

       }

       // Закриваємо файл

       sw.Close();

       Console.WriteLine($"Прості числа від 2 до {n} були записані у файл {fileName}.");

   }

}

Вас заинтересует