Hirdetés
- AMD Navi Radeon™ RX 9xxx sorozat
- Csak a Battlefield 6-ra gyúr az új AMD Software
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Apple asztali gépek
- Bluetooth hangszórók
- Rendkívül ütőképesnek tűnik az újragondolt Apple tv
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Vezetékes FEJhallgatók
- Azonnali informatikai kérdések órája
- Melyik tápegységet vegyem?
Ú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
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- AMD Navi Radeon™ RX 9xxx sorozat
- Csak a Battlefield 6-ra gyúr az új AMD Software
- Kerékpárosok, bringások ide!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Odoo(ERP) - Szoftverfejlesztés
- Honor Magic6 Pro - kör közepén számok
- Konzolokról KULTURÁLT módon
- Battlefield 6
- Apple asztali gépek
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- Apple iPhone 14 Pro Max / Kártyafüggetlen / 256GB / 12Hó Garancia / 87% akku
- BESZÁMÍTÁS! Apple MacBook Air 15 M4 24GB RAM 1TB SSD macbook garanciával hibátlan működéssel
- HIBÁTLAN iPhone 12 Pro Max 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3376, 100% Akkumulátor
- Bomba ár! Fujitsu T936 Convertible: i5-6G I 8GB I 256SSD I 13,3" FHD Touch I Cam I W10 I Gari!
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest