- Samsung Galaxy Watch7 - kötelező kör
- Milyen okostelefont vegyek?
- Motorola Signature - mielőtt aláírnád...
- Hivatalos a OnePlus 13 startdátuma
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Samsung Galaxy Watch8 és Watch8 Classic – lelkes hiperaktivitás
- Nem kapsz kisebb kapszulát!
- Honor 200 Pro - mobilportré
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- iPhone topik
Új hozzászólás Aktív témák
-
joysefke
veterán
Hali!
nem teljesen értem, mit szeretnél csinálni, vagy a kód amit beszúrtál mit csinál, de a következő észrevételeim lennének:

1,
if (holnap+1=1)ide szerintem == operátor kéne, nem értékadás. Egyáltalán miért nem kapsz itt hibát, hiszen az értékadás bal oldalán nem változó áll
2,
Az if( ) feltételeid egymást mind kölcsönösen kizárják, tehát nem fordulhat elő, hogy egyszerre kettő if-törzsbe belépsz.Sokkal átláthatóbb lenne a kód, ha
if(A) {..}
else if (B) {...}
else if (C) {...}
else {}konstrukciókat használnál.
Sőt, ilyen helyzetben én inkább egyből switch statementet használnék, ami a
holnapváltozódtól függően csinálna valamit (adna értéket a listaelemeidnek )3,
Ha ki akarod kerülni ezt a "hét napja" enum-aritmetikát /ami vonzza a hibákat mint a mágnes/, akkor az első dolog ami nekem eszembe jut (persze nyilván vannak más, akár jobb megoldások is) készíteni statikus extension methodokat, amelyek kényelmessé teszik az életedet:
Pld:
public static class DayHelper
{
public static int DaysToMonday()
{
var today = DateTime.Today.DayOfWeek;
var offset = DayOfWeek.Monday - today;
return offset >= 0 ? offset : 7 + offset;
}
public static int DaysToSunday()
{
var today = DateTime.Today.DayOfWeek;
var offset = DayOfWeek.Sunday - today;
return offset >= 0 ? offset : 7 + offset;
}
public static int DaysToMonday(this DateTime date)
{
var day = date.DayOfWeek;
var offset = DayOfWeek.Monday - day;
return offset >= 0 ? offset : 7 + offset;
}
Stb stb stb
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(DayHelper.DaysToMonday());
Console.WriteLine(DayHelper.DaysToSunday());
Console.WriteLine(new DateTime(2019, 4, 20).DaysToMonday());
Console.WriteLine("Hello World!");
}
}Innentől kezdve, ha hívsz a kódodban egy ilyet hogy:
DayHelper.DaysToMonday()
akkor visszaadja a hétfőig hátralevő napok számát. Ezt nyilván meg tudod csinálni a hét összes napjára.Ha pedig van egy DateTime típusú változód, akkor azon meghívva a DaysToMonday()-t visszaadja az adott dátumtól a hétfőig visszalevő napok számát. Pld:
Console.WriteLine(new DateTime(2019, 4, 20).DaysToMonday());Visszaadja hogy 20-i dátumtól kezdve mennyit kell aludni hétfőig.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- exHWSW - Értünk mindenhez IS
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Samsung Galaxy Watch7 - kötelező kör
- Kerékpárosok, bringások ide!
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Milyen okostelefont vegyek?
- Anglia - élmények, tapasztalatok
- Fűnyíró topik
- További aktív témák...
- Hp 855 G7 Ryzen 7 4750U 8 mag 16 szál 16Gb Ram Radeon Vega számlával boltból Garanciával
- GYÖNYÖRŰ iPhone XR 128GB White-1 ÉV GARANCIA - Kártyafüggetlen, MS4294
- szinteÚJ! Microsoft Surface Laptop 5 13.5" i5-1245U 16GB 512GB Alcantara 1év garancia
- LG 55QNED823RE / QNED / 55" - 140 cm / 4K UHD / 120Hz & 4ms / HDR Dolby Vision / FreeSync + HDMI 2.1
- Beszámítás! Asus VG27AQ3A 27 180Hz QHD IPS 1ms monitor garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




