Kezdőoldal » Számítástechnika » Programozás » C# programozasban lenne...

C# programozasban lenne problemam (meg csak tanulgatom) (? )

Figyelt kérdés

Programozási feladat: Állapítsuk meg két billentyőzetrıl bekért számról, hogy

mi a legnagyobb közös osztójuk! A legnagyobb olyan szám, amely mindkét

számot osztja. Ezen értéket meghatározhatjuk kereséssel (ciklus), vagy az

Euklideszi algoritmussal is.


namespace ConsoleApplication11

{

class Program

{

static void Main(string[] args)

{

int a, b, i;

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

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

for (i = b; i >= 0; i--)

{

if (a % i == 0 && b % i == 0)

{ Console.WriteLine(i); }

}

Console.ReadLine();


}

}

}


Igy probaltam, de mindig hibat ir. Emellett, ha nem irna hibat, akkor is az osszes osztot kiirna es nem csak a legnagyobbat. Elore is koszonom a segitseget.


2015. okt. 3. 14:11
 1/7 anonim ***** válasza:

> Igy probaltam, de mindig hibat ir.


A hibaüzenetet el kell olvasni, majd értelmezni kell. Ha nem megy, segítünk, csak másold be.

2015. okt. 3. 14:13
Hasznos számodra ez a válasz?
 2/7 anonim ***** válasza:

#1 vagyok


Amúgy tippre a 0-val osztás a baj.


--> for (i = b; i >= 0; i--)


--> if (a % i == 0 && b % i == 0)

2015. okt. 3. 14:14
Hasznos számodra ez a válasz?
 3/7 A kérdező kommentje:
Igazad volt, koszonom szepen, nem is gondoltam volna. Viszont azt hogy tudom megoldani, hogy ha talal egyet, akkor lealljon es ne kezdje keresgelni a tobbit?
2015. okt. 3. 14:18
 4/7 anonim ***** válasza:
A ciklusból a "break;" paranccsal tudsz kilépni. Csinálsz egy feltétel vizsgálatot, és ha stimmel, akkor kilépsz :)
2015. okt. 3. 14:39
Hasznos számodra ez a válasz?
 5/7 anonim ***** válasza:
A break is egy megoldás, de elegánsabb, ha while ciklust használsz for helyett.
2015. okt. 3. 14:48
Hasznos számodra ez a válasz?
 6/7 SimkoL ***** válasza:

static void Main(string[] args)

{

int a, b, i;

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

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

if (a > b) i = b; else i = a;

while ((a % i != 0) || (b % i != 0)) i--;

Console.WriteLine(i);

Console.ReadLine();

}

2015. okt. 3. 15:05
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:

static int gcd(int a, int b)

{

return b == 0 ? a : gcd(b, a % b);

}

2015. okt. 3. 17:07
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!