Untitled

 avatar
unknown
plain_text
2 years ago
6.1 kB
5
Indexable
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Cwiczenie10
{
    class Program
    {
        static void CzyPierwsza(int [] t1, int [] t2)
        {
            int licznik_r = 0, licznik_1 = 0, flaga = 1, j = 0, k = 0;

            for (int i = 0; i < t1.Length; i++)
            {
                if (t1[i] < 2)
                    licznik_r++;
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t1[i]; dzielnik++)
                    {
                        if (t1[i] % dzielnik == 0)
                        {
                            licznik_r++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                        licznik_1++;
                }
            }

            for (int i = 0; i < t2.Length; i++)
            {
                if (t2[i] < 2)
                    licznik_r++;
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t2[i]; dzielnik++)
                    {
                        if (t2[i] % dzielnik == 0)
                        {
                            licznik_r++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                        licznik_1++;
                }
            }for (int i = 0; i < t1.Length; i++)
            {
                if (t1[i] < 2)
                    licznik_r++;
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t1[i]; dzielnik++)
                    {
                        if (t1[i] % dzielnik == 0)
                        {
                            licznik_r++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                        licznik_1++;
                }
            }

            for (int i = 0; i < t2.Length; i++)
            {
                if (t2[i] < 2)
                    licznik_r++;
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t2[i]; dzielnik++)
                    {
                        if (t2[i] % dzielnik == 0)
                        {
                            licznik_r++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                        licznik_1++;
                }
            }

            int[] pierwsze = new int[] { licznik_1 };
            int[] reszta = new int[] { licznik_r };

            for (int i = 0; i < t1.Length; i++)
            {
                if (t1[i] < 2)
                {
                    reszta[j] = t1[i];
                    j++;
                }
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t1[i]; dzielnik++)
                    {
                        if (t1[i] % dzielnik == 0)
                        {
                            reszta[j] = t1[i];
                            j++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                    {
                        pierwsze[k] = t1[i];
                        k++;
                    }
                }
            }

            for (int i = 0; i < t2.Length; i++)
            {
                if (t1[i] < 2)
                {
                    reszta[j] = t2[i];
                    j++;
                }
                else
                {
                    for (int dzielnik = 2; dzielnik * dzielnik <= t2[i]; dzielnik++)
                    {
                        if (t1[i] % dzielnik == 0)
                        {
                            reszta[j] = t2[i];
                            j++;
                            flaga = 0;
                            break;
                        }
                        else
                            flaga = 1;
                    }
                    if (flaga == 1)
                    {
                        pierwsze[k] = t2[i];
                        k++;
                    }
                }
            }
            t1 = pierwsze;
            t2 = reszta;
        }
        static void Main(string[] args)
        {
            int[] t1 = new int[] { 4, 3, 5, 6, 8, 9, 14 };
            int[] t2 = new int[] { 8, 9, 10, 4, 3, 9, 11 };

            Console.WriteLine("Tablice przed segregacją. \n Tablica pierwsza: ");
            for (int i = 0; i < t1.Length; i++)
                Console.WriteLine(t1[i]);
            Console.WriteLine("Tablica druga: ");
            for (int i = 0; i < t2.Length; i++)
                Console.WriteLine(t2[i]);

            Console.WriteLine("Tablice po segregacji: ");
            CzyPierwsza(t1, t2);
            Console.WriteLine("Tablica liczb pierwszych");
            for (int i = 0; i < t1.Length; i++)
                Console.WriteLine(t1[i]);
            Console.WriteLine("Tablica pozostałych liczb: ");
            for (int i = 0; i < t2.Length; i++)
                Console.WriteLine(t2[i]);

            Console.ReadKey();
        }
    }
}
Editor is loading...