Permalänk
Medlem

if statement, en fråga

Jag försöker lära mig lite om C. Nu vill jag att OM och endast OM värdet är högre än 0 ska den skriva ut min text. Hur fixar man detta? Jag har if (a < 0) Console.WriteLine ("blabla");

Men den skriver ut texten även om värdet blir 0. Är som sagt väldigt ny, men har försökt med olika else och if men den skriver bara ut ändå.

Vad missar jag?

Visa signatur

Gaemer Addicted!

Permalänk

if(a > 0)

Permalänk
Medlem

Ok jag kanske skrev fel symbol, men även när det är såsom du skrivit. Så skrivs istället inget ut, även om det är högre än 0.

Visa signatur

Gaemer Addicted!

Permalänk
Medlem

Hur skriver man t.ex. om det är 0, hoppa över till nästa steg?

Visa signatur

Gaemer Addicted!

Permalänk
Medlem
Skrivet av we_man1:

Ok jag kanske skrev fel symbol, men även när det är såsom du skrivit. Så skrivs istället inget ut, även om det är högre än 0.

Klistra in HELA din kod i ett CODE-block så ska du se att du får det förklarat

Permalänk
Medlem

> greater than 5 > 4 is TRUE < less than 4 < 5 is TRUE >= greater than or equal 4 >= 4 is TRUE <= less than or equal 3 <= 4 is TRUE == equal to 5 == 5 is TRUE != not equal to 5 != 4 is TRUE

http://www.cprogramming.com/tutorial/c/lesson2.html

Visa signatur

Canon 70D | 2x Dell Ultrasharp 24" | Ryzen 3700X | 32B | GTX 1080Ti

Permalänk
Skrivet av we_man1:

Jag försöker lära mig lite om C. Nu vill jag att OM och endast OM värdet är högre än 0 ska den skriva ut min text. Hur fixar man detta? Jag har if (a < 0) Console.WriteLine ("blabla");

Men den skriver ut texten även om värdet blir 0. Är som sagt väldigt ny, men har försökt med olika else och if men den skriver bara ut ändå.

Vad missar jag?

Är det C eller C# du kör?

C:

#include <stdio.h> int main() { int i = 1; if (i > 0) puts("Text att visa här"); return 0; }

C#:

class MyClass { public static void Main() { int i = 1; if (i > 0) System.Console.WriteLine("Text att visa här"); } }

Visa signatur

i7-7800x | ASUS Strix GTX 1080 | 64 GB RAM (for datascience stuff)

Permalänk
Medlem

Enkelt att felsöka en sådan sak med lite extra print statements:

Console.WriteLine ( a ); if (a < 0) Console.WriteLine ("a<0"); if (a == 0) Console.WriteLine ("a=0"); if (a > 0) Console.WriteLine ("a>0");

Förutsätter att "a" inte är t.ex. en sträng där det står "-1"

Visa signatur

Redbox: Asrock B650 Lightning ATX, 7800x3D -20CCO, XFX 6950XT, 2x32GB Corsair Vengence 6400 CL32, WD SN770 2TB, Corsair RMe 1000, Lian Li Lancool 216, Peerless Assassin 120 SE
Purpbox: Z87-Pro, I5 4670K@4.2, Sapphire 290 TRI-X, 2x8GB Crucial Tactical@stock, Deep Silence 1
Samsung Evo 250+500GB + QVO 1TB, 2x1TB 7200RPM backup/lagring
Det var bättre förr: E5300 2600MHz -> 3640MHz, Celeron 300A -> 450MHz

Permalänk
Medlem

Låter som att "a" är en float, vilket betyder att du måste använda "if(a>0.000001f) " annars är det inget fel på den lilla bit kod du visat