Diskuze: C# int pole na vstup
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Napadl mě jeden způsob
string vstup = "10 20 30 40 50 60 70 80 90 100";
string[] cisla = vstup.Split(' ');
List<int> num = new List<int>();
foreach (string str in cisla)
{
int a;
if (Int32.TryParse(str, out a))
num.Add(a);
else
continue;
}
int[] nums = num.ToArray();
Určitě existují i lepší způsoby.
Každopádně tento kód i kontroluje, jestli je to celočíšelný vstup. V
proměnné 'nums' budeš mít uložené všechny správné vstupy. Nemusíš
vlastně ani použít pole, stačí ti ten List.
Zkus kouknout na tohle: http://stackoverflow.com/…to-int-array
Kaczmi
ja ti moc ďakujem. Úplne som zabudol na funkciu Split. Som ti vďačný, pretože tento problém riešim už asi 2 hodiny. Ďakujem ti moc za pripomenutie. Nepotrebujem to na nič praktické, len zajtra je zenit v programovaní a tam takéto sprostosti bývajú. Ešte raz ďakujem.
LOCK
string input = "10 20 30 40 50 60 70 80 90 100";
int[] numbers = input.Split(' ').Select(s => int.Parse(s)).ToArray();
EDIT: možná lepší takto
int[] numbers = input.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries).Select(s => int.Parse(s)).ToArray();
Diky moc
Zobrazeno 6 zpráv z 6.