Avatar billede martinr Nybegynder
05. april 2011 - 03:52 Der er 5 kommentarer og
1 løsning

Sammenligne tal

Hej eksperter

Efter at have søgt på utallige måder på både google og altavista, føler jeg mig nødsaget til at spørge her om, hvordan man i ASP.NET/VB.NET nemt sammenligner tal? Jeg tænker her på en måde ligesom i Delphi, hvor man kan skrive If (tal IN [1..3]) then...

Hvordan gør man på tilsvarende måde i .NET?
Avatar billede arne_v Ekspert
05. april 2011 - 08:26 #1
Der er faktisk ikke helt det samme i .NET, men proev:

int[] a = { 1,2,3 };
...
if(Array.IndexOf(a, tal) >= 0) {
Avatar billede mcb2001 Nybegynder
05. april 2011 - 13:07 #2
if(tal >= 1 && tal <= 3){
Avatar billede martinr Nybegynder
06. april 2011 - 15:29 #3
Tak for jeres kommentarer og løsningsforslag.

arne_v: Jeg kan godt se din logik men har dog svært ved at "oversætte" den til min kode, da mit projekt ikke er skrevet C#, så hvordan skriver man så det tilsvarende i VB.NET?

mcb2001: Det er standard-måden, som jeg har været nødt til at bruge indtil videre, men det bliver bare noget rod, hvis man eksempelvis har flere forskellige værdier, man tester på, f.eks. "If (tal IN [1..3, 5, 10, 25..30]) then..." - så må man jo skrive skrive en længere smøre med "If ((tal >= 1) and (tal <= 3)) or (tal = 5) or (tal = 10) or ((tal >= 25) and (tal <= 30)) then...", og det synes jeg ikke ser særlig "smukt" ud i koden (det er bl.a. derfor, at jeg elsker "Delphi"-måden), så jeg håbede bare, at noget tilsvarende var muligt i .NET.

Jeg lader spørgsmålet stå åbent lidt endnu og håber på flere og bedre forslag, men ellers får arne_v points'ene, da han er inde på noget af det rigtige.
Avatar billede mcb2001 Nybegynder
07. april 2011 - 08:01 #4
public static bool IN(int low, int high, int test)
{
return test <= high && test >= low;
}


int test = ...

if(IN(1,3,test) && IN(4,4,test))
{
...
}


Men ellers er der ikke noget smart at gøre..
Avatar billede arne_v Ekspert
22. maj 2011 - 22:09 #5
VB.NET er ca. det samme som C#.

Dim a() As Integer = { 1, 2, 3, 17, 51}
...
If Array.IndexOf(a, tal) >= 0) Then
Avatar billede arne_v Ekspert
22. maj 2011 - 22:09 #6
og et svar saafremt det duer
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester