- sziku69: Fűzzük össze a szavakat :)
- votlage71: Kábel menedzsment
- Luck Dragon: Asszociációs játék. :)
- sziku69: Szólánc.
- Balázs2: Gmail
- gban: Ingyen kellene, de tegnapra
- hcl: Döglött tabletből wifis kijelző kókány
- GoodSpeed: AMD Ryzen 9 9900X (100-100000662WOF)+ Samsung 990 PRO 2TB MZ-V9P2T0BW
- hege8888: Retro Kocka Kuckó 3
- btz: Internet fejlesztés országosan!
Hirdetés
Új hozzászólás Aktív témák
-
Lacces
őstag
Hali, már rég voltam itt, gondoltam jövők egy kérdéssel ismét
Írni kellett egy metódust. A programkódban van, hogy mit is kértek tőlünk. Na ez kábé nagyjából megvan. (Ha lehetne LINQ-t használni, királyság lenne)
Egy foreach-ben megkeresem a Dictionary-ben lévő Sör Objektumot, amelynek neve megegyezik a metódus sörnév paraméterével. (más megoldást nem tudok foreach-en kívül... LINQ nem játszhat, lentebb láthatjátók, mely 2 using-ot használhatom csak)Visszont van egy probléma, hogy ha megvan az a sör amit a sörnév alapján kerestem, akkor vele párhuzamosan, a Dictionary-ban<Sör obj, int value> a sör objektumhoz tartozó, value-t is módosítanom kell.
Sajnos a foreach-ben az item.key és item.value csak lekérdező metódus. Van-e beállító metódusa is?
Foreach esetén hogyan lehetséges egy adott Key-hez tartozó Value módosítása?sörök.Values.Add(item.Value - kimertKorso * 5); - erre gondoltam, de ez lehet hülyeség, hiszen honnan tudná a C#, hogy az adott Item.Key-hez tartozó Value-t állítom be?!
// csak e kettő használható
using System;
using System.Collections.Generic;
IDictionary<Sör, int> sörök = new Dictionary<Sör, int>();
/// <summary>
/// <para>Megkísérel eladni adott számú korsót az adott nevű sörből. Az eladott mennyiségnek megfelelően a bevétel nő, a rendelkezésre álló mennyiség korsónként 5 dl-rel csökken.</para>
/// </summary>
/// <param name="sörnév">a kért sör neve</param>
/// <param name="nkorsó">a kért korsók száma</param>
/// <returns>A korsók száma, amiket sikerült teljesen kimérni. Ha nincs ilyen nevű sör, akkor 0.</returns>
public int Elad(string sörnév, int nkorsó)
{
int d = 5*nkorsó; // 5 deciliter = 1 korsó
int kimertKorso=0;
Sör s;
foreach (var item in sörök)
{
if (item.Key.Név == sörnév) // ha megtalálom
{
if (item.Value >= d)
{
kimertKorso = item.Value % 5; // kimért korsók száma
bevétel += kimertKorso*5; // bevétel nő eladott mennyiségnek megfelelően - ha dl és nem korsó
sörök.Values.Add(item.Value - kimertKorso * 5); // talán?
}
}
}
return kimertKorso;
}
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- HIBÁTLAN iPhone 13 Pro 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3105
- Azonnali készpénzes nVidia RTX 2000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- DELL Precision 7540 - Intel Core i9-9980HK, RTX 3000 (nagyon erős GPU-val)
- iPhone 15 Pro 128GB Black Titanium Új eredeti Apple akkuval, USA model
- Csere-Beszámítás! Gigabyte Vision RTX 3070Ti 8GB GDDR6X Videokártya!
Állásajánlatok
Cég: FOTC
Város: Budapest