Forum » Programiranje » [c#] Optional parameters must appear....
[c#] Optional parameters must appear....

Cvenemir ::
Lep pozdrav.
Izdelati moram podprogram, ki podano število sekund pretvori v ure, minute in sekunde. Pri naslednji kodi naletim na napako "Optional parameters must appear after all required parameters". Kak nasvet?
Izdelati moram podprogram, ki podano število sekund pretvori v ure, minute in sekunde. Pri naslednji kodi naletim na napako "Optional parameters must appear after all required parameters". Kak nasvet?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace P2_cas
{
class Program
{
private static void izracun(int vhodnoStevilo = 0, out int steviloUr, out int steviloMinut, out int steviloSekund)
{
steviloUr = vhodnoStevilo / 3600;
int ostanek1 = vhodnoStevilo % 3600;
steviloMinut = ostanek1 / 60;
int ostanek2 = ostanek1 % 60;
steviloSekund = ostanek1;
}
static void Main(string[] args)
{
int steviloUr, steviloMinut, steviloSekund;
Console.WriteLine("Vnesite število sekund: ");
int vhodnoStevilo = int.Parse(Console.ReadLine());
izracun(vhodnoStevilo = 0, out steviloUr, out steviloMinut, out steviloSekund);
Console.WriteLine("Število ur je: {}", steviloUr);
Console.WriteLine("Število minut je: {}", steviloMinut);
Console.WriteLine("Število sekund je: {}", steviloSekund);
Console.ReadKey(true);
}
}
}

lambda ::
private static void izracun(int vhodnoStevilo = 0, out int steviloUr, out int steviloMinut, out int steviloSekund)
Tole ni ok. Natanko to kot ti piše, optional parameter mora biti za ne-optional parametri.
Preberi si kaj več o tem: optional parameters

Cvenemir ::
Sem spremenil v
Zdaj pa ko zaženem in vpišem neko število dobim exception error: Make sure your method arguments are in the right format. Kako sparsam, da bo delovalo?
private static void izracun(int vhodnoStevilo, out int steviloUr, out int steviloMinut, out int steviloSekund)
. Zdaj pa ko zaženem in vpišem neko število dobim exception error: Make sure your method arguments are in the right format. Kako sparsam, da bo delovalo?

nightrage ::
Nisem čist prepričan, poiskus takole.
private static void izracun(int vhodnoStevilo = 0, out int steviloUr, out int steviloMinut, out int steviloSekund)
{
steviloUr = 0;
steviloMinut = 0;
steviloSekund = 0;
steviloUr = vhodnoStevilo / 3600;
int ostanek1 = vhodnoStevilo % 3600;
steviloMinut = ostanek1 / 60;
int ostanek2 = ostanek1 % 60;
steviloSekund = ostanek1;
}

amacar ::
Tole dela:
class Program
{
private static void izracun(int vhodnoStevilo, out int steviloUr, out int steviloMinut, out int steviloSekund)
{
steviloUr = 0;
steviloMinut = 0;
steviloSekund = 0;
steviloUr = vhodnoStevilo / 3600;
int ostanek1 = vhodnoStevilo % 3600;
steviloMinut = ostanek1 / 60;
ostanek1 = ostanek1 % 60;
steviloSekund = ostanek1;
}
static void Main(string[] args)
{
int steviloUr, steviloMinut, steviloSekund;
Console.WriteLine("Vnesite število sekund: ");
int vhodnoStevilo = int.Parse(Console.ReadLine());
izracun(vhodnoStevilo, out steviloUr, out steviloMinut, out steviloSekund);
Console.WriteLine("Število ur je: "+steviloUr.ToString());
Console.WriteLine("Število minut je: "+steviloMinut.ToString());
Console.WriteLine("Število sekund je: "+steviloSekund.ToString());
Console.ReadKey(true);
}
}

Spura ::
Hvala za opomin zakaj so out parametri anti-pattern.
Znas anglesko?
Pri naslednji kodi naletim na napako "Optional parameters must appear after all required parameters". Kak nasvet?
Znas anglesko?
Zgodovina sprememb…
- spremenil: Spura ()

lambda ::
Saj tu bi lahko težili z marsičem, ne samo z out parametri kot anti patternu. Naming conventions npr., ter to da optional parametri tu sploh nimajo smisla.
V bistvu se vse da narest z TimeSpan.FromSeconds(numberOfSeconds), a to verjetno ni namen njegove naloge, če mora pisat neke podprograme, da sam to izračuna ...
V bistvu se vse da narest z TimeSpan.FromSeconds(numberOfSeconds), a to verjetno ni namen njegove naloge, če mora pisat neke podprograme, da sam to izračuna ...
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Java] Domača nalogaOddelek: Šola | 904 (776) | lebdim |
» | [C] Vsota števil v poljuOddelek: Programiranje | 1331 (1269) | Cvenemir |
» | [C#] Operacija IN in ALI med dvema int številomaOddelek: Programiranje | 1226 (1039) | LeQuack |
» | [C#] Input string was not in a correct format.Oddelek: Programiranje | 1127 (1064) | Cvenemir |
» | Pomoč pri programčkihOddelek: Programiranje | 3022 (2672) | Mitja Bonča |