6c# feladatgyűjtemény _ digitális tankönyvtár

Upload: bnc1

Post on 28-Feb-2018

265 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    1/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 1/28

    Ugrs a tartalomhoz(#sdt_slot_Layout_Page_Main)

    Keress

    (http://www.tankonyvtar.hu/hu)

    Belps (http://www.tankonyvtar.hu/Shibboleth.sso/Login?target=http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html)

    Informci (/hu/informacio)

    Kapcsolat(/hu/kapcsolat)

    English(/en/tartalom/tamop425/0046_ csharp_feladatgyujtemeny/ch06.html)

    (#)

    A-(#)A(#)A+(#)

    Kezdoldal(/hu)

    Hrek(/hu/hirek/tankonyvtar/cikkek)

    Bngszs (/hu/bongeszes)

    Foldal(/hu)> TAMOP 4.2.5 Plyzat knyvei > Knyvek(/hu/bongeszes/konyvek)> Alkalmazott tudomnyok (/hu/bongeszes/konyvek/alkalmazott_tudomanyok)>

    Szmtstechnika. Informatika.Adatbzisok (/hu/bongeszes/konyvek/alkalmazott_tudomanyok/szamitastechnika)

    (/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.html)

    (/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch07.html)

    C# feladatgyjtemny

    Kovcs Emd, Radvnyi Tibor, Kirly Roland, Hernyk Zoltn

    KempelenFarkas Hallgati Informcis Kzpont

    Tweet(https://twitter.com/share)

    Begyazs

    6. fejezet - Vektorokkal s azok kezelsvel kapcsolatos feladatok (szerz: Kirly Roland)

    Tartalom

    A fejezet forrskdjai(ch06.html#id514147)

    6.1. feladat (Sorozatok szint: 1). rjunk olyan programot, amely bekri egy sorozat els ngy elemt, majd meghatrozza, hogy

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.htmlhttp://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.htmlhttp://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.htmlhttp://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.htmlhttp://www.tankonyvtar.hu/huhttp://www.tankonyvtar.hu/hu/bongeszes/konyvekhttp://www.tankonyvtar.hu/hu/bongeszes/konyvekhttp://www.tankonyvtar.hu/hu/bongeszes/konyvek/alkalmazott_tudomanyokhttp://www.tankonyvtar.hu/hu/hirek/tankonyvtar/cikkekhttp://www.tankonyvtar.hu/hu/kapcsolathttp://www.tankonyvtar.hu/Shibboleth.sso/Login?target=http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.htmlhttps://twitter.com/sharehttp://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch07.htmlhttp://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch05.htmlhttp://www.tankonyvtar.hu/hu/bongeszes/konyvek/alkalmazott_tudomanyok/szamitastechnikahttp://www.tankonyvtar.hu/hu/bongeszes/konyvek/alkalmazott_tudomanyokhttp://www.tankonyvtar.hu/hu/bongeszes/konyvekhttp://www.tankonyvtar.hu/huhttp://www.tankonyvtar.hu/hu/bongeszeshttp://www.tankonyvtar.hu/hu/hirek/tankonyvtar/cikkekhttp://www.tankonyvtar.hu/huhttp://www.tankonyvtar.hu/en/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.htmlhttp://www.tankonyvtar.hu/hu/kapcsolathttp://www.tankonyvtar.hu/hu/informaciohttp://www.tankonyvtar.hu/Shibboleth.sso/Login?target=http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.htmlhttp://www.tankonyvtar.hu/hu
  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    2/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 2/28

    ez a 4 elem szmtani sorozatot alkot-e (az elemek klnbsge lland)

    mrtani sorozatot alkot-e (az elemek hnyadosa lland)

    Magyarzat:A program elksztshez, amelyet a 6.1 (ch06.html#x1-10001r1) forrsszvegben lthatunk hasznljunk ciklust. Ha mg nem hasznltunk listt, vagy tmbt, a

    ngy elemet troljuk ngy vltozban, ellenkez esetben definiljunk egy 4 elem tmbt, melybe az elemeket eltrolhatjuk.

    A sorozat bejrsa sorn minden elemre megllapthat, hogy milyen az utna kvetkez elemhez a viszonya. lland-e a klnbsgk t[i]-t[i+1], vagy a - b. Ugyanez

    igaz a hnyadosra is.

    Informci: A szmtani sorozat (vagy aritmetikai sorozat egy elemi matematikai fogalom, mely a matematika szmos rszterletn elfordul.

    Egy legalbb hrom szmbl ll akr vges, akr vgtelen sorozatot akkor neveznk szmtani sorozatnak, ha a szomszdos elemek klnbsge - differencija - (a

    sorozatra jellemz) lland. forrs: Wikipedia.

    6.2. feladat (Binris szmjegyek kezelse szint: 1). Ksztsnk konzolos alkalmazst a 6.2 (ch06.html#x1-10002r2)pldaprogram mintjra, amely beolvas egy binris szmot,

    majd kirja, hogy hny 1-es szmjegy szerepel a szmsorozatban!

    Magyarzat: Ha nem beolvasni, hanem generlni szeretnnk a szmjegyeket, akkor egy tmb, vagy egy lista lesz a legalkalmasabb a trolsra. Az egyszerbb megolds

    viszont az, ha bekrjk a szmjegyeket a billentyzetrl. Az egyesek megszmllsa ezek utn gyerekjtk. Csak definilnunk kell egy vltozt, amely segtsgvel egy

    ciklusban egyesvel szmllhatjuk az egyeseket.

    Vletlen szmot az albbi formulval generlhatunk:

    Random R = new Random();

    int adat = R.next(...);

    Amennyiben a bonyolultabb megoldst vlasztjuk, figyeljnk a kvetkezkre: Mivel a vektor megfelelje a C# nyelvben a tmb (tpus[db]). A feladat megoldshoz is

    hasznlhatunk egy int tpus elemeket tartalmaz tmbt, ami a kvetkezkppen hozhat ltre:

    int n = 10; //Tetszleges egsz szm,

    int[] t = new int[n];

    A tmb feltltst egy ciklussal oldhatjuk meg gy, hogy a ciklusmag minden lefutsakor ltrehozunk egy vletlen szmot, melyet hozzrendelnk a tmb aktulis index

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    3/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 3/28

    elemhez.

    Informci:

    A tmb elemeinek ltrehozsa egy ciklusban trtnik.

    Ha az elemeket ugyanabban a ciklusban dolgoznnk fel, amelyben ltrehoztuk ket, akkor sajnlatos mdon egy alapvet programtervezsi hibt kvetnnk el. Ne tegyk!

    6.3. feladat (Egyedi vletlen szmok szint: 2). Fejlesszk tovbb a Vletlen szmok feladatban bemutatott programot gy, hogy a tmb elemszmt a felhasznl adja meg,

    valamint gyeljnk arra is, hogy a tmbbe csak olyan szmok kerlhessenek, melyeket elzleg mg nem generltuk le a vletlen szm genertor segtsgvel.

    Magyarzat:A megolds tbb ciklus hasznlatt ignyli, melyeket egymsba kell gyazunk. a megoldst a 6.3 (ch06.html#x1-10003r3)pldaprogramban lthatjuk.

    Az ellenrzs lpsei:

    lltsuk el az aktulis v letlen szmot.

    Egy ciklus segtsgvel jrjuk vgig az eddig generlt szmokat, s vizsgljuk meg, hogy az ppen ellltott rtk szerepel-e kztk.

    Ha nem, akkor hozzkezdhetnk a kvetkez szm ellltshoz

    Ha igen, akkor dobjuk el a generlt szmot, s ksztsnk jat

    6.4. feladat (Lott szmok szint: 1). Ksztsnk konzol programot, mely ellltja egy lott sorsols szmait!

    Magyarzat:A szmokat els megkzeltsben nem kellene trolnunk, de termszetesen a Lott szmok nem ismtldhetnek.

    Magyarzat: Ezt a felttelt a programunk csak gy tudja teljesteni, ha sszehasonltja az ppen generlt szmot a korbban ellltott szmok mindegyikvel. Amennyiben tallegyezst, gy a szmot jra generlja. Ehhez a megoldshoz mindenkppen valamilyen vektor tpus adatszerkezetet kell hasznlnunk.

    A megoldshoz, amit a 6.4 (ch06.html#x1-10004r4) forrsszvegben lthatunk, mindezek mellett vletlen szm genertort kell hasznlni, ami 1-90 kz es szmokat llt el.

    6.5. feladat (Konzolos menpontok kezelse szint: 2). Ksztsnk egy egyszer parancssori programot, mely nhny menponttal rendelkezik. A menpontok kirsra

    hasznljuk a Console kir utastsait.

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    4/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 4/28

    A men a kvetkezkpp nzzen ki:

    1 Els menpont

    2 msodik menpont

    3 Harmadik menpont

    4 Negyedik menpont

    5 Kilps

    Magyarzat: A program kzvetlenl az elindtsa utn rja ki a menket a kpernyre, ahogy ezt a 6.5 (ch06.html#x1-10005r5) forrsszvegben lthatjuk, majd olvasson be egykaraktert. Amennyiben a beolvasott szm az 1-4 intervallumba esik, gy a kpernyre rdjon ki, hogy melyik menpont kerlt kivlasztsra.

    Ezt a mveletet addig kell ismtelni, mg a felhasznl az 5-s szmot nem adja meg. Ez esetben a program fejezze be a futst.

    Az elksz ts sorn alkalmazzuk a switchvezrl szerkezetet, melyet egy htul tesztel ciklusban helyeznk el. A ciklusnak mindaddig kell futnia, amg a beolvasott rtk nem

    egyenl 5-tel.

    6.6. feladat (tvlts kettes szmrendszerbe szint: 2). Ksztsnk programot, mely tetszleges tzes szmrendszer beli egsz szmot tvlt kettes szmrendszerbe. Az

    tvltand szmot a billentyzetrl olvassuk be, majd az tvlts eredmnyt ugyanide rjuk ki (lsd: 6.6 (ch06.html#x1-10006r6)

    ).

    Magyarzat:Az tvlts a legknnyebben gy vgezhetjk el, ha az tvltand szmot oszt juk a szmrendszer alapszmval, vagyis a kettvel. Az oszts maradka a kettes

    szmrendszerbeli szm lesz, az egszrszt pedig tovbb kell osztanunk mindaddig, amg el nem rjk a nullt.

    A megoldshoz hasznljunk c iklust. A cik lus magjban el kell vgeznnk a maradkos, majd az egsz osztst s el kell trolnunk a maradkokat egy lis tban, vagy egyb

    tetszleges adattpusban.

    A cik lus lefutsa, s a szmtsok elvgzse sorn megkapjuk a kettes szmrendszer beli szmot.

    6.7. feladat (tvlts tetszleges szmrendszerekbe szint: 3). Ksztsnk olyan programot, amely tzes szmrendszerbeli egsz szmokat tvlt tetszleges, a felhasznl

    ltal megadott szmrendszerbe. Az tvltand szmot, valamint a szmrendszer alapszmt a billentyzetrl olvassuk be, majd az tvlts eredmnyt ugyanide rjuk ki.

    Figyeljnk arra is, hogy 9 fltt a szmokat az ABC nagy betivel helyettestjk.

    Magyarzat:A megoldshoz az tvlts kettes szmrendszerbe cm feladathoz hasonlan hasznljunk ciklust. A cik lus magjban el kell vgeznnk a maradkos osztst,

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    5/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 5/28

    majd az egsz osztst a szmrendszer alapszmval, ezutn el kell trolnunk a maradkokat egy listban, vagy egyb tetszleges adattpusban.

    A cik lus lefutsa utn megkapjuk a kettes szmrendszerbeli szmjegyeket. Figyelem! gyeljnk arra is, hogy a szmrendszer alapszmnl ne lehessen megadni nullt, vagy

    negatv szmot. A nullval val oszts egybknt is komoly hibt eredmnyez.

    6.8. feladat (Azonos elemek szint: 1). Ksztsnk a 6.8 (ch06.html#x1-10008r8)pldaprogram alapj n konzolos a lkalmazst, amelyben ltrehozunk egy n-elem tmbt, melybe

    vletlen szmokat helyeznk el. llaptsuk meg, hogy a generlt szmok egyformk-e, vagy klnbzek.

    Magyarzat:A program megoldshoz hasznljuk valamely ismert ciklust, ami bejrja az elzleg generlt listt. Ahhoz, hogy eldntsk, minden szm egyforma-e, elg a

    bejrs elejn egy vltoz rtkt egyre lltani, s addig nem vltoztatni, az rtkn, amg ugyanolyan szmokat tallunk, mint az els elem.

    Ha a ciklus vgre sem mdosult a vltoz rtke, akkor a sorozat teljesen homogn, ellenkez esetben nem az.

    A tesztelshez ksztsnk egy olyan tmbt is , amely egyforma szmokat tartalmaz, mert ellenkez esetben a vletlen szm genertorral nagyon sokig kellene vrnunk az

    idelis esetre.

    Informci: A vletlen szmok az informatikban nem valdi vletlen szmok, mivel brmely mechanikus eljrs, amit a sz mtgpeken alkalmazunk, egy id utn ismtld

    sorozatokat fog ellltani. Ezt a tpus vletlen szmot pszeudovletlen szmnak nevezzk.

    Amennyiben valdi vletlen szmokra van szksgnk, vehetnk rzajt a NASA-tl, vagy a termszethez kell fordulnunk segtsgrt.

    6.9. feladat (Statisztika listkrl szint: 1). Ksztsnk a 6.9 (ch06.html#x1-10009r9)program alapjn olyan alkalmazst, amely bekr a felhasznltl egy szmot, majd ltrehoz

    egy ilyen hosszsg tmbt. A tmb elemeit bekri a billentyzetrl, majd megllaptja, hogy hnyfle rtket kapott!

    Magyarzat:A kapott elemeket sorban meg kell vizsglni, s ha valamelyik elembl tallunk egyet, a hozz rendelt szmllt meg kell nvelnnk egyel.

    Legalbb annyi szmllra van szksgnk, amennyi fle elem elfordulhat, vagyis a tmb elemszmmal azonos szmra, praktikusan egy azonos hosszsg tmbre.

    Informci:

    A statisztika a valsg szmszer informciinak megfigyelsre, sszegzsre, elemzsre s modellezsre irnyul gyakorlati tevkenysg s tudomny.

    A statisztika alapja sok olyan eljrsnak, amely titkos szvegek, vagy kdok feltrst tesz i lehetv. Kmek szzai dolgoznak azon, hogy nagyhatalmak egymsnak, vagy

    sajtjaiknak kldtt zeneteit karakter statisz tikk segtsgvel feltrjk, s az informcit a hasznukra fordtsk.

    A karakter statiszt ikkon alapul kdfejts azon a felismersen alapszik, hogy minden beszlt nyelvben meg lehet hatrozni a leggyakoribb karaktereket. Amennyiben

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    6/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 6/28

    rendelkezsre ll ez az informci, a karakter statisztika segt abban, hogy megllaptsuk melyik a titkos szvegben leggyakrabban elfordul jel. Ez, s nmi fejtrs segt a

    kdfejtknek kitallni a titkot...

    Egyes nzetek szerint a statisztikai adatok 5%-os eltrssel jl mrnek, de ezt a statisztika mdszereivel szmtottk ki...

    6.10. feladat (Karakterek szmllsa szint: 1). rjunk a 6.10 (ch06.html#x1-10010r10)pldaprogram alapjn olyan programot, mely a felhasznltl beolvas egy tetszleges

    string tpus adatot, valamint egy karaktert, majd kirja a kpernyre, hogy a megadott karakter hnyszor szerepel a szvegben!

    Magyarzat:A beolvasott szveget egy c iklus segtsgvel bejrhatjuk. A ciklus minden lefutsakor meg kell vizsglnunk, hogy az aktulis karakter megegyezik-e a keresett

    karakterrel. Amennyiben igen, egy vltoz rtkt meg kell nvelnnk egyel.

    Informci: Ez a feladat egy programozsi ttelen alapszik, melynek a neve: megszmlls ttele. A megszmllshoz hasonl ttelek mg az eldnts, kivlaszts s a

    kivlogats ttelei, melyek implementcijt szintn ciklussal oldjuk meg.

    6.11. feladat (Szveges adatok vizsglata szint: 2). Ksztsnk konzolos alkalmazst, amely eldnti egy tetszleges szvegrl, hogy az palindrom tpus-e, vagy sem. A

    szveget a billentyzetrl olvassuk be mindaddig, amg a felhasznl folytatni szeretn a vizsgldst. A 6.11(ch06.html#x1-10011r11)pldaprogramban megtekinthetjk az egyik

    lehetsges megoldst.

    Magyarzat:A palindrom szvegek ellrl s visszafel olvasva is ugyanazt jelentik.

    Rmai fvezr - rzev fia, Mr. (Babits Mihly), vagy az ismert: Indul a Grg Aludni.

    Ahhoz, hogy egy szvegrl eldntsk, hogy megfelel-e ennek a kvetelmnynek, meg kell llaptanunk, hogy az i-edik betje minden esetn megegyezik-e az

    -edik betvel. Az iaz aktulis szvegindex, mg az na szveg hossza. A vizsglatot elg a szveg kzepig elvgezni ( ).

    Informci: Az 1800-as vek vgn Breyer Gyula magyar sakk-nagymester rt egy szerelmes levelet, ami oda-vissza olvasva ugyanaz:

    Ndasi K. Ott Kis-Adn, mjusi szerdn e levelem rm. A mott: Szivedig ime visz irs, kellemest r! Szinlel sziv rm kacsintl! De messzi visz szemed... Az lmok (

    csal szirnek ezek, csodaadk) el les. Irok ime messze tvol. Barnm! Lm e szivindulat n. S im e sziv, e vr ezeket ereszti ki: Szivem! Ime leveled elttem, eszemet

    letev! Kicsike! Szava remegne ott? - leli karom t, desem! Lereszket vasziv rm. Szivem imd s ldozni kr rveden - rgi gyerekistenem. Les im. Eltte visz szived is.

    g. rte reszketek, szeret rg s ide visz. Szivet - tlem is elmenet - siker egy igrne, de vrr kinzod (lsd m: ime visz mr, visz a vtek!) szerelmesedt. mor (aki leltt

    engem, e ravasz, e kicsi!) Kveteltem eszemet tled!

    E levelem ime viszi... Kit szeretek ezer ve, viszem is n t, aludni viszem. lmn rablv tesz szeme. Mikor is e llekodaado csk ezeken ri, szl: A cskom lza de messzi

    visz!... Szemed ltni csak mr!... Visz lelni!... Szorts!... Emellek Sri szivemig. Ide visz Ott. Ma mr m e levelen dresz is uj m. Ndasi K. Ott Kis-Adn.

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    7/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 7/28

    Forrs: Wikipedia.

    6.12. feladat (Szveg tkrzse szint: 1). Ksztsnk alkalmazst, mely egy tetszleges szveget tkrz a kzps elemre. Amennyiben a szveg pros szm karaktert

    tartalmaz, annak kpzeletbeli kzepre vgezze el a tkrzst.

    Magyarzat:A szveg tkrzse ciklussal oldhat meg, ahogy azt a 6.12 (ch06.html#x1-10012r12)programban is lthatjuk.

    A cik lust addig kell futtatni, mg el nem rjk a szveg kzept egszrsz(szveghossza osztva 2). A szveg vgig vgezve a tkrzst sajnos visszakapjuk az eredeti

    szveget. A ciklusmagban minden lpsben cserljk meg az i-edik elemet az -edik elemmel. Az na szveg hossza, az ia ciklus vltozja, vagyis az aktulis

    elem-index a szvegben.

    Vigyzat! A C# nyelvben a string tpus nem engedi meg, hogy az elemeit egyesvel fellrjuk.

    Amennyiben mindenkppen szeretnnk hasznlni a stringosztly t, konkatenlni kell az egyes elemeket egy j vltozba a opertor segtsgvel az albbi mdon:

    ujszoveg = ujszoveg + szoveg[szoveg. Lengthi];

    Egy msik megoldshoz hasznlhatunk StringBuilder-t, vagy a karaktereket a tkrzs eltt helyezzk el egy tmbben, esetleg egy listban, melynek az elemeit tetszs szerint

    meg lehet vltoztatni.

    6.13. feladat (Szveg elemzse szint: 2). Ksztsnk konzol programot, mely kiszmtja egy kifejezs rtkt. A program a kifejezst szveges formban kapja meg a

    billentyzetrl.

    A megadott kifejez sre az eg yszersg k edvrt a k vetkez megktsek vonatkoznak:

    Nem tartalmazhat szkzt, vagy egyb white-space karaktereket.

    Nem lehet benne csak egy opertor s kt operandus.

    Az operan dusok kiz rlag e gsz szmok lehetnek.

    A 6.13 (ch06.html#x1-10013r13)pldaprogramban ltottakat felhasznlhatjuk a megoldshoz.

    Magyarzat:A beolvasott szveget bontsuk szt a stringa tpus megfelel metdusainak hasznlatval. Az S.IndexOf(A)azAS-ben elfoglalt helyt, vagyis az indext adja

    vissza egsz szmknt. Segtsgvel megkereshetjk az opertor pozcijt a szvegben. Ezutn nincs ms dolgunk, minthogy az opertort megelz, s az azt kvet string

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    8/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 8/28

    darabokat egsz szmm konvertljuk. gy megkapjuk a kt operandust is.

    Az opertort k iemelve, s megvizsglva (pl: egy switch, vagy egy if gaiban) mr el tudjuk vgezni a megfelel mveleteket, s ki tudjuk rni az eredmnyt a kpernyre.

    6.14. feladat (Kifejezst tartalmaz szveg tiszttsa szint: 2). Ksztsnk a 6.14 (ch06.html#x1-10014r14)forrsszveg alapjn konzol programot, amely beolvas egy

    tetszleges hosszsg szveget, melyet azonnal fel is dolgoz. A program a szveges kifejezst string formban kapja meg billentyzetrl. A kifejezsre a kvetkez megktsnek

    kellene rvnyeslnie:

    Nem tartalmazhat szkzt, vagy egyb white-space karaktereket.

    Amennyiben tallunk szkzket a szvegbe n, gy azo kat tvoltsuk el. Valjba n ez a mvelet a pr ogram leg fontosabb momen tuma.

    Magyarzat: Ezt a problmt gy oldhatjuk meg, ha mindaddig cserljk a dupla szkzket szimpla szkzre, amg tallunk ilyeneket a szvegben. A keressre az IndexOf

    metdust, a cserre a Replacemetdust hasznljuk a stringtpusnak.

    Informci: A szveg tszt tsa nagyon hasonlt arra a folyamatra, amikor a klnbz programozsi nyelvek fordt programja beolvassa a programoz ltal rt sorokat, majd a

    flsleges szkzket, tabultor jeleket, kommenteket, s egyb nem kvnatos rszeket eltvoltja a szvegbl.

    A fordtprogram ezen rszt Source handler-nek, vagy Input Handler-nek nevezzk.

    6.15. feladat (Szveg elemeinek cserje - kiterjesztett megolds szint: 3). A Szveg el emeinek cserje p rogramot mdo stsuk gy, hogy a cserl end szveget, valamin t

    azt, hogy mire cserljk ki, a felhasznl adja meg. Ezzel a megoldssal brmit ki tudunk cserlni a szvegben brmi msra.

    Mdosthatjuk a programunkat gy is, hogy a cserlend elemeket, s azokat is, amikre ezeket cserljk, listkban lehessen elhelyezni.

    Magyarzat:A cserlend elemek listjt egyesvel kell bejrnunk, s minden elem esetn el kell vgeznnk a csert, amit az eredeti programban is elvgeztnk. Ekkor a listk

    bejrshoz is ciklusokat kell hasznlnunk, nem csak a cserkhez.

    6.16. feladat (Nagy szmok sszeadsa szint: 3). Ksztsnk programot, mely tetszleges nagy egszeket kpes sszeadni. A nagy sz ebben az esetben azt jelenti, hogy a

    C# nyelvben trolhat legnagyobb egsz szmoknl is nagyobb szmokat legynk kpesek feldolgozni, majd kezelni az eredmnyt. A 6.16 (ch06.html#x1-10016r16)

    plda programba n tallju k a felad at egy le hetsges meg oldst.

    Magyarzat:Amennyiben szvegesen troljuk a szmokat, brmekkora szmot be tudunk krni a billentyzetrl. Az elvi korlt az, hogy a felhasznlnak mikor frad el a keze a

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    9/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 9/28

    gpels kzben. A szmokat gy tudjuk sszeadni, mint ahogy azt papron is tennnk.

    A kt szmot tartalmaz szvegre listaknt tekinthetnk (valjban azok is), s minden elemre kln elvgezhetjk az sszeadst gy, hogy az adott helyen tallhat elemet

    szmm konvertljuk.

    A msik lista megfelel elemvel megtehetjk ugyanezt, majd a kt szmot sszeadhatjuk. Termszetesen az eredmnyhez minden lpsben hozz kell adni az elz

    eredmny 10 fltti rszt is. Az sszeadsok elvgzse utn az eredmnyt vissza konvertljuk szvegg - miutn itt is kpeztk a megfefel tvitelt - s elhelyezzk az

    eredmnyt a trolsra sznt szvegben.

    A listk vgre rve megkapjuk az eredmnyt szintn szveges formtumban s kirhatjuk a kpernyre.

    Termszetesen ez a klasszikus megolds, amitl eltrhetnk, ha jobb, vagy pp egyszerbb megoldst szeretnnk ltrehozni.

    Informci: A nagy szmokat rengeteg fontos tudomnyterleten hasznljuk. Ilyen terlet a prm szmok keresse, a klnbz titkostsi eljrsok s azok alkalmazsa, vagy

    a nagy szmokkal dolgoz csillagszati szmtsok. Az ilyen mret adatokkal val munka korltja sajnos nem a tr-terlet, hanem az id, ami alatt a szmtsokat el lehet

    vgezni. Sok titkost eljrs titkossga is az id tnyezn alapszik. Olyan hossz id (vek, vagy vtizedek) kell a titkostott adatok feltrshez, hogy egyszeren nem rn

    meg elkezdeni a munkt.

    6.17. feladat (Nagy szmok szorzsa szint: 4). Ksztsnk a 6.17 (ch06.html#x1-10017r17)pldaprogram mintjra konzolos alkalmazst, mely tetszleges nagy szmokat

    kpes szorozni egymssal. Az sszeadni kvnt szmokat billentyzetrl olvassuk be, s szveges formban troljuk (string). A nagy sz ebben az esetben azt jelenti, hogy a C#nyelv alaptpusai ltal brzolhat legnagyobb egsz szmoknl feldolgozni, majd kezelni az eredmnyt.

    Magyarzat: Gondoljunk arra, hogyan szorzunk nagy szmokat papr s ceruza segtsgvel! Egyms mell rjuk a szorzt s a szorzand szmot, majd egyesvel, helyi

    rtkek szerint eltolva minden szmjegyre nzve elvgezzk el a szorzst. A kapott eredmnyeket egyms al rjuk, majd elemenknt elvgezzk az sszeadsokat gyelve az

    tvitel kezelsre.

    A programunknak is valami hasonlt kell vgeznie. Ha a szorzsra gy tekintnk, mint sszeadsok sorozatra, a feladat k nnyedn megoldhat a Nagy szmok sszeadsa

    cm feladatban ismertetett sszead rutin felhasznlsval.

    6.18. feladat (res terletek szint: 2).lltsunk el v letlen eg sz szmoka t, majd hatrozzuk meg azt, hogy melyi k a leg hosszabb nullk at tartalmaz sorozat az elll tott

    listban.

    Magyarzat:A feladat megoldshoz tmbt, vagy listt alkalmazhatunk (termszetesen ms adatszerkezetet i s), amelybe egy vletlen szm genertor segtsgvel sok-sok

    vletlen szmot generlunk. Az ellltott listt be kell jrnunk valamely ismert vezrl szerkezet segtsgvel, s minden megtallt nulla utn szmolnunk kell, hogy azt hny

    darab nulla kveti. A leghosszabb, csak nullkat tartalmaz sorozat helyt, vagyis az els nulla indext meg kell jegyeznnk mindaddig, amg hosszabb sorozatot nem tallunk.

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    10/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 10/28

    Ha biztosak vagyunk a tudsunkban, megprblhatjuk a feladatot NxM mret mtrix, vagy NxMxK-s adatszerkezettel is megoldani.

    A fejezet forrskdjai

    6.1. forrskd.Sorozat vizsglata

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    int[] tomb = new int[4];

    for (int i = 0; i < 4; i++)

    {

    Console.Write("{0}. elem: ", i+1);

    tomb[i] = int.Parse(Console.ReadLine());

    }

    int elso=tomb[0];

    int allando=tomb[1]tomb[0];

    int hanyados=tomb[1]/tomb[0];

    bool szamtani_e=true;

    bool mertani_e = true;

    for (int j = 1; j < 4; j++)

    {

    if (elso + (j * allando) != tomb[j]) szamtani_e = false;

    if (tomb[j 1] * hanyados != tomb[j]) mertani_e = false;

    }

    if (szamtani_e) Console.WriteLine("A sorozat szmtani.");

    if (mertani_e) Console.WriteLine("A sorozat mrtani.");

    Console.ReadLine();

    }

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    11/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 11/28

    }

    }

    6.2. forrskd.Binris szmok

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {int db=0;

    Console.Write("Krem adjon meg egy binris szmot: ");

    string szam = Console.ReadLine();

    for (int i = 0; i < szam.Length; i++){

    if (Convert.ToString(szam[i]) == "1") db++;

    }

    Console.WriteLine

    ("A megadott binris szmban {0} darab egyes szerepelt.", db);

    Console.ReadLine();

    }

    }}

    6.3. forrskd.Egyedi vletlen szmok

    using System;

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    12/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 12/28

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Random rnd = new Random();

    Console.Write("Krem adja meg a vektor elemszmt: ");

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

    int[] tomb = new int[elemszam];

    int db=0;

    while(db!=elemszam){

    bool egyezike = false;

    int veletlenszam = rnd.Next(1,101);

    for (int i = 0; i < db; i++){

    if (tomb[i] == veletlenszam) egyezike = true;

    }

    if (!egyezike){

    tomb[db] = veletlenszam;

    db++;

    }

    }

    Console.Write("A vektor elemei: ");

    for (int i = 0; i < elemszam; i++){

    Console.Write("{0}, ", tomb[i]);

    }

    Console.ReadLine();

    }

    }

    6/27/2016 C# f l d t jt | Di itli T k t

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    13/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 13/28

    6.4. forrskd.Lottz programja

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1{

    class Program

    {

    static void Main(string[] args)

    {

    Random rnd = new Random();

    int[] tomb = new int[5];

    int db=0;

    while(db!=5){

    bool egyezike = false;

    int veletlenszam = rnd.Next(1,91);for (int i = 0; i < db; i++){

    if (tomb[i] == veletlenszam) egyezike = true;

    }

    if (!egyezike){

    tomb[db] = veletlenszam;

    db++;

    }

    }

    Console.Write("A lott szmok: ");

    for (int i = 0; i < db; i++){

    Console.Write("{0}, ", tomb[i]);}

    Console.ReadLine();

    }

    }

    }

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    14/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 14/28

    6.5. forrskd.Konzolos menkezels

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {class Program

    {

    static void Main(string[] args)

    {

    Console.WriteLine("1. menupont");

    Console.WriteLine("2. menupont");

    Console.WriteLine("3. menupont");

    Console.WriteLine("4. menupont");

    Console.WriteLine("5. menupont kilepes");

    int melyik = 0;

    while (melyik != 5){

    Console.Write("Menupont kodja: ");

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

    switch (melyik){

    case 1:Console.WriteLine

    ("Az elso menupontot valasztotta ki.");break;

    case 2:Console.WriteLine

    ("A masodik menpontot valasztotta ki.");break;

    case 3:Console.WriteLine

    ("A harmadik menupontot valasztotta ki.");break;

    case 4:Console.WriteLine

    ("A negyedik menupontot valasztotta ki.");break;

    case 5:Console.WriteLine

    ("A kilepes menupontot valasztotta ki.");break;

    }

    }

    Console.ReadLine();

    }

    }

    }

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    15/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 15/28

    6.6. forrskd.tvlts kettes szmrendszerbe

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program{

    static void Main(string[] args)

    {

    Console.Write ("10es szmrendszerbeli szm:");

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

    List binaris_szam = new List();

    while (a != 0){

    if (a % 2 == 0){

    a = a / 2;

    binaris_szam.Add(0);

    }

    else{

    a = (a 1) / 2;

    binaris_szam.Add(1);

    }

    }

    Console.Write("A binris szm: ");

    for (int i = 0; i < binaris_szam.Count; i++ ){

    Console.Write

    (binaris_szam[binaris_szam.Counti1]);

    }

    Console.ReadLine();

    }

    }

    }

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    16/28

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 16/28

    6.7. forrskd.Azonos elemek

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    int [] tomb = new int[10];

    int db = 0;

    bool van=false;

    Random rnd = new Random();for (int i = 0; i < 10; i++)

    {

    tomb[i] = rnd.Next(1, 101);

    db++;

    if (db > 1)

    {

    for (int j = 0; j < db1; j++)

    {

    if (tomb[i] == tomb[j]) van = true;

    }

    }}

    if (van) Console.WriteLine

    ("A tmb tartalmaz azonos elemet.");

    Console.ReadLine();

    }

    }

    }

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    17/28

    gy j y | g y

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 17/28

    6.8. forrskd.Statisztika listkrl

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.Write("Krem adja meg a vektor mrett: ");

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

    int [] tomb = new int[meret];

    int most_ennyi_elem = 0;

    int db=1;

    for (int i = 0; i < meret; i++)

    {

    Console.Write("Krem adja meg

    a tmb {0}. elemt: ", i+1);

    tomb[i] = int.Parse(Console.ReadLine());

    most_ennyi_elem++;

    if (most_ennyi_elem > 1)

    {

    for (int j = 0; j < most_ennyi_elem1; j++)

    {

    if (tomb[i] == tomb[j])

    {

    db = db + 1;

    break;

    }

    }

    }

    }

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    18/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 18/28

    Console.WriteLine

    ("A tmb {0} nem azonos elemet tartalmaz.",meretdb+1);

    Console.ReadLine();

    }

    }

    }

    6.9. forrskd.Karakterek szmllsa

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.Write("Krem adjon meg egy stringet: ");

    string szoveg = Convert.ToString(Console.ReadLine());

    Console.Write("Adja meg a keresni kvnt karaktert: ");

    string keresett_karakter =

    Convert.ToString(Console.ReadLine());

    int i = 1;int db = 0;

    while (i < szoveg.Length)

    {

    if (Convert.ToString(szoveg[i]) ==

    keresett_karakter) db++;

    i++;

    }

    Console.WriteLine("A stringben {0} darab

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    19/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 19/28

    keresni kvnt karakter tallhat.", db);

    Console.ReadLine();

    }

    }

    }

    6.10. forrskd.Szavak vizsglata

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    bool palindrom = true;

    Console.Write("Krem adjon meg egy szveget: ");

    string szoveg = Convert.ToString(Console.ReadLine());

    int i = 1;

    int fele;

    if (szoveg.Length % 2 != 0) fele = (szoveg.Length 1) / 2;

    else fele = szoveg.Length / 2;

    while (i < fele)

    {

    if (Convert.ToString(szoveg[i1]) !=

    Convert.ToString(szoveg[szoveg.Length i]))

    palindrom = false;

    i++;

    }

    if (palindrom) Console.WriteLine("A szveg palindrom.");

    else Console.WriteLine("A szveg nem palindrom.");

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    20/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 20/28

    Console.ReadLine();

    }

    }

    }

    6.11. forrskd.Szveg tkrzse

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.Write("Krem adjon meg egy szveget: ");

    string szoveg = Console.ReadLine();

    string ujszoveg = "";

    for (int i = 1; i

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    21/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 21/28

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.Write("Krem adjon meg egy elvgezend mveletet: ");

    string szoveg = Console.ReadLine();

    string elso_szam="";

    string masodik_szam = "";

    bool osszead = false;

    bool megvan_az_elso = false;

    for (int i = 0; i < szoveg.Length; i++)

    {

    if (Convert.ToString(szoveg[i]) != "+" &&

    Convert.ToString(szoveg[i]) != ""

    && megvan_az_elso!=true)

    {

    elso_szam = elso_szam +

    Convert.ToString(szoveg[i]);

    }

    if (Convert.ToString(szoveg[i]) == "+")

    {

    osszead = true;

    megvan_az_elso = true;

    }

    if (Convert.ToString(szoveg[i]) == "")

    {

    megvan_az_elso = true;

    }

    if (Convert.ToString(szoveg[i]) != "+" &&

    Convert.ToString(szoveg[i]) != ""

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    22/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 22/28

    && megvan_az_elso != false)

    {

    masodik_szam = masodik_szam +

    Convert.ToString(szoveg[i]);

    }

    }

    if (osszead)

    {

    Console.Write("A kt szm sszege: {0}",

    int.Parse(elso_szam) + int.Parse(masodik_szam));

    }

    else Console.Write("A kt szm klnbsge: {0}",

    int.Parse(elso_szam) int.Parse(masodik_szam));

    Console.ReadLine();

    }

    }

    }

    6.13. forrskd.Szveg tiszttsa

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program

    {

    static void Main(string[] args)

    {

    Console.Write ("Szveg: ");

    string szoveg = Console.ReadLine();

    Console.Write ("Mit cserlnk: ");

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    23/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 23/28

    string cserelendo = Console.ReadLine();

    Console.Write ("Mire cserljk: ");

    string ujszovegresz = Console.ReadLine();

    string ujteljesszoveg="";

    bool teljes_egyezes=true;

    int i = 0;

    while (i < szoveg.Length){

    if (Convert.ToString(szoveg[i]) !=

    Convert.ToString(cserelendo[0])){

    ujteljesszoveg=ujteljesszoveg+szoveg[i];

    }

    if (Convert.ToString(szoveg[i]) ==

    Convert.ToString(cserelendo[0])){

    for (int j = 0; j < cserelendo.Length; j++){

    if (Convert.ToString(szoveg[j]) !=

    Convert.ToString(cserelendo[j])){

    teljes_egyezes=false;

    }

    teljes_egyezes = true;

    }

    if (!teljes_egyezes) ujteljesszoveg =

    ujteljesszoveg + szoveg[i];

    if (teljes_egyezes){

    ujteljesszoveg = ujteljesszoveg +

    ujszovegresz;

    i = i + (cserelendo.Length 1);

    }

    }

    i++;

    }

    Console.WriteLine(ujteljesszoveg);

    Console.ReadLine();

    }

    }

    }

    6.14. forrskd.Nagy szmok sszeadsa

    6/27/2016 C# feladatgyjtemny | Digitlis Tanknyvtr

  • 7/25/2019 6C# Feladatgyjtemny _ Digitlis Tanknyvtr

    24/28

    http://www.tankonyvtar.hu/hu/tartalom/tamop425/0046_csharp_feladatgyujtemeny/ch06.html 24/28

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.IO;

    namespace ConsoleApplication1

    {

    class Program{

    public static void Main(string[] args)

    {

    Console.Write("Krem adjon meg egy szmot: ");

    string szam_elso = Console.ReadLine();

    Console.Write("Krem adjon meg mg egy szmot: ");

    string szam_masodik = Console.ReadLine();

    string eredmeny = "";

    int szam = 0 ;

    string csere="";

    if (szam_masodik.Length > szam_elso.Length)

    {

    csere = szam_elso;

    szam_elso = szam_masodik;

    szam_masodik = csere;

    }

    for (int i = 0; i < szam_masodik.Length; i++)

    {

    szam = int.Parse(Convert.ToString(

    szam_elso[szam_elso.Length 1 i])) +

    int.Parse(Convert.ToString

    (szam_masodik[szam_masodik.Length 1 i]));

    eredmeny = eredmeny + Convert.ToString(szam);

    }

    for (int j = 0; j