6 svar
111 visningar
elha 55
Postad: 3 nov 2020 13:28

kod undersökning

int siffra;

if(siffra == 0)

   Console.WriteLine("Siffra är noll!");

else

   Console.WriteLine("Siffra är inte noll!");

 

 -vad kan ni kommentera om detta programm ? Programmet kommer att gå in i ELSE-satsen ?? Programmet kommer att gå in i IF-satser ? Programmet kommer inte att starta ?

Jag undersökte koden i visual studio och den startade inte så jag tror svaret ska vara att programmet kommer inte att starta . stämmer det ? och varför ?


 
 

Lindehaven 820 – Lärare
Postad: 3 nov 2020 14:14

När koden inte startar så kan det bero på att kompilatorn inte accepterade koden. I detta fall är det så. Vilket felmeddelande får du från VS?

elha 55
Postad: 3 nov 2020 14:49

Jag fick som felmeddelande :
Error CS0165 Use of unassigned local variable 'siffra' ConsoleApp7  .  Jag fick också  ordet  "siffra" ( i andra raden ) rödmarkerad .

Men syntaxen ser ut korrekt och logisk .  Jag undrar varför programmet startar inte .

Lindehaven 820 – Lärare
Postad: 3 nov 2020 16:07

Felmeddelandet betyder att syntaxen inte är korrekt, kompileringen slutförs inte och inget exekverbart program skapas. Därför startar inte programmet.

Det är viktigt att läsa och förstå felmeddelanden eftersom de oftast berättar exakt vad felet är. I detta fall används en variabel innan den tilldelats ett värde.

elha 55
Postad: 3 nov 2020 16:34

Det behövs exempelvis ser ut så här  , för att koden fungera :

int siffra;

siffra = 4

if(siffra == 0)

Console.WriteLine("Siffra är noll!");

else

Console.WriteLine("Siffra är inte noll!");

 

stämmer det ?

Lindehaven 820 – Lärare
Postad: 3 nov 2020 16:40

Ja, det funkar (om du först sätter semikolon där de behövs).

Laguna Online 30482
Postad: 3 nov 2020 16:54

Strängt taget är det inget fel på syntaxen, utan det är en analys lite senare som kompilatorn gör, men ibland kallar man alla sådana fel för syntaxfel.

Svara
Close