2020-12-04T18:34:33+01:00
2020-12-05T09:20:12+01:00
2022-07-19T00:05:36+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
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:
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!
- ⊓≡⊺∧⊓ɢ⋿∟válasza FRETENSIS (18:34) részére
- 2020.12.04. 18:47
- permalink
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!- FRETENSISválasza FRETENSIS (18:34) részére
- 2020.12.04. 20:01
- permalink
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! - FRETENSISválasza NevemTeve (22:05) részére
- 2020.12.05. 09:20
- permalink
Nagyon szépen köszönöm a segítséget!Mutasd a teljes hozzászólást!