C# metódus beállítás bool (true false) mértani számsorozat vizsgáló programban

Címkék
C# metódus beállítás bool (true false) mértani számsorozat vizsgáló programban
2020-12-04T18:34:33+01:00
2020-12-05T09:20:12+01:00
2022-10-15T21:16:05+02:00
FRETENSIS
sziasztok! Egy mértani számsorozat vizsgáló programban azt szeretném elérni, hogy a "mertani" metódusban legyenek megadva a mértani sorozatot vizsgáló kódrészletek. Úgy amint a kódban is látszik a saját metódus egy bool értéket vesz fel és benne true és false értékkel vizsgál. És a kapott vizsgálati eredményt adja vissza meghívás után a main metódusban és írja ki a konzolra. Tudom a kódban kétszer látható a consolewriteLine de ugye nem tudom összehozni a két metódust emiatt mert if elágazás van és csak a main-ben kellene lennie a Console.WritleLine kiíratásnak a metódus meghívás után. A kód egy próbálkozási állomást tükröz, értelem szerűen ha le akarjuk futtatni a mértani sorozat vizsgálatának kódrészletét be kell illeszteni a main metódusba.

Köszönöm a segítséget 
static bool mertani(int[] tomb) { int hanyados = sorozat[1] / sorozat[0]; int j = 1; while (j < sorozat.Length - 1 && sorozat[j] * hanyados == sorozat[j + 1]) { j++; } if (j == sorozat.Length - 1) { Console.WriteLine("Mértani sorozat"); } else { Console.WriteLine("Nem mértani sorozat"); } } static void Main(string[] args) { /* Írjunk olyan programot, amely bekéri egy sorozat első négy elemét (egész számok), majd meghatározza, hogy ez a 4 elem számtani sorozatot alkot-e (az elemek különbsége állandó)*/ /* mértani sorozat? */ // 3,9,27,81 (hányados állandó) // 2,4,8,16 int[] sorozat = new int[4]; for (int i = 0; i < sorozat.Length; i++) { Console.Write($"Kérem a {i + 1}. elemet: "); sorozat[i] = Convert.ToInt32(Console.ReadLine()); } if (mertani(sorozat) { Console.WriteLine("Mértani sorozat"); } else { Console.WriteLine("Nem mértani sorozat"); } Console.ReadLine();
Mutasd a teljes hozzászólást!
Osztani semmiképp se osszál, mert a tesztadatok között lesz olyan, hogy 0,0,0,0 meg olyan is, hogy 3,0,0,0 -- mindkettő mértani sorozat.

Három szám (a,b,c) akkor alkot mértani sorozatot, ha ac=bb. Négy szám pedig akkor, ha az első három mértani sorozatot alkot, meg az utolsó három is.

Egyébként a programsor, amire gondolsz ez:
return j == sorozat.Length - 1;
Mutasd a teljes hozzászólást!

  • Hali!

    A jövőben használd a forráskód-gombot (a szerkesztő-mező felett, balról a harmadik: </>), ha forráskódot illesztesz be (és akkor nem fog hibásan megjelenni a kódod).

    Mutasd a teljes hozzászólást!

  • static bool Mertani(int[] sorozat)

            {

                //true értéket ad vissza ha mértani sorozat

                //false értéket ad vissza ha nem mértani sorozat

                int hanyados = sorozat[1] / sorozat[0];

                int j = 1;

     

                while (j < sorozat.Length - 1 && sorozat[j] * hanyados == sorozat[j + 1])

                {

                    j++;

                }

                if (j == sorozat.Length - 1)

                {

                 

                }

            }

     

            static void Main(string[] args)

            {

            

                /* mértani sorozat? */

                // 3,9,27,81 (hányados állandó)

                // 2,4,8,16

     

                int[] sorozat = new int[4];

     

                for (int i = 0; i < sorozat.Length; i++)

                {

                    Console.Write($"Kérem a {i + 1}. elemet: ");

                    sorozat = Convert.ToInt32(Console.ReadLine());

                }

     

                /*if (mertani(sorozat)*/

                /*

                int hanyados = sorozat[1] / sorozat[0];

                int j = 1;

     

                while (j < sorozat.Length - 1 && sorozat[j] * hanyados == sorozat[j + 1])

                {

                    j++;

                }

                */

                if (Mertani(sorozat))

                {

                    Console.WriteLine("Mértani sorozat");

                }

                else

                {

                    Console.WriteLine("Nem mértani sorozat");

                }

     

     

     

     

     

     

                Console.ReadLine();


    Mutasd a teljes hozzászólást!
  • Osztani semmiképp se osszál, mert a tesztadatok között lesz olyan, hogy 0,0,0,0 meg olyan is, hogy 3,0,0,0 -- mindkettő mértani sorozat.

    Három szám (a,b,c) akkor alkot mértani sorozatot, ha ac=bb. Négy szám pedig akkor, ha az első három mértani sorozatot alkot, meg az utolsó három is.

    Egyébként a programsor, amire gondolsz ez:
    return j == sorozat.Length - 1;
    Mutasd a teljes hozzászólást!
  • Nagyon szépen köszönöm a segítséget!
    Mutasd a teljes hozzászólást!
Címkék
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd