Új hozzászólás Aktív témák
-
kingabo
őstag
válasz
Dr. Student #2700 üzenetére
Metódust nem tudsz osztályon kívül írni.
Attól függ, hogy mire akarod használni kell eldöntened, hogy hova teszed.
-
fatal`
titán
válasz
Dr. Student #2700 üzenetére
Nem, ez elméletben mindenre. Ha osztályon belül írsz egy másik osztályt arra is igaz ez. Metódust osztályon kívülre nem is lehet írni szerintem (illetve structba lehet, de az csak annyiban tér el az osztálytól, hogy alapból minden public), bár ilyet még nem próbáltam.
-
fatal`
titán
válasz
Dr. Student #2698 üzenetére
Ha jól tudom, ha kívülre írod akkor az egész namespacere érvényes, ha belülre, akkor meg osztályon belül.
-
Jester01
veterán
válasz
Dr. Student #2695 üzenetére
Te magát az F függvényt írod, az a feladat. És attól lesz rekurzív, hogy saját magát hívja.
-
Jester01
veterán
válasz
Dr. Student #2693 üzenetére
Ez azt akarja jelenteni, hogy mindegyik szám az előző kettő összege. n-ből közvetlenül így nem számolható, azért kell a rekurzió (bár ugye van rá képlet, de most nem az a feladat).
A definíció így hangzik:
1) F(0) = 0
2) F(1) = 1
3) F(n) = F(n-1) + F(n-2)Pontosan ezt kell leprogramozni is. Így már megy vagy mondjam tovább?
MOD: mondom még egy kicsit. F(2) a definíció alapján F(1) + F(0) tehát 1+0=1. F(3) = F(2) + F(1), vagyis 1+1=2.
-
Jester01
veterán
válasz
Dr. Student #2691 üzenetére
Fibonaccival hol akadtál el? Igazából sehol nem lehet benne elakadni, ha az alapképletet már megkerested. Jóformán szó szerint csak le kell másolni a definíciót.
-
ArchElf
addikt
válasz
Dr. Student #2681 üzenetére
de maradhat így is, csak ne nullára vizsgáld, hanem float.NaN-re... [link]
A while ciklus az elején is egyszerűsíthető, másrészt a hibákat célszerű az error stream-re írni a sima output stream helyett:
float a;
Console.Write("Kérem az (a) szám értékét: ");
while ((a = int.Parse(Console.ReadLine())) == 0)
{
Console.Error.WriteLine("Az (a) értéke nem lehet 0.");
Console.Write("Kérem az (a) szám értékét: ");
}Harmadrészt célszerű volna lekezelni az az esetet is, ha az int.Parse hibára fut (nem szám lett beadva):
int a;
Console.Write("Kérem az (a) szám értékét: ");
while (!int.TryParse(Console.ReadLine(), out a) || a == 0)
{
Console.Error.WriteLine("Az (a) értéke nem lehet 0.");
Console.Write("Kérem az (a) szám értékét: ");
}AE
-
fatal`
titán
válasz
Dr. Student #2678 üzenetére
Az a baj, hogy egyből négyzetgyököt számolsz, ami negatív esetén nem negatív lesz, hanem "nem szám".
Előbb számold a d-t négyzetgyök nélkül, ha kisebb mint nulla, akkor hiba, egyébként pedig kiszámolod a négyzetgyökét és úgy számolod a két x-et.
-
Jester01
veterán
válasz
Dr. Student #2678 üzenetére
A négyzetgyököt túl hamar számolod, már a d-ben.
-
ArchElf
addikt
válasz
Dr. Student #2662 üzenetére
Dobd be ide a kódod és megmondjuk, mi a gebasz.
AE
-
Jhonny06
veterán
válasz
Dr. Student #2668 üzenetére
Ja hogy Sergyán
(Ugyanarra az előadásra járunk) Amúgy igen, a "ciklus amíg" a while-ra vonatkozott, tehát az előző hsz-embe lévő első változattal jó lesz a prímszámos feladat. Ezeket az algoritmusokat egyébként nem kell szó szerint betanulni, mert sok fölösleges dolog van bennük, ami megzavar.
Illetve a while(i != szam) azért nem jó, mert önmagát már nem fogja figyelembe venni. Tehát inkább while(i <= szam) és ezzel jó.
A teljes programkód:
-
Jhonny06
veterán
válasz
Dr. Student #2666 üzenetére
Most akkor ciklus amíg kell, vagy nem? Mert az elején azt írod, aztán meg hogy azért vontak le pontot.
Mindegy, while-al is csak úgy lehet, ha van egy index változód, amit mindig növelsz. Belinkelhetnéd a diát.
while(i != szam)
{
...
i++;
}vagy
for(int i = 0; i < szam; i++)
{
...
} -
Jhonny06
veterán
válasz
Dr. Student #2663 üzenetére
Bekérsz egy számot, majd írsz egy for ciklust ami addig a számig fog menni. A for cikluson belül lesz egy feltétel, ami megvizsgálja, hogy az adott index érték (i) osztható-e maradék nélkül a bekért számmal. Ha igen, akkor a program elején létrehozott mondjuk db nevű változódat növeled 1-el. Ha a ciklus végén a db == 2, akkor a szám prím. Nyilván vannak hatékony algoritmusok erre, de ez a legegyszerűbb, "no-brainer" fajta.
-
ArchElf
addikt
válasz
Dr. Student #2663 üzenetére
Használd a keresőt
AE
-
Dr. Student
senior tag
válasz
Dr. Student #2662 üzenetére
Közbe kicsit tovább haladtam, még egy probléma adódott, egy másik programmal, itt az eldöntés tételével vagyok kicsit hadilábon...főleg, ez a prim számos program, tehát döntsük el egy számról, hogy prim-e...ez nem akar működni sehogy, nem akarok hülyeséget írni, kb 2 perc alatt megírja aki tudja, megköszönném, aki bemásolja...
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HP Zbook 14 laptop (14FHD/I7-G5/8GB/128SSD/MagyarVilágítós)
- Jó áron ÁRON ELADÓ! Üzleti HP Elitebook 1040 G9 Laptop! / i5-1245U 16GB 256GB
- Szuper áron DELL XPS 13 7390 /i7-10510U/16 GB Ram/512 GB SSD/IPS/
- ÁRESŐ! Dell Inspiron 3493 /10.gen i5-1035G1/8GB/512 GB SSD FHD
- Akciós áron eladó HP Elitebook 845 G7 / AMD Ryzen 5 pro-4650U/16 GB/256 SSD/14"/FHD/IPS/Gari/touch
- Iphone 16E 128GB Fekete Bontatlan 24 Hónap Garancia
- LG 55C4 - 48" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
- KÖZEL FÉLÁR! Apple Magic Keyboard, Mouse, Trackpad, Pencil, Smart Magic Keyboard Folio, Watch szíjak
- Mini PC, tiny PC HP Fujitsu Esprimo i5-7500T
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged