Kezdőoldal » Számítástechnika » Programozás » C# programot írok, ami bekér...

C# programot írok, ami bekér egy egész számot (n), majd bekér "n" db egész számot. Minden egyes számnál, kivéve az elsőnél ki kell írni hogy az előző számnál: nagyobb, kisebb, egyenlő-e a következő szám. Ezt hogyan oldhatom meg?

Figyelt kérdés
if-ekkel hogyan ágyazhatom be a programba?
2010. nov. 17. 17:42
1 2
 1/17 anonim ***** válasza:

A bekért számokat hol tárolja a program (tömb, lista, valami egyéb objektum)?

Tudjuk, hogy hány számot kérünk be?


Igazából ez édeskevés információ.

2010. nov. 17. 17:53
Hasznos számodra ez a válasz?
 2/17 anonim ***** válasza:
Elnézést, az utolsó kérdés törölve. Tehát egy n elemű tömb vagy lista kell neked ha jól értem, amelynek a tagjait sorbarendezi a program?
2010. nov. 17. 17:54
Hasznos számodra ez a válasz?
 3/17 A kérdező kommentje:
nincs semmi féle tárolás. bekér egy számot, majd amit megadok neki számot, annyi db számot kér be a progi, és a számok közti kisebb nagyobb egyenlő összefüggést kell megadni. egyszerű ciklusos és if-es progi lenne csak nagyon az elején járok még a programozásnak
2010. nov. 17. 18:05
 4/17 anonim ***** válasza:

Változók: n, i, aktualis, elozo

Bekéred n-t

Csinálsz egy ciklust i=1-től n-ig (hátultesztelős)

Bekéred a következő számot aktualis változóba

Elágazás: ha n>1, akkor:

ha elozo<aktualis, akkor kiírod: "Nagyobb az előző számnál."

ha elozo=aktualis, akkor kiírod: "Egyenlő az előzővel."

ha elozo>aktualis, akkor kiírod: "Kisebb az előző számnál."

Elágazás vége.

Értékadás: elozo=aktualis

Ciklus vége


Ez az elmélete, programozd le.

2010. nov. 17. 18:23
Hasznos számodra ez a válasz?
 5/17 anonim ***** válasza:

Itt van egy gyorsan összedobott, nem teljes értékű, de működő minta. Ha hülyeséget írsz be neki, akkor fog kilépni.


using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;


namespace lol

{

class Program

{

static void Main(string[] args)

{

int i = int.Parse(Console.ReadLine());

while (true)

{

int j = 0;

try

{

j = int.Parse(Console.ReadLine());

}

catch { break; }

if (j > i) Console.WriteLine("Bigger\n");

else if (j < i) Console.WriteLine("Smaller\n");

else Console.WriteLine("Equal\n");

i = j;

}

}

}

}

2010. nov. 17. 18:36
Hasznos számodra ez a válasz?
 6/17 A kérdező kommentje:

igy tudtam megcsinálni, de az "előző" változóval van valami problémája


int n;

int aktuális;

int előző;

do

{

Console.WriteLine("kérek egy számot");

n = int.Parse(Console.ReadLine());


Console.WriteLine("kérek {0} db számot", n);


for (int i = 1; i < n; i++)

{

aktuális = int.Parse(Console.ReadLine());

if (n > 1)

{

if (aktuális > előző)

Console.WriteLine("a szám nagyobb");

else if (aktuális < előző)

Console.WriteLine("a szám kisebb");

else if (aktuális == előző)

Console.WriteLine("egyenlőek");

aktuális=előző;

}


Console.ReadLine();


}

} while (n > 1);

2010. nov. 17. 18:52
 7/17 anonim ***** válasza:
Hmmm... A két n egyenlő? Az úgy túl egyszerű.
2010. nov. 17. 18:55
Hasznos számodra ez a válasz?
 8/17 A kérdező kommentje:

Use of unassigned local variable 'előző'

ennyit ír csak, és így még tesztelni sem engedi

2010. nov. 17. 18:59
 9/17 anonim ***** válasza:
Ezt azért írja mert az 'előző'-nek még nincs értéke amikor arra te már hivatkozol(az előzőt hasonlítod a másik számhoz).Első bekért számnál nincs gond? Amúgy sztem a változók nevében ne használj ékezetek, elvileg még működhet is, de inkább ne fesd az ördögöt a falra... ;)
2010. nov. 17. 19:11
Hasznos számodra ez a válasz?
 10/17 A kérdező kommentje:

Rendben megpróbálom ékezet nélkül.

Ott nem ír ki hibát az elsőnél legalább is a kódsoroknál,

futtatni pedig nem tudom mert nem engedi amig ez a probléma fenn áll

2010. nov. 17. 19:14
1 2

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!