Kezdőoldal » Számítástechnika » Programozás » Hogyan lehetne ezt leprogramoz...

Hogyan lehetne ezt leprogramozni C#-ban egyszerűen?

Figyelt kérdés

1.feladat: Kérjünk be neveket addig amíg üres sort nem kap a program és írassuk ki a leghosszabbat!

2.feladat: Kérdjünk be számokat ameddig a 0-t nem kap a program és írassuk ki a legkisebbet!

3. feladat: Kérdjünk be neveket és hozzá tartozó életkorokat majd míg üres sort nem kap a program és írassuk ki a legidősebb nevét!


Először tanulok C#-ban és éppen a while-t tanuljuk így ezzel kellene megcsinálni. Nagyon sokat bajlódtam már vele nagyon jól jönne egy kis segítség! Előre is köszönök minden megoldást!



2015. okt. 20. 16:38
 1/10 anonim ***** válasza:

Jó volna tudni, eddig mire jutottál. Nem vagyok egy programozó zseni, de előljáróban a feladatokhoz do-while-ot javaslok, és tisztázni kellene, hogy egyáltalán értjük-e az adatok bevitelének módját, és az alapvető string metódusokat.


Azt kell észrevenni, hogy nincs szükség se tömbre, se max-kereső függvényre. Ehelyett egy változóban lehet tárolni az addig volna legnagyobb/leghosszabb/legidősebb stb. adatokat, és a végén azt kiiratni.

2015. okt. 20. 17:01
Hasznos számodra ez a válasz?
 2/10 SimkoL ***** válasza:

Kiindulásnak az első feladat:


static void Main(string[] args)

{

string elozo = " ", big = "";

while (elozo != "")

{

elozo = Console.ReadLine();

if (elozo.Length > big.Length) big = elozo;

}

Console.WriteLine(big);

Console.ReadLine();

}

2015. okt. 20. 17:57
Hasznos számodra ez a válasz?
 3/10 anonim ***** válasza:

Valóban nem szükséges hozzá tömb! Szimplán elegendő megvizsgálni, hogy az aktuális nagyobb-e mint az eddigi legnagyobb! Persze másképp is megoldható... nyilván tömbbel nem, hiszen meg kell adni hány elemű lesz, de ezt előre nem tudhatod. Tehát minimum listára lenne szükség ha ezt a megoldást választod, de mint előttem is mondták, felesleges. (Hacsak nem további műveleteket szeretnél végezni a bevitt adatokon!)


*A "kérjük" szóban pedig nincs "d"!:)*

2015. okt. 20. 17:58
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:

Véletlenül írtam a d-t kétszer is, kicsit szégyellem is miatta magam, hogy nem ellenőriztem le a végén, úgyhogy köszönöm a megjegyzést!! :)


Ilyen programot írtunk órán, amit értek:


using System;


class Prog

{

static void Main(string[] args)

{

int a = 1;

int összeg = 0;

while (a != 0)

{

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

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

összeg = összeg + a;

}

Console.WriteLine("Az összeg: {0}", összeg);

Console.WriteLine("Vége");

Console.ReadLine();

}

}


Ugye itt az volt a feladat, hogy számokat kérjünk be és amíg 0-t nem kap a progi addig adja össze a számokat és írja ki az összeget. A házimban ott akadtam el rögtön amikor bejött egy névnek a hossza, ugyanis ilyennel még egyáltalán nem foglalkoztunk, hogy egy szónak számoltassuk meg a karaktereit.

Végülis ebben szerettem volna segítséget hogy, ha valaki az elsőt ilyen mintán megírja akkor átbogarászva megérteném. :)

2015. okt. 20. 19:37
 5/10 anonim ***** válasza:
Ha nem tárolod a neveket, akkor ha több ugyan olyan hosszú van melyik a leghosszabb? :)
2015. okt. 20. 20:10
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:

"ha több ugyan olyan hosszú van melyik a leghosszabb?"


- Erre a kérdésre a feladat megadlkotójának kell válaszolnia. Mivel lehet több ugyanolyan hosszú is, ezért a feladat valahol értelmetlen is.

2015. okt. 20. 20:14
Hasznos számodra ez a válasz?
 7/10 SimkoL ***** válasza:
Az első megírtam neked, mi az amit nem értesz belőle ?
2015. okt. 20. 20:22
Hasznos számodra ez a válasz?
 8/10 SimkoL ***** válasza:

Itt van átírva a második:


static void Main(string[] args)

{

int a = 1, b = int.MaxValue;

while (a != 0)

{

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

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

if (b > a && a != 0) b = a;

}

Console.WriteLine("A legkisebb: {0}", b);

Console.WriteLine("Vége");

Console.ReadLine();

}

2015. okt. 20. 20:31
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:
2015. okt. 20. 23:58
Hasznos számodra ez a válasz?
 10/10 anonim válasza:

A szobatársamnak is ugyan ez a feladata, és mi is ezzel bajlódunk.

Sikerült megcsinálni a kód alapján az első feladatot.



SimkoL nevű felhasználó válasza:


Kiindulásnak az első feladat:


static void Main(string[] args)

{

string elozo = " ", big = "";

while (elozo != "")

{

elozo = Console.ReadLine();

if (elozo.Length > big.Length) big = elozo;

}

Console.WriteLine(big);

Console.ReadLine();

}


Köszi!! :)

2015. okt. 21. 18:51
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!